Add complete French (fr) and Chinese (zh) translations for all documentation: - Root files: README, CHANGELOG, SECURITY, BETA-RELEASE - docs/: All 16 core documentation files - DOCS/: All 19 deep-dive documents including embedded/ and archive/ - package/secubox/: All 123+ package READMEs - Misc: secubox-tools/, scripts/, EXAMPLES/, config-backups/, streamlit-apps/ Total: 346 translation files created Each file includes language switcher links for easy navigation between English, French, and Chinese versions. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
74 lines
3.8 KiB
Markdown
74 lines
3.8 KiB
Markdown
# Prototypeur WebUI SecuBox
|
|
|
|
[English](README.md) | Francais | [中文](README.zh.md)
|
|
|
|
Maquette FastAPI + Jinja2 qui emule une gestion similaire a LuCI des plugins/modules SecuBox sur une station de travail locale. Il virtualise les modules, presets et pipelines de commandes pour que les developpeurs puissent experimenter sans routeur.
|
|
|
|
## Fonctionnalites
|
|
- **Catalogue de Modules** : Parcourez plus de 29 modules SecuBox auto-ingeres avec metadonnees en direct depuis les packages
|
|
- **AppStore** : Interface marketplace avec categories, recherche, notes et avis
|
|
- **Registre de Composants** : Composants UI reutilisables depuis les modules installes
|
|
- **Profils de Configuration** : Regroupez modules et presets pour differents cas d'usage
|
|
- **Generateur de Templates** : Templates de configuration UCI/network/firewall
|
|
- **Parametres** : Changement de theme, langue, connexion backend (virtualise/SSH/HTTP)
|
|
- **Support Multi-themes** : SecuBox Light + LuCI Dark avec changement transparent
|
|
- **Executeur de Presets** : Simule des pipelines multi-commandes avec resultats/logs agreges
|
|
- **Console de Contexte Personnalise** : Injectez des overrides JSON dans les executions de presets
|
|
- **Integration HTMX** : Mises a jour partielles pour une UI dynamique sans rechargement de page
|
|
- **Etat Alpine.js** : Reactivite cote client et notifications toast
|
|
|
|
## Demarrage
|
|
```bash
|
|
cd secubox-tools/webui
|
|
python -m venv .venv && source .venv/bin/activate
|
|
pip install -e .[dev] # ou utilisez UV/Poetry selon preference
|
|
uvicorn app.main:app --reload --port 8100
|
|
```
|
|
|
|
Puis visitez `http://127.0.0.1:8100/` et changez de theme via les controles de l'en-tete.
|
|
|
|
## Structure du Projet
|
|
```
|
|
webui/
|
|
app/ # Package application FastAPI
|
|
data/ # Catalogues fixtures pour modules, presets, commandes
|
|
templates/ # Templates Jinja2 + hierarchie multi-themes
|
|
static/ # CSS Tailwind-ready (actuellement fait main)
|
|
scripts/ # Futurs helpers d'ingestion/automatisation
|
|
```
|
|
|
|
## Regenerer le Catalogue de Modules
|
|
L'interface ingere maintenant les metadonnees en direct depuis les repertoires `package/secubox/*` et `luci-*` a la racine. Executez le helper pour rafraichir `data/modules.json` apres modification des packages :
|
|
|
|
```bash
|
|
# via script helper
|
|
cd secubox-tools/webui
|
|
./scripts/ingest_packages.py --pretty
|
|
|
|
# ou en utilisant le point d'entree CLI installe
|
|
secubox-webui-ingest --pretty
|
|
```
|
|
|
|
Ce parser lit chaque Makefile (LUCI_TITLE, VERSION, DESCRIPTION, etc.), derive des noms/tags conviviaux, et assigne des contextes/actions securises par defaut pour les maquettes de virtualisation.
|
|
|
|
## Statut
|
|
|
|
### Complete
|
|
- Navigation complete avec 6 sections principales (Modules, AppStore, Composants, Profils, Templates, Parametres)
|
|
- Ingestion de metadonnees de packages en direct depuis le depot
|
|
- Systeme multi-themes (SecuBox Light / LuCI Dark)
|
|
- Moteur de virtualisation de presets avec simulation de commandes
|
|
- Integration HTMX + Alpine.js pour UI dynamique
|
|
- AppStore avec categories, recherche, notes et avis
|
|
- Tous les templates HTML implementes
|
|
- Layouts responsifs bases sur des cartes
|
|
- Points d'acces API pour acces programmatique
|
|
|
|
### Prochaines Etapes
|
|
1. **Connecter les fonctionnalites interactives** : Activer installation/desinstallation, activation de profils, generation de templates
|
|
2. **Integration Backend** : Connexion a un appareil OpenWrt reel via SSH ou API HTTP
|
|
3. **Etendre le flux d'ingestion** : Deriver presets/commandes depuis les metadonnees de packages (ACLs, checklists README)
|
|
4. **Authentification** : Ajouter la gestion de session pour les deploiements multi-utilisateurs
|
|
5. **Dry-runs containerises** : Etendre le moteur de virtualisation pour fonctionner dans des conteneurs isoles
|
|
6. **Mises a jour en temps reel** : Support WebSocket pour la surveillance systeme en direct
|