This is a modern web app - Games Store, made as a learning project. This microservice-based games store is composed of microservices developed with Spring(Java) and using React for the UI. Feel free to check out our work.
These instructions will get you a copy of the project up and run it on your machine.
- Stable Docker and Docker Compose versions installed on your machine.
Clone repository (or download it as .zip archive)
git clone https://github.com/Friendly-neighborhood-development/Fnd_games_store.git
- Move to project folder
cd Fnd_games_store
- Build and run application with Compose (first start can take a lot of time, so please be patient)
docker compose up
- Note that, if your machine has lower than 8Gb RAM, please use script for sequential docker images build
chmod +x low_ram_build.sh
and
./low_ram_build.sh
After build is completed run application with Compose
docker compose up
Now enjoy 🙂
- React - UI library
- Tailwind CSS - CSS framework
- HeadlessUI - unstyled, fully accessible UI components
- Heroicons - SVG icons
- Redux (Redux Toolkit) - state manager
- Typescript - JavaScript that scales
- Axios - library for HTTP requests
- Npm - package manager
- Java 8
- Spring: Boot, Data, Web, MVC, Security with Jwt
- Spring Cloud: Gateway, Config server, Eureka, OpenFeign
- Message broker: Apache Kafka
- ORM: Hibernate
- Caching: Caffeine
- Databases: PostgreSQL, H2, Redis
- Build automation tool: Gradle
- Testing: Junit5, Mockito
- Deployment: Docker, Docker Compose
- Miscellaneous: Lombok
- Service discovery performed by Netflix Eureka
- Security is built upon Spring Security with Jwt technologies
- Load balancing performed by Spring Cloud Gateway
- Service configuration provided by Spring Cloud Config
- Games avatars stores as base64 strings in databases
- Frontend: Andrew Semenov
- Backend: Sergey Podgorny
We will be glad to see ur feedback 😉