FAQ.md - himent12/FlashGenie GitHub Wiki
โ FlashGenie Frequently Asked Questions
Quick answers to the most common questions about FlashGenie. Find solutions to common issues, learn about features, and get tips for optimal usage.
๐ Getting Started
Q: How do I install FlashGenie?
A: FlashGenie can be installed in several ways:
# Method 1: From source (recommended)
git clone https://github.com/himent12/FlashGenie.git
cd FlashGenie
pip install -r requirements.txt
python -m flashgenie --version
# Method 2: Direct installation (when available)
pip install flashgenie
# Method 3: Development mode
pip install -e .
For detailed instructions, see our Installation Guide.
Q: What are the system requirements?
A: Minimum requirements:
- Python: 3.8 or higher
- RAM: 2GB (4GB recommended)
- Storage: 500MB free space
- OS: Windows 10+, macOS 10.14+, or Linux
For large datasets (10K+ cards), we recommend 8GB RAM and SSD storage.
Q: How do I create my first flashcard deck?
A: You can create decks in several ways:
# Interactive creation
flashgenie create "My First Deck" "Learning Python basics"
# Import from CSV
flashgenie import my_cards.csv --deck "Imported Deck"
# Add cards manually
flashgenie add "My First Deck"
See our Quick Start Tutorial for a complete walkthrough.
๐ Using FlashGenie
Q: How does the spaced repetition algorithm work?
A: FlashGenie uses an enhanced SM-2 algorithm that:
- Schedules reviews based on your performance
- Adjusts intervals dynamically (1 day โ 3 days โ 7 days โ 16 days...)
- Considers difficulty and confidence levels
- Adapts to your learning patterns over time
The algorithm ensures you review cards just before you're likely to forget them, maximizing retention efficiency.
Q: Can I import flashcards from other apps?
A: Yes! FlashGenie supports multiple import formats:
- Anki:
.apkg
files (via plugin) - CSV: Most common format
- Excel:
.xlsx
files - Text: Structured
.txt
files - JSON: FlashGenie native format
# Import from Anki
flashgenie import my_anki_deck.apkg --format anki
# Import from CSV
flashgenie import flashcards.csv --deck "Imported Cards"
See our File Formats Guide for detailed format specifications.
Q: How do I backup my data?
A: FlashGenie offers multiple backup options:
# Manual backup
flashgenie backup create --output my_backup.json
# Encrypted backup
flashgenie backup create --encrypt --password
# Automatic backups (configure once)
flashgenie config set data.storage.auto_backup true
flashgenie config set data.storage.backup_frequency daily
Backups include all your decks, progress, and settings.
๐ง Smart Features
Q: What is adaptive difficulty adjustment?
A: FlashGenie automatically adjusts card difficulty based on:
- Response time: How quickly you answer
- Accuracy: Whether you get it right
- Confidence: Your self-reported confidence
- Historical performance: Your past performance with the card
This ensures cards remain challenging but not frustrating.
Q: How do smart collections work?
A: Smart collections automatically group cards based on criteria:
# Create a collection for struggling cards
flashgenie collection create "Need Practice" \
--filter "success_rate:<0.6" \
--auto-update
# Collection for recent cards
flashgenie collection create "This Week" \
--filter "created_after:7d"
Collections update automatically as your progress changes.
Q: Can I customize the learning algorithm?
A: Yes! You can adjust algorithm parameters:
# Adjust spaced repetition settings
flashgenie config set learning.spaced_repetition.easy_factor 2.8
flashgenie config set learning.spaced_repetition.minimum_interval 2
# Modify difficulty analysis
flashgenie config set learning.difficulty.adjustment_sensitivity 0.7
Advanced users can also create custom algorithms via plugins.
๐ง Configuration and Customization
Q: How do I change the interface colors?
A: FlashGenie supports color customization:
# Enable/disable colors
flashgenie config set interface.cli.use_colors true
# Change color scheme
flashgenie config set interface.cli.color_scheme "dark"
# Disable colors for accessibility
export FLASHGENIE_NO_COLOR=1
Q: Can I use FlashGenie offline?
A: Absolutely! FlashGenie is designed to work completely offline:
- No internet required for core functionality
- Local data storage keeps everything on your device
- Offline algorithms for spaced repetition and difficulty analysis
- Optional cloud sync available via plugins
Q: How do I set up study reminders?
A: Configure notifications in your settings:
# Enable study reminders
flashgenie config set interface.notifications.study_reminders.enabled true
flashgenie config set interface.notifications.study_reminders.frequency daily
flashgenie config set interface.notifications.study_reminders.time "09:00"
# Set quiet hours
flashgenie config set interface.notifications.study_reminders.quiet_hours.start "22:00"
flashgenie config set interface.notifications.study_reminders.quiet_hours.end "08:00"
โก Performance and Troubleshooting
Q: FlashGenie is running slowly with large decks. How can I optimize it?
A: For large datasets (10K+ cards), try these optimizations:
# Enable performance optimizations
flashgenie config set performance.cache.size 10000
flashgenie config set performance.memory.lazy_loading true
flashgenie config set performance.parallel.enabled true
# Split large decks
flashgenie split "Large Deck" --size 5000
# Use SSD storage
flashgenie config set storage.data_directory "/path/to/ssd/flashgenie"
See our Performance Optimization Guide for detailed tuning.
Q: I'm getting memory errors. What should I do?
A: Reduce memory usage with these settings:
# Limit memory usage
flashgenie config set performance.memory.limit "1GB"
flashgenie config set performance.cache.size 2000
flashgenie config set performance.memory.preload_cards false
# Enable garbage collection
flashgenie config set performance.memory.gc_threshold 0.6
# Clean up temporary files
flashgenie cleanup --temp-files --cache
Q: How do I reset FlashGenie to default settings?
A: You can reset various aspects:
# Reset all configuration
flashgenie config reset --confirm
# Reset specific settings
flashgenie config reset learning.spaced_repetition
# Reset and keep data
flashgenie reset --config-only
# Complete reset (WARNING: deletes all data)
flashgenie reset --all --confirm
๐ Security and Privacy
Q: Is my data safe and private?
A: Yes! FlashGenie prioritizes your privacy:
- Local storage: All data stays on your device
- No tracking: No personal data collection
- Open source: Code is publicly auditable
- Encryption: Optional data encryption available
- No cloud dependencies: Works completely offline
Q: How do I enable data encryption?
A: Enable encryption for sensitive data:
# Enable encryption for new installations
flashgenie setup --enable-encryption
# Enable encryption for existing data
flashgenie encrypt enable --backup-first
# Change encryption password
flashgenie encrypt change-password
Q: Can I use FlashGenie in a corporate environment?
A: Yes! FlashGenie supports enterprise deployment:
- No external connections required
- Configurable security settings
- Audit logging available
- Compliance features for GDPR, etc.
- Bulk deployment scripts available
See our Security and Privacy Guide for enterprise setup.
๐ Plugins and Extensions
Q: How do I install plugins?
A: FlashGenie supports a plugin system:
# List available plugins
flashgenie plugin list --available
# Install a plugin
flashgenie plugin install anki-importer
# Enable/disable plugins
flashgenie plugin enable study-reminders
flashgenie plugin disable analytics-plugin
# Update plugins
flashgenie plugin update --all
Q: Can I create my own plugins?
A: Absolutely! FlashGenie has a flexible plugin architecture:
# Example plugin structure
from flashgenie.plugins import BasePlugin
class MyPlugin(BasePlugin):
name = "my_custom_plugin"
version = "1.0.0"
def on_quiz_complete(self, session_data):
# Your custom logic here
pass
See our Extension Development Guide for detailed instructions.
๐ Data Management
Q: How do I export my data?
A: FlashGenie supports multiple export formats:
# Export to JSON (recommended)
flashgenie export "My Deck" output.json
# Export to CSV for compatibility
flashgenie export "My Deck" output.csv --format csv
# Export with statistics
flashgenie export "My Deck" output.json --include-stats
# Export all decks
flashgenie export --all-decks backup_all.json
Q: Can I merge multiple decks?
A: Yes, you can combine decks:
# Merge decks
flashgenie merge "Deck 1" "Deck 2" --output "Combined Deck"
# Merge with duplicate handling
flashgenie merge "Deck A" "Deck B" --duplicates skip --output "Merged"
# Merge from files
flashgenie merge deck1.json deck2.json --output combined.json
Q: How do I handle duplicate cards?
A: FlashGenie provides duplicate detection:
# Find duplicates
flashgenie duplicates find "My Deck"
# Remove duplicates
flashgenie duplicates remove "My Deck" --strategy keep-first
# Merge similar cards
flashgenie duplicates merge "My Deck" --similarity 0.8
๐ฏ Study Strategies
Q: What's the best way to study with FlashGenie?
A: Follow these best practices:
- Regular sessions: Study 15-30 minutes daily
- Trust the algorithm: Review cards when scheduled
- Use confidence ratings: Be honest about your knowledge
- Create quality cards: Clear, concise questions and answers
- Use tags: Organize cards by topic or difficulty
Q: How should I create effective flashcards?
A: Follow these guidelines:
- One concept per card: Keep cards focused
- Use active recall: Ask "what" or "how" questions
- Include context: Add relevant examples
- Use images: Visual aids improve memory
- Test both directions: QuestionโAnswer and AnswerโQuestion
Q: Can I study multiple decks together?
A: Yes! Use smart collections or deck merging:
# Create a study collection from multiple decks
flashgenie collection create "Today's Study" \
--decks "Math,Science,History" \
--filter "due_today:true"
# Temporary merge for study session
flashgenie study --decks "Deck1,Deck2,Deck3" --mixed
๐ Getting Help
Q: Where can I get more help?
A: Multiple support channels are available:
- Documentation: Comprehensive guides and tutorials
- GitHub Issues: Bug reports and feature requests
- Community Forum: User discussions and tips
- Discord/Slack: Real-time chat support
- Email Support: Direct contact for complex issues
Q: How do I report a bug?
A: Report bugs through GitHub:
- Check existing issues first
- Provide detailed information:
- FlashGenie version
- Operating system
- Steps to reproduce
- Error messages
- Include logs if available:
flashgenie logs export --last-session
Q: How can I contribute to FlashGenie?
A: We welcome contributions!
- Code contributions: See our Contributing Guide
- Documentation: Help improve guides and tutorials
- Testing: Report bugs and test new features
- Translations: Help localize FlashGenie
- Community support: Help other users
๐ Quick Links
- Getting Started - First steps with FlashGenie
- Installation Guide - Detailed setup instructions
- Configuration Options - All settings explained
- File Formats - Import/export format guide
- Performance Optimization - Speed up FlashGenie
- Security and Privacy - Data protection features
- API Reference - Technical documentation
- Contributing Guide - How to contribute
Still have questions? Join our community discussions or check our comprehensive documentation for more detailed information! ๐งโโ๏ธโจ