Other Resources
The development environment exposes several documentation and administration services through Docker Compose. Each one runs on a dedicated subdomain managed by Traefik with automatic Let's Encrypt certificates.
All URLs below are resolved from the DOMAIN variable in docker/.env.
- Code Documentation (Doxygen)
Auto-generated documentation from the PHP backend source code. Browse classes, functions, services, and controllers with their parameters, return types, and inheritance hierarchy.
https://doc.unpispas4.mywire.org/codedoc/ - Test Coverage Reports
Line-by-line coverage reports generated by Jest (Angular front-end) and PHPUnit (PHP back-end). Use them to identify untested code paths before making changes.
https://doc.unpispas4.mywire.org/coverage/ - API Reference (Swagger)
Interactive documentation for the backend REST API. Lists every endpoint with its HTTP method, parameters, request body schema, and response format. You can test calls directly from the browser.
https://doc.unpispas4.mywire.org/swagger/ - Database Admin (phpMyAdmin)
Web-based administration tool for the MariaDB database. Inspect table schemas, run queries, and browse data in both the central and tenant databases.
https://adm.unpispas4.mywire.org/ - Frontend Application
The production Angular application (unpispas-pos). This is the main POS interface served over Nginx.
https://app.unpispas4.mywire.org/ - Backend API
The PHP REST API server that the frontend communicates with. Handles authentication, synchronization, tickets, and all business logic.
https://api.unpispas4.mywire.org/ - Developer Guide (this site)
The documentation you are reading now. Covers architecture, libraries, widget components, and onboarding guides.
https://how.unpispas4.mywire.org
Infrastructure
All services are defined in docker/docker-compose.yml. Traefik acts as the reverse proxy, routing each subdomain to its corresponding container. Certificates are provisioned automatically via Let's Encrypt (HTTP-01 challenge).
To add a new documentation service, create an Nginx container in docker-compose.yml with the appropriate Traefik labels and add its subdomain to docker/.env.