https://github.com/hyuseinleshov/habit-tracker-api
A backend REST API for tracking personal habits, built with Java and Spring Boot. It supports habit creation, recurring check-ins, streak calculations, and user authentication.
https://github.com/hyuseinleshov/habit-tracker-api
backend ci docker flyway gradle habit-tracker java jpa jwt-authentication postgresql rest-api spring-boot spring-security swagger testcontainers
Last synced: 3 months ago
JSON representation
A backend REST API for tracking personal habits, built with Java and Spring Boot. It supports habit creation, recurring check-ins, streak calculations, and user authentication.
- Host: GitHub
- URL: https://github.com/hyuseinleshov/habit-tracker-api
- Owner: hyuseinleshov
- License: mit
- Created: 2025-06-24T16:40:41.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2025-07-13T09:25:47.000Z (3 months ago)
- Last Synced: 2025-07-13T11:32:13.728Z (3 months ago)
- Topics: backend, ci, docker, flyway, gradle, habit-tracker, java, jpa, jwt-authentication, postgresql, rest-api, spring-boot, spring-security, swagger, testcontainers
- Language: Java
- Homepage:
- Size: 1.2 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[![Contributors][contributors-shield]][contributors-url]
[![Forks][forks-shield]][forks-url]
[![Stargazers][stars-shield]][stars-url]
[![Issues][issues-shield]][issues-url]
[![MIT License][license-shield]][license-url]
![]()
Habit Tracker API
A backend REST API for tracking daily/weekly habits, check‑ins, and streaks.
Report Bug
·
Request Feature
Table of Contents
## About The Project
Our goal is:
"Habit Tracker API is a Spring Boot backend that helps users manage daily and weekly habits. Users can:
- Register/login with JWT authentication
- Create, read, update, delete habits
- Perform check‑ins per habit
- View current streaks and historic statsThis project is structured with clean architecture, Docker, CI pipelines, and full API documentation—all without a UI layer."
### Built With
* [![Java][java-shield]][java-url]
* [![Spring Boot][spring-boot-shield]][spring-boot-url]
* [![Gradle][gradle-shield]][gradle-url]## Getting Started
Follow these instructions to run the project locally.
### Prerequisites
* Java 21+
* Gradle (optional — you can use the included `./gradlew` wrapper)### Installation
1. Clone the repository:
```bash
git clone https://github.com/hyuseinleshov/habit-tracker-api.git
cd habit-tracker-api
```2. Build and run the application:
```bash
./gradlew bootRun
```3. The API will be available at:
```
http://localhost:8080/
```## Contributing
We welcome contributions! Follow these steps:
1. Fork the project
2. Create your branch (`feature/xyz`, `fix/abc`)
3. Commit your changes (`feat: add xyz feature`)
4. Push to your branch
5. Open a Pull RequestAdhere to our branch/commit conventions.
## License
Distributed under the MIT License. See [`LICENSE`](LICENSE) for details.
## Contact
- **Hyusein Leshov** – hl.dev.acc@gmail.com
- **Shenol Shengov** – shenolshengov41@gmail.com[contributors-shield]: https://img.shields.io/github/contributors/hyuseinleshov/habit-tracker-api.svg?style=for-the-badge
[contributors-url]: https://github.com/hyuseinleshov/habit-tracker-api/graphs/contributors
[forks-shield]: https://img.shields.io/github/forks/hyuseinleshov/habit-tracker-api.svg?style=for-the-badge
[forks-url]: https://github.com/hyuseinleshov/habit-tracker-api/network/members
[stars-shield]: https://img.shields.io/github/stars/hyuseinleshov/habit-tracker-api.svg?style=for-the-badge
[stars-url]: https://github.com/hyuseinleshov/habit-tracker-api/stargazers
[issues-shield]: https://img.shields.io/github/issues/hyuseinleshov/habit-tracker-api.svg?style=for-the-badge
[issues-url]: https://github.com/hyuseinleshov/habit-tracker-api/issues
[license-shield]: https://img.shields.io/github/license/hyuseinleshov/habit-tracker-api.svg?style=for-the-badge
[license-url]: https://github.com/hyuseinleshov/habit-tracker-api/blob/main/LICENSE
[java-shield]: https://img.shields.io/badge/Java-DE0A26?logo=openjdk&logoColor=white&style=for-the-badge
[java-url]: https://www.oracle.com/java/
[spring-boot-shield]: https://img.shields.io/badge/Spring%20Boot-6DB33F?logo=springboot&logoColor=white&style=for-the-badge
[spring-boot-url]: https://spring.io/projects/spring-boot
[gradle-shield]: https://img.shields.io/badge/Gradle-02303A?logo=gradle&logoColor=white&style=for-the-badge
[gradle-url]: https://gradle.org/