Skip to content

Quizwiz is a flashcards app that utilizes the power or AI and Super-Memo algorithm (SM-2)

License

Notifications You must be signed in to change notification settings

Dev-Salem/quizwiz

Repository files navigation

Description

QuizWiz is a flashcard app that utilizes the power of AI to make flashcards from documents.

📌 Features

  • Create, edit, and combine collections (deck).
  • Create cards manually or by uploading pdf files/pasting materials.
  • Review cards based on SM-2 algorithm
  • Practice reviewed cards using multiple choice or by writing them manually.
  • Light and dark themes.

📸 Screenshots

Create Collection Edit, delete, combine collections and cards
Review cards Practice using multiple choice quiz
Practice by writing definitions manually Upload pdf then save all generated cards
Paste text then save individual generated cards -

📦 Packages & Technologies

Description Package
Architecture Bloc Pattern
State Management flutter_bloc
Dependency Injection get_it
Theming flex_color_scheme
Internet Connection connectivity_plus
Functional Programming dartz
database Isar

🩻 Project Structure

lib
|
|_ 📁src
	|
	|__ 📁core
	|	|__ 📁errors <- define errors and exceptions
	|	|__ 📁router <- generated router & route names
	|	|__ 📁services <- dependency injection & internet connection
	|	|__ 📁theme <- define themes & dynamic theming
	|	|__ 📁utils <- constants (enums, strings, etc..)
	|	|__ 📁widgets <- widgets that are used in multiple screens
	|
	|__ 📁features
		|
		|__ 📁cards
			|__ 📁controller <- Bloc
			|__ 📁data <- data retrieval and caching
			|	|__ 📁models <- business logic
			|	|__ 📁data_source <- works with db and api
			|	|__ 📁repository <- combine and map data
			|__ 📁presentation <- screens and widgets

🏃‍♂️ Install & Run The App

  1. clone the project by running git clone https://github.com/Dev-Salem/quizwiz.git in your preferred directory
  2. Run flutter pub get
  3. Get an api key from ChatPDF
  4. create .env file in the root directory and assign the key to chatPdfApi
  5. Run flutter_run

💡 Contribution

Feel free to add/request features by making a pull request, or by reporting bugs.

🗺️ Roadmap

[✅] add widget tests

[⏳] migrate to Go_Router

[✅] use a new API (e.g ChatPDF)

🗞️ License

MIT License

About

Quizwiz is a flashcards app that utilizes the power or AI and Super-Memo algorithm (SM-2)

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages