Advanced Usage Patterns.md - himent12/FlashGenie GitHub Wiki

โšก Advanced Usage Patterns

Master FlashGenie's power-user techniques and workflows to maximize your learning efficiency.

๐ŸŽฏ Multi-Deck Study Strategies

Sequential Deck Study

Study multiple decks in sequence with customized parameters:

# Create a sequential study session
python -m flashgenie batch-quiz \
  --decks "Spanish Vocab,Spanish Grammar,Spanish Idioms" \
  --mode spaced \
  --cards-per-deck 20 \
  --break-between

Interleaved Learning

Interleave cards from multiple decks for enhanced retention:

# Interleave cards from related decks
python -m flashgenie quiz \
  --decks "French Vocab,French Grammar" \
  --interleave \
  --ratio 3:1 \
  --mode spaced

Topic Immersion

Create immersive study sessions across related decks:

# Create an immersive topic session
python -m flashgenie immersion "Programming" \
  --include-tags "python,javascript,algorithms" \
  --time 45 \
  --difficulty-curve "gentle"

๐Ÿง  Advanced Spaced Repetition

Custom Scheduling Algorithms

Customize the spaced repetition algorithm:

# Use custom scheduling parameters
python -m flashgenie quiz "Math" \
  --algorithm sm2 \
  --forgetting-index 0.15 \
  --interval-modifier 0.8

Available algorithms:

  • sm2 - SuperMemo 2 algorithm
  • fsrs - Free Spaced Repetition Scheduler
  • leitner - Leitner box system
  • custom - Your custom algorithm

Optimized Review Scheduling

Schedule reviews at optimal times:

# Generate optimized review schedule
python -m flashgenie schedule-optimize "Biology" \
  --available-time "30min/day" \
  --priority retention \
  --days 14

Sample output:

Optimized Review Schedule:
Monday: 42 cards (25 due, 17 new)
Tuesday: 38 cards (28 due, 10 new)
Wednesday: 45 cards (35 due, 10 new)
...

Forgetting Curve Calibration

Calibrate the algorithm to your personal forgetting curve:

# Run forgetting curve calibration
python -m flashgenie calibrate-forgetting-curve \
  --deck "Spanish" \
  --duration 14 \
  --samples 5

๐Ÿ“Š Advanced Analytics Workflows

Custom Analytics Metrics

Create custom metrics for tracking:

# Define a custom analytics metric
python -m flashgenie analytics create-metric "retention_efficiency" \
  --formula "correct_reviews / total_study_time" \
  --description "Retention per minute of study" \
  --unit "cards/min"

Comparative Analysis

Compare performance across different dimensions:

# Compare learning across subjects
python -m flashgenie compare \
  --decks "Spanish,French,German" \
  --metrics "accuracy,speed,retention" \
  --period 90 \
  --chart

Predictive Modeling

Use predictive models for learning optimization:

# Generate predictive models
python -m flashgenie predict \
  --deck "Biology" \
  --models "mastery,time-required,forgetting" \
  --confidence 0.9 \
  --horizon 60

๐Ÿ”„ Advanced Data Workflows

Incremental Learning

Process large volumes of content incrementally:

# Set up incremental learning
python -m flashgenie incremental-learn "Medical Terminology" \
  --new-per-day 5 \
  --max-review 50 \
  --priority-tags "essential,exam"

Content Transformation

Transform content between formats:

# Convert notes to flashcards
python -m flashgenie transform notes.md \
  --format markdown \
  --extraction-method "headers" \
  --output "Converted Notes" \
  --tag-source

Intelligent Content Splitting

Split complex content into optimal learning units:

# Split complex content
python -m flashgenie split-content "Complex Biology" \
  --method "concept-based" \
  --max-complexity 0.7 \
  --preserve-connections

๐Ÿ” Advanced Search Techniques

Complex Query Language

Use advanced search syntax:

# Complex search query
python -m flashgenie search "tag:biology AND (difficulty>0.7 OR accuracy<0.6)" \
  --decks "Biology,Science" \
  --limit 50 \
  --sort "difficulty:desc"

Saved Searches

Create and use saved searches:

# Create a saved search
python -m flashgenie saved-search create "Struggling Biology" \
  --query "tag:biology AND accuracy<0.6" \
  --description "Biology cards I'm struggling with"

# Use a saved search
python -m flashgenie quiz --saved-search "Struggling Biology"

Dynamic Filters

Create dynamic filters based on performance:

# Create a dynamic filter
python -m flashgenie dynamic-filter create "Recent Struggles" \
  --criteria "accuracy<0.7 AND last_reviewed>-7d" \
  --auto-update

๐Ÿ› ๏ธ Automation and Scripting

Study Routines

Create automated study routines:

# Define a study routine
python -m flashgenie routine create "Morning Review" \
  --steps "
    quiz 'Spanish' --mode spaced --limit 20;
    quiz 'Vocabulary' --mode difficult --limit 10;
    stats --export daily_stats.json
  "

# Run a routine
python -m flashgenie routine run "Morning Review"

Scheduled Tasks

Schedule automated tasks:

# Schedule a recurring task
python -m flashgenie schedule "Daily Review" \
  --command "quiz 'Spanish' --mode spaced --limit 20" \
  --time "08:00" \
  --days "mon,tue,wed,thu,fri"

Batch Processing

Process multiple operations efficiently:

# Batch process multiple decks
python -m flashgenie batch-process \
  --decks "Deck1,Deck2,Deck3" \
  --operations "
    autotag --confidence 0.8;
    optimize --reorder;
    export --format json --output '{deck_name}.json'
  "

๐Ÿ”Œ Integration Workflows

External Tool Integration

Connect FlashGenie with other tools:

# Sync with Anki
python -m flashgenie sync anki \
  --export-to-anki \
  --preserve-scheduling \
  --anki-profile "Main"

# Import from Quizlet
python -m flashgenie import quizlet \
  --set-id 123456789 \
  --include-images

API Usage

Use FlashGenie programmatically:

# Python API usage
from flashgenie import FlashGenie, Deck, Flashcard

# Initialize FlashGenie
fg = FlashGenie()

# Create deck programmatically
deck = Deck("API Created Deck")
deck.add_card(Flashcard("API Question", "API Answer"))

# Run automated quiz
session = fg.start_quiz_session(deck, mode="spaced")
results = session.run_automated(confidence_strategy="adaptive")

# Analyze results
analytics = fg.get_analytics(deck)
print(f"Session accuracy: {analytics.session_accuracy}")

Webhook Integration

Set up webhooks for event-driven workflows:

# Configure webhooks
python -m flashgenie webhook create "study-completed" \
  --url "https://example.com/webhook" \
  --events "session.completed" \
  --include-data "stats,cards-reviewed"

๐Ÿ“ฑ Cross-Device Workflows

Mobile-Optimized Study

Optimize for mobile study sessions:

# Create mobile-optimized session
python -m flashgenie quiz "Spanish" \
  --device mobile \
  --simplified-ui \
  --large-text \
  --offline-mode

Sync Strategies

Optimize synchronization across devices:

# Configure sync strategy
python -m flashgenie sync-config \
  --strategy "incremental" \
  --conflict-resolution "newest-wins" \
  --auto-sync-interval 15

Offline Study

Prepare for offline study sessions:

# Prepare offline study materials
python -m flashgenie prepare-offline \
  --decks "Spanish,French" \
  --days 7 \
  --include-resources \
  --output "offline_study.zip"

๐ŸŽฏ Advanced Study Techniques

Mastery-Based Learning

Focus on mastery rather than completion:

# Create mastery-focused session
python -m flashgenie mastery-quiz "Physics" \
  --mastery-threshold 0.9 \
  --adaptive-difficulty \
  --reinforcement-interval "24h,7d,30d"

Time-Boxing Technique

Use time-boxing for efficient study:

# Create time-boxed study session
python -m flashgenie time-box "Biology" \
  --intervals "5,5,5,10" \
  --break-duration 2 \
  --priority "difficult,due,new"

Deliberate Practice

Focus on challenging areas with deliberate practice:

# Set up deliberate practice session
python -m flashgenie deliberate-practice "Piano Theory" \
  --focus-area "difficult-concepts" \
  --intensity high \
  --feedback-frequency high

๐Ÿงช Experimental Techniques

Memory Palace Integration

Use memory palace techniques:

# Create memory palace associations
python -m flashgenie memory-palace "History Dates" \
  --location "My House" \
  --generate-associations \
  --visualization-prompts

Dual N-Back Training

Combine flashcards with cognitive training:

# Set up dual n-back with flashcards
python -m flashgenie dual-n-back \
  --deck "Vocabulary" \
  --n-level 2 \
  --sessions 3 \
  --duration 10

Sleep Learning Optimization

Optimize learning around sleep cycles:

# Create sleep-optimized review schedule
python -m flashgenie sleep-optimize \
  --deck "Language" \
  --pre-sleep-review 20 \
  --post-wake-review 15 \
  --sleep-duration 8

๐Ÿš€ Next Steps


FlashGenie v1.5.0 | Last updated: June 2025