This solution allows users to upload a summary of a given topic, whether it is a university or work assignment, and receive multiple-choice questions based on that summary to practice their knowledge and be evaluated on matters related to that topic.
- Augustas Budnikas
- Ignė Balvočiūtė
- Emilija Marija Dailydžionytė
Front-end:
- React
Back-end:
- .NET 8
- C#
- Entity Framework Core
- PostgreSQL
- OpenAI API
- Docker
Checkout the Github Repository, then run the following commands Using .NET 8 SDK:
cd QuizCraft.Domain.API
dotnet run
or using Docker
cd QuizCraft.Domain.API
docker build -t quicraft:latest .
docker run -p 8080:8080 quizcraft:latest
Main components
User
Question
Data flow
The project utilizes the following key components and database tables:
-
Users Table:
- Stores user information, such as account details and preferences.
- Each new user is registered here.
-
Files Table:
- Stores data about the files uploaded by users.
-
Generated Questions Table:
- Stores the questions generated by the AI for each uploaded file.
- Allows users to retake tests if necessary.
-
Test Results Table:
- Stores a history of user test results and scores.
- Enables users to review past performance.
File Upload and Test Generation
-
File Upload:
- Users upload learning materials through the file upload interface.
-
Processing:
- The backend processes the file and extracts the content.
-
Test Generation:
- AI engine analyzes the content and generates relevant questions.
-
Test Output:
- The generated test is displayed to the user, allowing them to answer questions and submit responses.