Archived all completed OpenSpec changes, created .gitignore, implemented Gitea CI/CD, updated frontend with professional styling and clickable IPs, and added application documentation.

This commit is contained in:
2026-03-27 13:09:48 +01:00
parent cc59a91fea
commit 1873ae0e1f
25 changed files with 262 additions and 0 deletions

View File

@@ -0,0 +1,26 @@
## ADDED Requirements
### Requirement: Identify Backend Local IP Addresses
The system SHALL identify all local IP addresses and their corresponding subnets on the host where the backend service is running.
#### Scenario: Backend on a host with local network interfaces
- **WHEN** the backend service starts
- **THEN** the system identifies all active local IP addresses and their subnets.
### Requirement: Determine Preferred Local IP for Services
The system SHALL, for each service not exposed via Traefik, determine a "preferred local IP" if any of the service's exposed IPs are within the backend's identified local subnets.
#### Scenario: Service IP matches a local subnet
- **WHEN** a service has an exposed IP address that falls within one of the backend's local subnets
- **THEN** that service IP is identified as the "preferred local IP".
#### Scenario: Service IP does not match any local subnet
- **WHEN** a service has exposed IP addresses but none fall within the backend's local subnets
- **THEN** no "preferred local IP" is determined for that service.
### Requirement: Provide All Accessible Service IPs
The system SHALL, for each service, provide a comprehensive list of all accessible IP addresses and ports.
#### Scenario: Service with exposed ports
- **WHEN** a service has exposed ports
- **THEN** the system provides a list of all IP addresses and ports through which the service can be accessed.

View File

@@ -0,0 +1,29 @@
## MODIFIED Requirements
### Requirement: Clickable Service Cards
The system SHALL make the entire service card a clickable link based on the following priority:
1. If a Traefik URL is present, use that.
2. Else if a preferred local IP is present, use that.
3. Else, display all accessible IPs/ports as individual clickable links.
#### Scenario: Service with Traefik URL
- **WHEN** a service card is displayed with a Traefik URL
- **THEN** the entire card is a clickable link that opens the Traefik URL in a new tab.
#### Scenario: Service with Preferred Local IP (no Traefik URL)
- **WHEN** a service card is displayed with a preferred local IP but no Traefik URL
- **THEN** the entire card is a clickable link that opens the preferred local IP in a new tab.
#### Scenario: Service with Multiple Accessible IPs/Ports (no Traefik or Preferred Local IP)
- **WHEN** a service card is displayed with multiple accessible IPs/ports but no Traefik URL or preferred local IP
- **THEN** the card is not clickable as a whole.
- **AND** each accessible IP/port is displayed as an individual clickable link that opens in a new tab.
### Requirement: Professional and Modern UI with Frosted Cards
The system SHALL have a professional and modern user interface with a "frosted glass" effect for service cards, improved typography, spacing, and responsive design.
#### Scenario: Displaying Service Cards
- **WHEN** service cards are displayed
- **THEN** the cards have a "frosted glass" effect with a blurred backdrop, semi-transparent background, rounded corners, and a subtle box shadow.
- **AND** the overall layout utilizes improved typography and spacing for a professional appearance.
- **AND** the interface is responsive, adapting to various screen sizes.