System Requirements¶
Web Browser Requirements¶
Practito is a web-based application that works best with modern browsers.
Recommended Browsers¶
| Browser | Minimum Version | Recommended Version |
|---|---|---|
| Google Chrome | 90+ | Latest version |
| Mozilla Firefox | 88+ | Latest version |
| Safari | 14+ | Latest version |
| Microsoft Edge | 90+ | Latest version |
| Opera | 76+ | Latest version |
Browser Features Required¶
- JavaScript - Must be enabled
- Cookies - Required for authentication
- Local Storage - For offline features (Premium)
- WebAudio API - For audio playback
- WebRTC - For recording features
- Service Workers - For PWA features
Unsupported Browsers
Internet Explorer is not supported. Please upgrade to a modern browser.
Operating System Requirements¶
Desktop/Laptop¶
Windows - Windows 10 or later - 4 GB RAM minimum, 8 GB recommended - 2 GB free disk space - Screen resolution: 1280x720 minimum
macOS - macOS 10.14 (Mojave) or later - 4 GB RAM minimum, 8 GB recommended - 2 GB free disk space - Screen resolution: 1280x800 minimum
Linux - Ubuntu 18.04 LTS or later - Fedora 32 or later - Other distributions with modern browser support - 4 GB RAM minimum, 8 GB recommended - 2 GB free disk space
Chrome OS - Chrome OS 90 or later - Chromebooks with 4 GB RAM minimum
Mobile Devices¶
iOS (iPhone/iPad) - iOS 13.0 or later - iPadOS 13.0 or later - 2 GB RAM minimum - 500 MB free storage
Android - Android 8.0 (Oreo) or later - 2 GB RAM minimum - 500 MB free storage
Internet Connection¶
Required Connection Speeds¶
Minimum: - Download: 3 Mbps - Upload: 1 Mbps - Latency: < 100ms
Recommended: - Download: 10 Mbps - Upload: 5 Mbps - Latency: < 50ms
Optimal (for pitch detection): - Download: 25 Mbps - Upload: 10 Mbps - Latency: < 30ms
Offline Mode
Premium users can download music for offline practice when internet is unavailable.
Data Usage Estimates¶
Per Hour of Practice: - Sheet music streaming: 2-5 MB - Audio playback: 10-20 MB - Recording/upload: 15-30 MB - Video tutorials: 100-300 MB (HD) - Total: 30-60 MB/hour (without video)
Audio Equipment¶
Built-in Equipment (Minimum)¶
- Computer speakers or headphones
- Built-in microphone (for recording)
Recommended Equipment¶
For Better Audio Quality: - External speakers or studio headphones - USB microphone or audio interface - Closed-back headphones (to prevent echo)
For Recording: - USB condenser microphone - Pop filter (for vocal recordings) - Quiet practice environment
For MIDI: - USB MIDI keyboard - MIDI-to-USB cable (for older keyboards) - Low-latency audio interface (optional)
Supported Audio Formats¶
Input (Recording): - WAV (uncompressed) - MP3 (96-320 kbps) - AAC/M4A - OGG Vorbis - FLAC (lossless)
Output (Playback): - Automatic format optimization - Adaptive bitrate streaming
MIDI Equipment (Optional)¶
Supported MIDI Devices¶
Keyboards: - USB MIDI keyboards - Bluetooth MIDI (iOS only) - 5-pin DIN MIDI (with USB adapter) - Any MIDI-compatible keyboard/controller
Requirements: - USB port or Bluetooth 4.0+ - Driver installation may be required (Windows)
Tested Models: - Yamaha P-Series digital pianos - Roland FP-Series - Casio Privia series - Native Instruments Komplete Kontrol - Akai MPK series - M-Audio Keystation
MIDI Features
MIDI keyboard support is a Premium feature. Real-time note recognition, velocity feedback, and accuracy scoring require Premium subscription.
Screen Resolution¶
Minimum Requirements¶
- Desktop: 1280 x 720 (720p)
- Laptop: 1366 x 768
- Tablet: 1024 x 768 (iPad, 10" Android)
- Phone: 375 x 667 (iPhone SE size)
Recommended¶
- Desktop: 1920 x 1080 (1080p) or higher
- Laptop: 1920 x 1080 or higher
- Tablet: 2048 x 1536 (iPad Retina) or higher
- Phone: 1080 x 1920 or higher
Multi-Monitor Support¶
- Supported on all desktop platforms
- Drag practice player to second monitor
- Analytics on one screen, player on another
- Teacher view: students on one screen, player on another
Storage Requirements¶
For Basic Use¶
- Cache: 100 MB
- Temporary files: 50 MB
- Total: ~150 MB
For Offline Mode (Premium)¶
- Per piece (average): 2-5 MB
- Per recording (10 minutes): 15-30 MB
- Recommended free space: 2 GB
For Organizations¶
- Total library cache: Up to 10 GB
- Recommended free space: 20 GB
- Server hosting (if self-hosted): 100 GB+
Performance Recommendations¶
For Optimal Experience¶
Processor: - Intel i3 / AMD Ryzen 3 or better - Apple M1 or later (Mac) - ARM-based (mobile devices)
RAM: - 8 GB recommended for desktop - 4 GB minimum for desktop - 3 GB recommended for mobile
Graphics: - Integrated graphics sufficient - Dedicated GPU not required - WebGL support recommended
Disk: - SSD recommended for faster loading - HDD acceptable
Accessibility Requirements¶
Screen Readers¶
Tested with: - NVDA (Windows) - JAWS (Windows) - VoiceOver (macOS, iOS) - TalkBack (Android)
Keyboard Navigation¶
- Full keyboard navigation support
- Customizable keyboard shortcuts
- No mouse required for core features
Visual Accessibility¶
- High contrast mode support
- Adjustable text size
- Color-blind friendly color schemes
- Screen magnification compatible
Firewall & Network¶
Required Ports¶
- HTTPS: Port 443 (required)
- WebSocket: Port 443 (for real-time features)
Whitelisted Domains¶
Add to allow list if behind firewall:
CDN Requirements¶
Practito uses global CDN for fast loading: - Cloudflare CDN - AWS CloudFront - Must allow CDN traffic
Third-Party Integrations¶
Optional Integrations¶
Payment Processing: - Stripe.com (for card payments) - PayPal.com (for PayPal payments) - M-Pesa (for mobile money)
Email Delivery: - SendGrid or similar (for notifications)
File Storage: - AWS S3 or compatible (for uploads)
Privacy & Security¶
- All connections encrypted (SSL/TLS)
- GDPR compliant
- No tracking without consent
- Secure payment processing (PCI-DSS)
Organization/School Requirements¶
For Self-Hosting (Enterprise)¶
Server Requirements: - CPU: 4+ cores - RAM: 16 GB minimum, 32 GB recommended - Storage: 500 GB SSD minimum - Bandwidth: 100 Mbps minimum - OS: Linux (Ubuntu 20.04 LTS or later)
Software Stack: - PHP 8.1+ - MySQL 8.0+ or PostgreSQL 13+ - Nginx or Apache 2.4+ - Redis (for caching) - Node.js 16+ (for asset compilation)
For Cloud Hosting (Recommended)¶
- AWS, Google Cloud, or Azure
- Managed database service
- CDN (CloudFront, CloudFlare)
- Auto-scaling support
- Backup solution
Development Requirements¶
For Developers¶
If you're contributing to Practito or running local development:
Required Software: - PHP 8.1 or later - Composer 2.x - Node.js 16.x or later - npm or Yarn - MySQL 8.0 or PostgreSQL 13+ - Git
Optional Tools: - Docker & Docker Compose - PHP_CodeSniffer - PHPUnit for testing - Symfony CLI
See Development Setup for details.
Checking Your System¶
Browser Compatibility Test¶
Visit Settings → System Check after logging in to run automatic compatibility tests:
- Browser version check
- JavaScript enabled
- Cookie support
- Local storage available
- Audio playback test
- Microphone access test
- MIDI device detection (if connected)
Performance Test¶
Run a performance check: 1. Settings → Advanced → Run Performance Test 2. Tests audio latency, rendering speed, network speed 3. Provides optimization recommendations
Upgrade Recommendations¶
If experiencing performance issues:
Slow Loading: - Upgrade internet connection - Use modern browser (latest version) - Clear browser cache - Disable browser extensions
Audio Latency: - Use USB audio interface - Lower buffer size in audio settings - Close other applications - Upgrade to faster computer
Recording Issues: - Upgrade microphone - Use dedicated audio input - Reduce background noise - Check system audio settings