https://github.com/confusedgustas/marketplace
Spring Boot MarketPlace Application using PostgreSQL, Angular and JWT authentication.
https://github.com/confusedgustas/marketplace
angular backend frontend intellij java jwt maven postgresql yaml
Last synced: 4 months ago
JSON representation
Spring Boot MarketPlace Application using PostgreSQL, Angular and JWT authentication.
- Host: GitHub
- URL: https://github.com/confusedgustas/marketplace
- Owner: confusedGustas
- License: mit
- Created: 2024-02-29T21:54:30.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2024-03-01T16:10:44.000Z (over 2 years ago)
- Last Synced: 2025-02-04T11:54:00.067Z (over 1 year ago)
- Topics: angular, backend, frontend, intellij, java, jwt, maven, postgresql, yaml
- Language: Java
- Homepage:
- Size: 2.2 MB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# MarketPlace Application
A simple MarketPlace application built with Spring Boot, PostgreSQL, Angular and JWT for handling access and refresh tokens.
## Features
- User registration and authentication.
- Product listing and searching.
- Buying and selling functionality.
- JWT-based secure access and refresh token handling.
## Prerequisites
Make sure you have the following tools installed before setting up the application:
- Java Development Kit (JDK)
- Apache Maven
- PostgreSQL
## Setup
1. **Clone the repository:**
```bash
git clone https://github.com/confusedGustas/MarketPlace
cd MarketPlace
```
2. **Configure PostgreSQL:**
- Create a new database.
- Leave the default settings as it is, Spring Boot will create the needed tables.
- If you want configurate the settings, you can do it so by accessing the `application.yaml` file
```datasource:
url: jdbc:postgresql://localhost:5432/marketplace
username: postgres
password: postgres
```
3. **Build and run the application:**
```bash
mvn spring-boot:run
cd frontend
npm install
ng serve
```
The application will start on `http://localhost:8080` and `http://localhost:4200`
## Usage
- Access the application through your browser (http://localhost:4200)
- Register as a new user and log in to start
## License
This project is licensed under the [MIT License](./LICENSE).
## Note
I am fully aware of the problems in this project. There are a number of mistakes here and there, and there are certain areas that really need to be improved, such as handling duplicate API calls and caching them, handling image compression and decompression, and generally using API endpoints more wisely. However, the main goal was to learn more about JWT authentication and improve Spring security. Think of that mission as accomplished!