Skip to content
giveme11usPublic

About

Your iliadbox in the macOS menu bar — downloads, files and box stats. 100% native Swift, zero dependencies.

Topics

Resources

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

IliadBar

IliadBar porta iliadbox nella barra dei menu di macOS: stato della connessione, download, file, dispositivi LAN, Wi-Fi e servizi avanzati in un'app nativa e local-first.

Platform Platform Swift License

Il progetto usa le API locali di Freebox OS. È pensato per iliadbox e può funzionare con gateway Freebox compatibili; le funzionalità visibili dipendono da modello, firmware e permessi concessi durante l'associazione.

Cosa fa

  • Dashboard con stato, traffico live, IP pubblico, uptime, temperature e dischi.
  • Gestione download completa: magnet, URL, torrent/NZB locali, file, priorità, tracker, peer e rimozione sicura.
  • File manager multi-disco con upload WebSocket, download, cartelle, rinomina, copia, spostamento, condivisione e cancellazione confermata.
  • LAN, DHCP e Wi-Fi: dispositivi, lease, radio, SSID, stazioni, WPS e QR ospiti quando supportati.
  • NAT, accesso remoto, SMB, FTP, UPnP, parental control, VPN, chiamate, contatti e PVR dietro capability detection.
  • Eventi live con fallback al polling, notifiche configurabili e stati offline/stale/permesso negato espliciti.
  • Due widget WidgetKit e CLI ibx con JSON stabile per automazioni.
  • Interfaccia italiana e inglese, scorciatoie da tastiera e diagnostica redatta.

Installazione da sorgente

Richiede macOS 14 o successivo e Xcode Command Line Tools.

git clone https://github.com/giveme11us/IliadBar.git
cd IliadBar
swift package resolve
./Scripts/make-app.sh
cp -R build/IliadBar.app /Applications/
open /Applications/IliadBar.app

Al primo avvio IliadBar scopre la box tramite Bonjour. L'associazione richiede una conferma fisica sulla iliadbox. Il token viene salvato nella configurazione locale privata, leggibile solo dall'utente (0600), senza richieste del Portachiavi.

Per usare la CLI inclusa:

/Applications/IliadBar.app/Contents/MacOS/ibx discover --save
/Applications/IliadBar.app/Contents/MacOS/ibx pair
/Applications/IliadBar.app/Contents/MacOS/ibx status --json

Esegui ibx senza argomenti per l'elenco completo dei comandi.

iOS

La stessa app gira su iPhone e iPad (iOS 17+): TabView con Home, Download, File, Rete e Impostazioni, gli stessi widget connessione/download e gli stessi sorgenti condivisi con macOS. Al primo avvio iOS chiede il permesso per la rete locale: serve per cercare la box con Bonjour.

xcodegen generate
./Scripts/make-ios-app.sh --sim   # build + install + launch sul simulatore

Per un dispositivo fisico o TestFlight serve DEVELOPMENT_TEAM (vedi Development).

Architettura

Target Ruolo
IliadboxKit client API tipizzato, autenticazione, discovery e modelli condivisi
IliadBar app SwiftUI per la barra dei menu e finestre di gestione
IliadBarWidget widget connessione e download, alimentati da snapshot senza segreti
ibx CLI per associazione, ispezione e automazione

La base URL e la versione API vengono negoziate dai metadati Bonjour, con un fallback manuale. Le sessioni sono firmate localmente; nessun dato della box viene inviato a un servizio IliadBar.

Sviluppo e release

swift test
./Scripts/audit-localization.sh
./Scripts/make-app.sh

Consulta Development, Security, Privacy, Troubleshooting e Releasing. La matrice delle capability documenta le differenze tra firmware. Il percorso verso 1.0 e le prove richieste sono in Roadmap.

Stato del progetto

IliadBar è in sviluppo pre-1.0. Le build locali sono firmate ad-hoc; le release pubbliche richiedono Developer ID, notarizzazione e firma EdDSA dell'appcast.

Licenza

MIT

About

Your iliadbox in the macOS menu bar — downloads, files and box stats. 100% native Swift, zero dependencies.

Topics

Resources

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages