Skip to main content
Before deploying Justina, ensure your environment meets the following requirements. The platform consists of three main components: Backend (Spring Boot), Frontend (Next.js), and AI Service (Python).

Required Software

1

Java Development Kit (JDK) 21+

The backend requires Java 21 or higher.
# Verify Java installation
java -version
Expected output:
openjdk version "21.0.x" or higher
Download from OpenJDK or Eclipse Temurin
2

Maven 3.9+

Maven is required for building the backend application.
# Verify Maven installation
mvn -version
Expected output:
Apache Maven 3.9.x or higher
Download from Apache Maven
3

Node.js 20+

Node.js is required for the Next.js frontend.
# Verify Node.js installation
node -v
Expected output:
v20.x.x or higher
Download from Node.js
4

Python 3.9+

Python is required for the AI analysis service.
# Verify Python installation
python --version
Expected output:
Python 3.9.x or higher
Download from Python.org
5

PostgreSQL 15+ (Production)

PostgreSQL is recommended for production deployments.
# Verify PostgreSQL installation
psql --version
Expected output:
psql (PostgreSQL) 15.x or higher
Download from PostgreSQL. H2 database is used for development and is included with the backend.

Optional Software

Docker & Docker Compose

Docker is optional but recommended for simplified deployment and production environments.
# Verify Docker installation
docker --version
docker-compose --version
Download from Docker

System Requirements

Minimum Requirements

ComponentCPURAMStorage
Backend2 cores2 GB500 MB
Frontend1 core512 MB200 MB
AI Service1 core1 GB200 MB
PostgreSQL1 core1 GB5 GB
ComponentCPURAMStorage
Backend4 cores4 GB1 GB
Frontend2 cores1 GB500 MB
AI Service2 cores2 GB500 MB
PostgreSQL2 cores2 GB10 GB

Network Requirements

Ensure the following ports are available:
ServicePortProtocolPurpose
Backend8080HTTP/WebSocketREST API & WebSocket connections
Frontend3000HTTPNext.js application
PostgreSQL5432TCPDatabase connections
AI Service8000HTTPHealth checks (optional)

Development vs Production

Development deployments can use:
  • H2 in-memory database (no PostgreSQL required)
  • Embedded Maven wrapper (no Maven installation needed)
  • Single machine deployment
  • HTTP connections
Production deployments should use:
  • PostgreSQL database
  • Proper secret management
  • SSL/TLS certificates
  • Load balancing and reverse proxy
  • Separate machines for each service
  • Monitoring and logging solutions

Next Steps

Once your environment meets these prerequisites, proceed to:
  1. Environment Variables - Configure required environment variables
  2. Docker Deployment - Deploy using Docker (recommended)
  3. Manual deployment:

Build docs developers (and LLMs) love