The Flashcards web application is an intuitive and powerful tool designed to enhance learning and exam preparation through interactive digital flashcards. Serving as a modern alternative to paper cards, the application empowers users to create, organize, and review custom flashcard sets with ease.
This application prioritizes a user-friendly experience, enabling users to seamlessly manage and study a wide range of topics, from academic subjects to professional knowledge areas. By supporting efficient information retention and recall, the Flashcards application provides an essential resource for learners aiming to build mastery and confidence in any subject.
The Flashcards web application leverages a modern tech stack to ensure reliability, scalability, and a responsive user experience. Key technologies include:
- Database: PostgreSQL
- System: Java 17 with Spring Boot
- View: Typescript and React
The REST API architectural style is used to communicate between the system and the view.
- Installed Java 17
- Installed Maven
- Installed IDE, for example Intellij Idea
- Clone this repository
git clone https://github.com/tsayvyac/flashcard-be.git
- Add the necessary variables to the
.env.example
file: - Erase
.example
and save the.env
file - Run the
scripts/run.sh
script to start the application, or use IDE - It can also be run in a docker container
docker build -t [tag] .
docker run --env-file ./.env [tag or id]
- Run frontend.
GitLab CI/CD pipeline was also created for this project. See GitLab repository.