Project developed with Professor Nélio Alves from the course: DevSuperior - Imersão Java Spring.
This project is based on the backend developed during the "Imersão Java Spring" course by DevSuperior, taught by Professor Nélio Alves. The original application consists of a REST API for managing a video game list.
Subsequently, a Flutter frontend was developed to consume this API, turning the project into a full-stack application.
The project's architecture is divided into two main parts: Backend and Frontend.
Backend (Java/Spring):
- Language: Java 17
- Framework: Spring Boot
- Architecture: Layered (Controller, Service, Repository)
- Database: PostgreSQL
- Build Tool: Maven
Frontend (Flutter):
- Language: Dart
- Framework: Flutter
- Architecture: MVC (Model-View-Controller) with Repository Pattern
- For more details on the frontend architecture and dependencies, please refer to the frontend README.
-
Database Setup: Ensure you have Docker and Docker Compose installed. Run the following command from the project root to start the PostgreSQL container:
docker-compose up -d
-
Populate the Database: After the container is running, execute the following command from the project root to create and populate the database tables using the
create.sqlfile:docker exec -i dev-postgresql psql -U postgres -d mydatabase < create.sql
-
Run the Application: Run the Spring Boot application. You can do this through your IDE (e.g., VS Code, IntelliJ) or from the terminal with Maven:
./mvnw spring-boot:run
The API will be available at http://localhost:8080.
-
Navigate to the frontend directory:
cd frontend -
Run the application:
flutter run
For more detailed instructions on setting up the Flutter environment and running the app, please refer to the frontend README.
- Nélio Alves (DevSuperior): For the excellent course and the backend project that formed the basis of this work https://github.com/devsuperior/dslist-backend.
- Edoardo Fabrizio De Iovanna: For developing and integrating the Flutter frontend.