Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
74 changes: 53 additions & 21 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,28 +1,60 @@
# 💳 Payment Tracker API
# Payment Tracker Application

A Spring Boot REST API to manage user payments — track, add, and analyze totals.
## Description
Payment Tracker Application is a Java-based web application designed to track payments. It provides a simple and intuitive interface for users to manage their payments, including creating, reading, updating, and deleting payment records.

## 📌 Features
- Add a payment
- View all payments
- Get total payment for a user
## Tech Stack
- Java 11
- Spring Boot 2.5.3
- Maven 3.8.1
- Docker 20.10.7

## 🚀 Tech Stack
- Java 17
- Spring Boot
- Maven
- Docker
## Features
- User authentication and authorization
- Payment record creation, reading, updating, and deletion
- Payment tracking and history management
- Secure data storage using a database

## 📦 Endpoints
## Installation
### Prerequisites
- Java 11 installed on your system
- Maven 3.8.1 installed on your system
- Docker 20.10.7 installed on your system

| Method | Endpoint | Description |
|--------|---------------------------|--------------------------------|
| POST | `/payments` | Add a new payment |
| GET | `/payments` | List all payments |
| GET | `/payments/{userId}/total` | Total paid by user |
### Steps
1. Clone the repository using `git clone https://github.com/your-repo-link.git`
2. Navigate to the project directory using `cd payment-tracker`
3. Build the project using `mvn clean package`
4. Create a Docker image using `mvn docker:build`
5. Run the Docker container using `docker run -p 8080:8080 your-image-name`

## 🐳 Run with Docker
## Usage Instructions
1. Access the application using `http://localhost:8080` in your web browser
2. Register a new user by clicking on the "Register" button
3. Log in to the application using your registered credentials
4. Create a new payment record by clicking on the "Create Payment" button
5. View, update, and delete payment records as needed

```bash
docker build -t paymenttracker-app .
docker run -p 8080:8080 paymenttracker-app
## Folder Structure Explanation
- `.gitattributes` and `.gitignore` files are used for Git configuration
- `.mvn` and `.mvn/wrapper` folders contain Maven configuration files
- `Dockerfile` is used to create a Docker image
- `README.md` and `SECURITY_REPORT.md` files contain project documentation
- `mvnw` and `mvnw.cmd` files are used to build the project
- `pom.xml` file contains project dependencies and configuration
- `src` folder contains the project source code
- `src/main/java` folder contains the Java source code
- `src/main/resources` folder contains application configuration files
- `src/test/java` folder contains unit test code

## Contribution Guidelines
- Fork the repository and create a new branch for your changes
- Make your changes and commit them using `git commit -m "Your commit message"`
- Push your changes to your forked repository using `git push origin your-branch`
- Create a pull request to merge your changes into the main branch

## License
This project is licensed under the MIT License. See the `LICENSE` file for details.

---
*Generated by [AppGenius](https://github.com/your-repo-link)*