https://github.com/dagmawi-22/qelem-web
Client side AI-powered study tool that processes PDFs to generate quizzes and flashcards using Gemini AI.
https://github.com/dagmawi-22/qelem-web
ai pdf-processing question-answering svelte sveltekit
Last synced: 9 months ago
JSON representation
Client side AI-powered study tool that processes PDFs to generate quizzes and flashcards using Gemini AI.
- Host: GitHub
- URL: https://github.com/dagmawi-22/qelem-web
- Owner: Dagmawi-22
- Created: 2025-04-17T16:11:46.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2025-05-07T18:46:44.000Z (9 months ago)
- Last Synced: 2025-05-12T01:54:48.576Z (9 months ago)
- Topics: ai, pdf-processing, question-answering, svelte, sveltekit
- Language: Svelte
- Homepage: https://qelem-web.vercel.app
- Size: 250 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# qelem


A SvelteKit app that converts static PDFs into:
- Interactive quizzes βοΈ
- Customizable exams π
- Anki-compatible flashcard decks ποΈ
- Structured study guides π
**Backend Companion**: [qelem-api](https://github.com/Dagmawi-22/qelem-web-api) (NestJs + PgSql)
## Table of Contents
- [Features](#-features)
- [Installation](#-installation)
- [Contributing](#-contributing)
- [License](#-license)
## 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
```bash
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:
```bash
VITE_API_BASE_URL=http://localhost:8000/api/v1
```
### Start the application with Docker:
```bash
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. βοΈ