Deployment View
Infrastructure Level 1
The LibreHousehold system is deployed using a simple container-based architecture that provides both flexibility and easy maintenance.
Server Infrastructure
Nginx Container (Frontend)
Technology: Nginx Web Server in Docker Container
Responsibilities: - Serving static PWA files (HTML, JavaScript, CSS) - Reverse proxy for API calls to the backend
Quality attributes: - Fast delivery of static content - Simple configuration and deployment - Low resource requirements
Backend Container
Technology: Kotlin Spring Boot Application in Docker Container
Responsibilities: - REST API for all business logic - Database connection and persistence - User authentication and authorization - Integration with email services
Quality attributes: - Scalability through container replication - Easy deployments through container updates - Application isolation
Client Devices
Desktop Browser
Technology: Standard Web Browser (Chrome, Firefox, Safari)
Responsibilities: - Execution of the Progressive Web App - Local data storage for offline functionality - Service Worker for background synchronization
Mobile Browser/PWA
Technology: Embedded Browser (WebView) or PWA installation
Responsibilities: - Native app-like experience on smartphones - Offline functionality
Quality attributes: - Cross-platform compatibility - No app store dependencies - Automatic updates via browser
External Services
E-Mail Server
Technology: SMTP-compatible email service
Responsibilities: - Sending household invitations - Notifications about important events - Password reset emails
Database
Can be either a (cloud) hosted database service or a containerized database instance.
Technology: PostgreSQL Database
Responsibilities: - Persistent storage of user data, household data, and application state - Data integrity and consistency
Deployment Mapping
| Software Module | Infrastructure Element | Deployment Artifact |
|---|---|---|
Frontend PWA |
Nginx Container |
Static files (HTML, JS, CSS) |
Backend API |
Backend Container |
Docker Image (Kotlin JAR) |
Web Server |
Nginx Container |
Nginx configuration |
E-Mail Service |
External SMTP Server |
SMTP configuration |
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.