Technical Documentation Backend
Overview
The backend of Jenga is responsible for the business logic and persistance of data. It exposes a simple REST-API for interaction, which can be found here. Built in Java on Quarkus, Jenga is a cloud-native application benefiting from Quarkus's many advanced features.
Jenga also has an AI-assistant. The relevant documentation for that can be found here.
Core Technologies
These are the main dependencies used to build the backend:
- Programming Language: Java 21
- Framework: Quarkus
- API Layer: Jakarta REST
- Persistence: Jakarta Persistence (JPA) using Hibernate
- Security: SmallRye JWT
- Database: PostgreSQL
- Build Tool: Maven
Current Features
- Simple API: Easy to use REST-API, see API-reference here
- Projects: Create projects as basket of tickets, create custom labels to organize tickets
- Tickets: Create tickets with various data fields to describe and manage tickets
- Users: Native registration and login
- Security: Authentication with JWT
- Search: Search endpoint with filter
-
Thousands of lines of commented source code (not just TODO and FIXME)
Limitations
For not implemented features and limitations see here.