Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/0xzer0x/inventory-management

An inventory management system using Spring MVC with Thymeleaf and Bootstrap CSS.
https://github.com/0xzer0x/inventory-management

Last synced: about 1 month ago
JSON representation

An inventory management system using Spring MVC with Thymeleaf and Bootstrap CSS.

Awesome Lists containing this project

README

        



  

  

📦 Inventory Management System


### 🚀 Overview

This repository hosts an Inventory Management System built with Spring MVC, leveraging Thymeleaf for server-side rendering and Bootstrap for styling. The application is containerized using Docker, facilitating easy deployment and scalability. GitHub Actions is utilized for CI/CD pipelines, ensuring smooth integration and deployment processes.

### 🧰 Technology Stack

- **Gradle**: Dependency management and build automation tool.
- **Spring MVC**: Utilizes Spring MVC for robust backend logic.
- **Spring Security**: Secure authentication and authorization, protecting user data and ensuring only authorized users have access to specific actions.
- **Thymeleaf**: Server-side rendering for the frontend.
- **Bootstrap**: Responsive and modern UI design.
- **Docker**: Containerization for consistent environment across development, testing, and production.
- **GitHub Actions**: Automated CI/CD pipeline for seamless integration and deployment.
- **Unit Testing**: Comprehensive testing strategy to ensure application quality and reliability.

### 🏁 Getting Started

To get started with the Inventory Management System, follow these steps:

1. **Clone the Repository**

```sh
git clone https://github.com/0xzer0x/inventory-management.git
```

2. **Run with Docker Compose**

Navigate to the project directory and run the following command:

```sh
docker compose up
```

This command will download the application Docker image and start the neccessary containers. The application will be accessible at `http://localhost:8080`.

### 🛠️ Building from Source

#### 📦 Dependencies

- **Java 21 or Newer:** This project requires Java 21 or newer to compile and run. Ensure you have the appropriate JDK installed on your system.

#### Build

To build the project into an executable JAR file, use the following Gradle command:

```sh
./gradlew bootJar
```

### ✅ Running Tests

To run the unit and integration tests, use the following Gradle command:

```sh
./gradlew tests --no-parallel
```

### 👥 Contributing

Contributions to this project are welcome. Please feel free to submit pull requests or open issues for any bugs or feature requests.

### 📜 License

This project is licensed under the GPLv3 License - see the [LICENSE](LICENSE) file for details.