qelem-web Svelte Themes

Qelem Web

Client side AI-powered study tool that processes PDFs to generate quizzes and flashcards using Gemini AI.

qelem

A SvelteKit app that converts static PDFs into:

  • Interactive quizzes ✏️
  • Customizable exams πŸ“
  • Anki-compatible flashcard decks πŸ—‚οΈ
  • Structured study guides πŸ“š

Backend Companion: qelem-api (NestJs + PgSql)

Table of Contents

Features

PDF Processing

  • The user uploads a PDF document containing learning material.

  • Input Parameters The user specifies:

  • Maximum number of questions desired

  • Difficulty level (easy, medium, or hard)

  • Content type: flashcards or exam

  • Content Extraction The system extracts raw text from the PDF.

  • Content Generation via Gemini API The extracted content is sent to the Gemini API to generate either:

A deck of flashcards, or

A structured set of exam questions

Output Formatting & Saving The generated content is formatted in a predefined structure and saved as a JSON file.

Download/Return Result The final output file is returned to the user for access.

Social Sharing

  • The user generates the desired learning content (exam or deck of cards).

  • The user selects a social platform to share to from frontend or copy the content link & shares it to others.

  • Api will return the specific content parsing it from the shared url.

To be added:

  • Adding popular pdf materials
  • Progress tracking for a user
  • Study scheduler & with notifications
  • Personalization of learning content & studying user behaviour

βš™οΈ Installation (Docker)

Clone the repository

     git clone https://github.com/Dagmawi-22/qelem-web.git ```
     cd qelem-web

Create a .env file if it doesn't exist based on .env.example:

    VITE_API_BASE_URL=http://localhost:8000/api/v1

Start the application with Docker:

    docker-compose up --build

🀝 Contributing

Contributions are welcome! If you have ideas for improvements, bug fixes, or new features, feel free to fork the repository and submit a pull request. For major changes, please open an issue first to discuss what you’d like to add.

πŸ”’ License

Do whatever you want with it β€” learn from it, build on it, break it, remix it. Just don’t be shady. A little credit is always appreciated. ✌️

Top categories

Loading Svelte Themes