DEV Community

Aissa Laribi
Aissa Laribi

Posted on

๐Ÿš€ StudyQuiz v0.1.0 โ€” FastAPI Quiz Engine with Spaced Repetition & CLI Quiz Attempts

A CLI-based learning tool with Fisher-Yates shuffling and SuperMemo 2 โ€” built to help me (and maybe you) study smarter, not harder.


Image description

๐Ÿง  Why I Built StudyQuiz

Flashcards helped me memorize, but they didn't help with deep understanding.

I tried Anki, Quizlet, even Python scripts but nothing clicked.

What I needed was:

  • Multiple-choice quizzes per chapter, not per flashcard.
  • A learning algorithm like SuperMemo 2 for spaced repetition.
  • A fast, testable backend I could expand over time.

So I built StudyQuiz.


๐Ÿ”ง Tech Stack

  • ๐Ÿ Python
  • โšก FastAPI + Async SQLAlchemy
  • ๐Ÿ˜ PostgreSQL
  • ๐Ÿงช Pytest + test DB reset fixture
  • ๐Ÿ’ก CLI-based quiz attempts for now (browser UI coming soon)

โœ… Whatโ€™s in v0.1.0

  • โœ… Batch creation of:
    • Users
    • Modules
    • Quizzes
    • Questions + Answers (nested JSON)
  • โœ… Fisher-Yates question shuffling
  • โœ… SuperMemo 2 spaced repetition
  • โœ… Quiz attempts that:
    • Record scores
    • Schedule follow-ups
    • Run in the terminal
  • โœ… Fully tested core

๐Ÿ–ฅ๏ธ How to Run

1) Clone the repo
2) Install dependencies

3) Run the app:

uvicorn app.main:app --reload
Enter fullscreen mode Exit fullscreen mode

4) Use Swagger UI:

Visit http://127.0.0.1:8000/docs

Image description

๐ŸŽฎ The quiz runs interactively in your terminal after the POST is triggered.


๐Ÿงญ Next: A Guide for CLI + Leveraging ChatGPT for Batch Queries

Before building the UI, Iโ€™ll publish a step-by-step guide on:

๐Ÿ–ฅ๏ธ How to use StudyQuiz from the terminal

๐Ÿง  How to leverage ChatGPT to:

Generate quiz questions and answers in batch

Summarize slides and course material

Study smarter, faster, and with deeper understanding

๐ŸŽฏ The goal: help early adopters get real value before the full frontend arrives


๐Ÿ”œ Whatโ€™s Coming in v0.2.0

  • ๐ŸŒ Full browser UI with Svelte + TailwindCSS
  • ๐Ÿงช More test coverage (attempts, followups)

โญ Try It + Feedback

Hereโ€™s the repo:

๐Ÿ”— github.com/aissa-laribi/studyquiz

  • Star it โญ if you like it
  • Raise issues ๐Ÿ’ฌ if something breaks

๐Ÿ’ฌ Letโ€™s Connect

Ask me questions here or find me on GitHub

Thanks for reading ๐Ÿ™

Top comments (0)