This project is a pet project for a marketplace platform created by a Java developers. The application leverages several technologies such as Spring Boot, PostgreSQL, GraphQL, and Git.
- Java: The primary programming language used for development.
- Spring Boot: A framework for building standalone, production-ready Spring-based applications.
- PostgreSQL: A powerful, open-source object-relational database management system.
- GraphQL: A query language for your API, offering a more efficient and flexible alternative to REST.
- Git: A version control system to manage and track changes in the source code.
-
Registration and Authentication:
- Implemented using JWT (JSON Web Tokens) to enhance security and manage access control.
- Allows users to securely sign up and log in.
-
Purchases and Orders:
- Users can add products to their cart, place orders, and specify delivery addresses.
- A streamlined order processing and management system.
-
Reviews and Ratings:
- Users can leave ratings and comments on products.
- Assists other users in making informed decisions based on feedback.
-
GraphQL API:
- Provides flexibility and efficiency in client-server interactions.
- Enables clients to request only the data they need, reducing payload size and improving performance.
- JDK 11 or higher
- Maven
- PostgreSQL
-
Clone the repository:
git clone https://github.com/bolatdias/market-place.git cd market-place
-
Configure PostgreSQL:
- Create a new database for the project.
- Update the
application.properties
file with your PostgreSQL credentials.
-
Build the project:
mvn clean install
-
Run the application:
mvn spring-boot:run
- Access the application at
http://localhost:8080
. - Use the GraphQL playground at
http://localhost:8080/graphql
to interact with the GraphQL API.