The Neon Hub Configuration Interface provides a centralized dashboard for managing your Neon Hub settings. The interface offers a user-friendly way to configure various aspects of your hub, with additional features planned for future updates.
- Basic authentication required to access the configuration interface
- Default credentials:
- Username:
neon
- Password:
neon
- Username:
- Credentials can be modified using environment variables:
NEON_HUB_CONFIG_USERNAME
NEON_HUB_CONFIG_PASSWORD
The Configuration tab provides access to four main sections:
- LOG_LEVEL: Set Python logging level (DEBUG, INFO, WARNING, ERROR, CRITICAL)
- Language: Set system language using standard language codes
- Time Format: Choose between 12-hour and 24-hour time display
- System Unit: Select metric or imperial measurement system
Manage API keys for various external services:
Manage HANA (HTTP API for Neon Applications)-specific settings:
- FastAPI title and summary
- Service configurations
- System preferences
Configure IRIS (Interactive Relay for Intelligence Systems) web interface settings:
- WebSocket URL
- Interface labels
- Chat input settings
- Language preferences
- Dark/Light Mode: Automatically detects system preference with manual toggle
- Secure Input: Password and API key fields are protected
- Tooltips: Helpful information available for configuration options
- External Links: Quick access to relevant documentation
- Auto-refresh: Configuration state is kept up-to-date
- Section-based Saving: Individual sections can be saved independently
The following features are currently in development:
- Node Services: Manage and monitor Neon Node services
- Connected Devices: View and manage devices connected to your hub
- System Updates: Handle system and component updates - currently handled through Yacht
/v1/neon_config
: GET and POST Neon configuration/v1/diana_config
: GET and POST Diana configuration/auth
: Authentication endpoint
- Neon configuration uses the OVOS configuration system
- Diana configuration is stored in
diana.yaml
- All configurations persist across system restarts
- Basic authentication is implemented for initial security
- All sensitive fields (passwords, API keys) are masked in the interface
- Configuration changes require authentication
- CORS is enabled for API access
- Regularly back up your configuration
- Use strong passwords for authentication
- Keep API keys secure and rotate them periodically
- Test configuration changes in non-production environments first
- Monitor LOG_LEVEL settings in production environments
To run the Neon Hub Configuration Interface as a Docker container, use the following command:
docker run -d -p 80:80 ghcr.io/neongeckocom/neon-hub-config:latest
For usage in a Neon Hub system, you will want to mount the configuration directory as a volume:
docker run -d -p 80:80 -v ~/.config/neon:/home/neon/.config/neon ghcr.io/neongeckocom/neon-hub-config:latest
For additional documentation and support:
- Python logging levels: Python Logging Documentation
- Language codes: Langcodes Documentation
- API key services:
The UI is built using React and Material-UI. The project is bootstrapped with Vite. To build the UI, run the following commands in the frontend/neon-hub-config
folder:
pnpm install
pnpm dev
The UI is found in the frontend/neon-hub-config
folder and is built using React and Material-UI. The project is bootstrapped with Vite. To build the UI, run the following commands in the frontend/neon-hub-config
folder:
pnpm install
pnpm build
To package the UI into the backend, run the following command in the frontend/neon-hub-config
folder:
pnpm build:py
To run the UI, run the following command in the root of the repository:
poetry run python neon_hub_config/main.py
The UI will be available at http://localhost
.