⏩ The next generation of intelligent note-taking with glassmorphism design, AI-powered features, and professional-grade performance.
- Translucent Windows: Beautiful glass-like transparency effects
- Modern Design Language: Apple-inspired liquid glass aesthetics
- Smooth Animations: Subtle hover effects and transitions
- Dark Theme: Professional dark mode with vibrant accents
- Custom Window: Frameless design with custom title bar
- Updated Toolbar Icons: Clear and modern icons for improved usability.
- Improved Styling: Enhanced styling for better clarity and a more polished look.
Ctrl+N
- New NoteCtrl+S
- Save NoteCtrl+O
- Quick OpenCtrl+F
- Search NotesCtrl+L
- Lock/Unlock NoteCtrl+1/2
- Switch Edit/Preview modesF5
- Refresh PreviewF11
- Toggle FullscreenCtrl+,
- Settings
- Live Preview: Real-time rendered markdown with beautiful styling
- Dual Mode: Raw markdown editing + rich preview
- Syntax Highlighting: Code blocks with proper highlighting
- Extended Support: Tables, TOC, fenced code blocks
- Web Rendering: Uses WebEngine for pixel-perfect preview
- Real-time Metrics: Word count, character count, notes total
- Performance Monitor: Search time, memory usage, cache status
- Session Tracking: Time elapsed, operations performed
- Status Indicators: Live performance feedback in status bar
- Activity Display: Shows "Taking notes in Alem" on Discord
- GitHub Integration: Direct links to repository
- Session Time: Shows how long you've been using Alem
- Custom Status: Displays current activity and app branding
- High Performance: Lightning-fast note loading and saving
- Smart Caching: Automatically caches frequently accessed notes
- Periodic Sync: Regular background sync to database
- Crash Protection: Data safety with automatic backups
- Password Protection: Encrypt sensitive notes with military-grade encryption
- PBKDF2 Encryption: 390,000+ iterations for maximum security
- Lock/Unlock UI: Simple toggle for note protection
- Secure Storage: Encrypted content in database
- UI Customization: Fonts, themes, layout options
- Performance Tuning: Cache settings, auto-save intervals
- Feature Toggle: Enable/disable AI, Discord, Redis
- Markdown Options: Configure extensions and rendering
- Security Settings: Encryption parameters
- Python 3.8+ (3.10+ recommended)
- 4GB RAM minimum (8GB+ for AI features)
- 100MB free disk space
- Redis server (optional, for caching)
# Download and run the enhanced installer
python install_enhanced.py
# Clone the repository
git clone https://github.com/a3ro-dev/aAlem.git
cd aAlem
# Install dependencies
pip install -r requirements.txt
# Launch Alem
python launch_enhanced.py
# Install core dependencies only
pip install PyQt6 markdown cryptography psutil redis pypresence
# Run directly
python Alem.py
- Run the launcher:
python launch_enhanced.py
- Environment Check: Automatic dependency verification
- Feature Detection: AI, Redis, Discord RPC availability
- Welcome Tour: Introduction to new features
- Intelligent Search: AI-powered semantic search with fallback text search
- Tag Organization: Flexible tagging system with smart filtering
- Quick Access: Fast note switching with
Ctrl+O
- Auto-Save: Configurable auto-save intervals (default 30s)
- WYSIWYG Editor: Rich text with formatting toolbar
- Markdown Support: Full markdown with live preview
- Format Switching: Toggle between HTML and Markdown modes
- Code Blocks: Syntax highlighting for 100+ languages
- Real-time Search: Instant results as you type (300ms debounce)
- Multiple Modes: Text search and AI semantic search
- Performance Metrics: Search time tracking and optimization
- Filter Options: All notes, recent, locked
- SQLite Database: Reliable local storage
- Redis Caching: Optional high-performance caching layer
- Auto-Backup: Periodic data protection
- Export/Import: Note backup and restoration
- Go to Discord Developer Portal
- Create new application named "Alem"
- Copy Application ID to
config.py
- Upload app icon as "alem" asset
- Enable Rich Presence in settings
# Install Redis (Windows with Chocolatey)
choco install redis-64
# Install Redis (Ubuntu/Debian)
sudo apt install redis-server
# Install Redis (macOS with Homebrew)
brew install redis
# Start Redis service
redis-server
# config.py settings for optimization
{
"auto_save_interval": 30000, # 30 seconds
"redis_flush_interval_s": 60, # 1 minute
"search_debounce_delay": 300, # 300ms
"max_search_results": 100, # Limit results
"kdf_iterations": 390000 # Security vs speed
}
- UI Framework: PyQt6 with glassmorphism design
- Database: SQLite with Redis caching layer
- Markdown: Python-Markdown with extensions
- Encryption: Cryptography library with PBKDF2
- RPC: pypresence for Discord integration
- Monitoring: psutil for performance metrics
- Lazy Loading: Notes loaded on-demand for memory efficiency
- Background Processing: Non-blocking operations
- Smart Caching: Intelligent cache invalidation
- Memory Management: Automatic cleanup and optimization
- Zero-Knowledge: Passwords never stored, only hashes
- AES Encryption: Industry-standard encryption for locked notes
- Salt Generation: Unique salt per encrypted note
- Key Derivation: PBKDF2 with configurable iterations
Feature | Performance | Memory Usage |
---|---|---|
Note Loading | <50ms | ~10MB per 1000 notes |
Search (Text) | <100ms | Minimal overhead |
Search (AI) | 200-500ms | ~2GB for models |
Markdown Render | <20ms | ~1MB per note |
Encryption/Decrypt | <10ms | Minimal overhead |
aAlem/
├── alem_app/
│ ├── __init__.py
│ ├── core/
│ │ ├── __init__.py
│ │ ├── cache.py
│ │ └── discord_rpc.py
│ ├── database/
│ │ ├── __init__.py
│ │ └── database.py
│ ├── ui/
│ │ ├── __init__.py
│ │ ├── actions.py
│ │ ├── left_panel.py
│ │ ├── main_window.py
│ │ ├── right_panel.py
│ │ └── settings_dialog.py
│ ├── utils/
│ │ ├── __init__.py
│ │ ├── encryption.py
│ │ └── logging.py
│ └── main.py
├── Alem.py
├── config.py
├── install_enhanced.py
├── launch_enhanced.py
├── requirements.txt
├── alem.png
└── README.md
- Fork the repository
- Create feature branch (
git checkout -b feature/amazing-feature
) - Commit changes (
git commit -m 'Add amazing feature'
) - Push to branch (
git push origin feature/amazing-feature
) - Open Pull Request
# Development setup
git clone https://github.com/a3ro-dev/aAlem.git
cd aAlem
# Create virtual environment
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
# Install development dependencies
pip install -r requirements.txt
pip install pytest black flake8
# Run tests
pytest
# Code formatting
black .
flake8 .
# Check Python version
python --version
# Verify dependencies
python -c "import PyQt6; print('PyQt6 OK')"
# Run diagnostic
python launch_enhanced.py --debug
- No Discord RPC: Install
pypresence
and configure client ID - No AI Search: Install
transformers
andsentence-transformers
- No Caching: Install and start Redis server
- No WebEngine: Install
PyQt6-WebEngine
- Slow Search: Enable Redis caching
- High Memory: Disable AI features in settings
- Slow Startup: Remove large note databases
- 📧 Email: Support
- 🐛 Issues: GitHub Issues
- 💬 Discussions: GitHub Discussions
This project is licensed under the MIT License - see the LICENSE file for details.
- PyQt6 - Amazing GUI framework
- Redis - High-performance caching
- Discord - Rich presence integration
- Python-Markdown - Excellent markdown processing
- Cryptography - Secure encryption implementation