Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kawodyaarachchige/green_shadow_backend
A Spring Boot API to manage crop data, resources, and operation logs for efficient farm management, helping track crops, resources, and activities on the farm
https://github.com/kawodyaarachchige/green_shadow_backend
hibernate jpa-repository jwt mysql spring-boot spring-mvc spring-security
Last synced: about 1 month ago
JSON representation
A Spring Boot API to manage crop data, resources, and operation logs for efficient farm management, helping track crops, resources, and activities on the farm
- Host: GitHub
- URL: https://github.com/kawodyaarachchige/green_shadow_backend
- Owner: kawodyaarachchige
- License: mit
- Created: 2024-11-03T05:06:57.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2024-12-11T04:33:53.000Z (about 2 months ago)
- Last Synced: 2024-12-11T05:25:19.096Z (about 2 months ago)
- Topics: hibernate, jpa-repository, jwt, mysql, spring-boot, spring-mvc, spring-security
- Language: Java
- Homepage:
- Size: 120 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## Crop Monitoring System Backend - Green Shadow
### API Documentation
[View API Documentation](https://documenter.getpostman.com/view/36189302/2sAYBbc8KB)### Frontend Repository
[Crop Monitoring System Frontend](https://github.com/kawodyaarachchige/Green_shadow_frontend.git)---
### Description
This project is a **Crop Monitoring System Backend** built using **Java Spring Boot**, with **MySQL** as the database and **Hibernate** as the ORM framework. The application provides **role-based access control (RBAC)** for roles such as `ADMINISTRATIVE`, `MANAGER`, and `SCIENTIST`. It uses **JWT-based authentication** for secure login and token management. The system ensures dynamic communication between frontend and backend using **AJAX/Fetch API**. Logging and efficient query handling with Hibernate JPQL ensure high performance and maintainability.---
### Tech Stack
- **Java-Spring Boot**: Simplifies enterprise application development with minimal configuration.
- **Hibernate**: Provides easy-to-use ORM for seamless database interactions.
- **MySQL**: Reliable RDBMS for efficient data storage.
- **AJAX/Fetch API**: Facilitates dynamic content updates without reloading pages.
- **JWT**: Ensures secure authentication and authorization with token-based mechanisms.---
### Features
- **Role-Based Access Control**: Granular access permissions for different user roles.
- **JWT Authentication**: Secure sign-in, sign-up, and token refresh support.
- **Hibernate ORM**: Simplifies database management and optimizes query execution with JPQL.
- **AJAX Integration**: Enables a smooth and responsive user experience.
- **Comprehensive Logging**: Tracks system activity with INFO, DEBUG, WARN, and ERROR levels.---
### Role Permissions
- **MANAGER**: Has full CRUD (Create, Read, Update, Delete) access to all system entities.
- **ADMINISTRATOR**: Limited to read-only access for crop, field, and log-related data.
- **SCIENTIST**: Restricted from modifying staff, vehicle, and equipment records.---
### License
This project is released under the [MIT License](LICENSE).