Releases: NexaFlowFrance/OpenFamily
Release list
v1.4.0
Full Changelog: v1.3.0...v1.4.0
v1.3.0
What's Changed
- build(deps-dev): bump shell-quote from 1.8.3 to 1.8.4 by @dependabot[bot] in #56
- build(deps): bump esbuild from 0.28.0 to 0.28.1 in /server by @dependabot[bot] in #58
- build(deps): bump ws from 8.20.1 to 8.21.0 by @dependabot[bot] in #61
Full Changelog: v1.2.0...v1.3.0
What's Changed
- build(deps-dev): bump shell-quote from 1.8.3 to 1.8.4 by @dependabot[bot] in #56
- build(deps): bump esbuild from 0.28.0 to 0.28.1 in /server by @dependabot[bot] in #58
- build(deps): bump ws from 8.20.1 to 8.21.0 by @dependabot[bot] in #61
Full Changelog: v1.2.0...v1.3.0
v1.2.0
Full Changelog: v1.1.1...v1.2.0
Full Changelog: v1.1.1...v1.2.0
v1.1.1
Le premier squelette de l'application a ete pose par NexaFlow.
Le second cycle de travail a ete conduit par le contributeur caludeayi.
Cette troisieme mouture a ete refaite par NexaFlow, recentrant
OpenFamily sur ce qu'elle est : une application familiale, pas un tableau de bord
d'entreprise. Le design a ete repense de zero pour etre plus chaleureux, plus
lisible, et plus coherent avec l'identite visuelle du logo.
Refonte visuelle complete
- Palette extraite du logo : corail (#DC4A60), peach, plum-black pour le mode sombre
- Typographie editoriale : Fraunces (titres) + Instrument Sans (corps)
- Cartes plates sans degrades, rayons reduits, ombres quasi nulles
- Toutes les couleurs arc-en-ciel remplacees par les tokens du design system
- Mode sombre fonctionnel avec toggle sur toutes les pages, y compris la connexion
- PWA : cache versionne pour forcer le rechargement apres mise a jour
Corrections fonctionnelles
- Budget : ajout et modification de depenses et revenus maintenant operationnels
- Dashboard : redesign editorial avec agenda du jour et acces rapides
- Taches, Login, Planning : harmonises avec le nouveau design system
Integrations tierces (nouvelle fonctionnalite)
Synchronisation avec les applications auto-hebergees les plus populaires,
sans aucune configuration manuelle dans les fichiers de configuration.
Connexion via un formulaire en un clic, credentials chiffres AES-256 cote serveur.
- Mealie : import de toutes les recettes (pagination automatique, v1 et v2)
- Tandoor : import de recettes via l'API Django REST
- Home Assistant : sync liste de courses, compatible integration legacy et
todo entities modernes (2023.6+) via WebSocket avec fallback automatique - Grocy : sync liste de courses et stock
- Nextcloud : import calendrier CalDAV avec decouverte automatique des
agendas, deduplication par UID CalDAV, support du line folding ICS
Idee des integrations : merci a Makernix pour avoir mis en lumiere le potentiel
de connecter OpenFamily aux outils du self-hosting familial.
OpenFamily v1.1
OpenFamily v1.1
Nouveautes
- ?? Installeur Windows tout-en-un (Node.js + PostgreSQL embarques, aucune configuration)
- ??? Photos de profil de bout en bout
- ?? Notifications cliquables qui redirigent vers la page concernee
- ?? Export iCal du calendrier
- ?? Devise du foyer configurable (ISO 4217)
- ?? Corrections de la navigation mobile
Telechargement
Telechargez OpenFamily-Setup.exe ci-dessous et double-cliquez pour installer.
v1.0.7 - Real-time sync, push notifications, multi-member accounts and security
What's new in v1.0.7
Features
Partie 1 - Real-time WebSocket sync
All 9 pages update live across all connected devices without refreshing.
Partie 2 - Push notifications
- Appointment reminders 30 min and 1 hour before events
- Web Push (VAPID) with custom service worker
- In-app notification bell with unread count badge and dropdown
- Subscribe/unsubscribe from Settings
Partie 3 - Multi-member family accounts
- Family owners generate a shareable invite link (/join?invite=TOKEN, valid 7 days)
- New users register with invite token and automatically join the family
- Existing users can join via the /join page
- JWT carries userId + ownerId so all data queries scope to the family owner transparently
- Family page shows shared accounts, invite link generator, kick/leave actions
Security fixes
- Critical: SQL injection in dataTransfer.ts - column names validated against SAFE_IDENTIFIER regex
- High: WebSocket auth bypass fixed - client sends JWT, server verifies (closes 4001 on failure)
- Medium: Missing HTTP security headers - added helmet() (CSP, X-Frame-Options, HSTS, etc.)
- Medium: No request size limit - express.json() capped at 1 MB (DoS protection)
- Low: bcrypt cost factor raised from 10 to 12 (OWASP recommendation)
- Low: Silent DB password fallback replaced with explicit warning log
Infrastructure
- Proxmox LXC install script (scripts/proxmox-lxc-install.sh)
- Update script (scripts/update.sh)
- DB migration 002: family_owner_id column + family_invites table (auto-applied on startup)
v1.0.6
Fix #43 – Planning INTERNAL SERVER ERROR for existing installations
Problem: Users who upgraded from an earlier version were missing the location and specific_date columns on the schedule_entries table, causing an Internal Server Error on the planning page. The CHECK(end_time > start_time) constraint also blocked cross-midnight schedules.
Fix: The server now automatically runs idempotent migrations at startup:
ALTER TABLE schedule_entries DROP CONSTRAINT IF EXISTS schedule_entries_checkALTER TABLE schedule_entries ADD COLUMN IF NOT EXISTS specific_date DATEALTER TABLE schedule_entries ADD COLUMN IF NOT EXISTS location TEXT
Upgrade: Simply pull the latest image and restart - no manual SQL needed.
v1.0.4 - PWA Icons, Meal Plan Fix & CI/CD
What's Changed
Bug Fixes
- Favicon & PWA icons: Restored OpenFamily icons everywhere (favicon, PWA manifest, apple-touch-icon)
- Meal plan timezone bug: Fixed dates shifting by 1 day due to PostgreSQL DATE to JS Date UTC conversion. Uses string comparison now for reliable matching
- Meal form reset: Form fields now properly reset when opening a new meal slot
- Dark mode: Added dark mode gradient colors for meal planning grid cells
New Features
- GitHub Actions CI: Automated build validation on every push and PR
- GitHub Actions Docker Publish: Automated Docker image build and push to ghcr.io on tag push
Docker Images
- \\ghcr.io/nexaflowfrance/openfamily-client:1.0.4\\
- \\ghcr.io/nexaflowfrance/openfamily-server:1.0.4\\
Closes
Full Changelog: v1.0.3...v1.0.4
Release v1.0.3
OpenFamily v1.0.3 - Correction Installation Docker
🐛 Corrections Critiques
Problème d'authentification PostgreSQL résolu
- Correction : Suppression de l'auto-connexion dans
server/db.tsqui utilisait une DATABASE_URL incorrecte - Impact : L'installation Docker fonctionne maintenant du premier coup sans erreur d'authentification
- Cause : Le module
db.tsse connectait automatiquement avant que la variable d'environnement DATABASE_URL soit définie par le script de démarrage
Améliorations des messages d'erreur
- Messages d'erreur plus clairs distinguant Docker et développement local
- Correction du message suggérant
psql -U postgres(maintenantpsql -U openfamily) - Meilleure indication sur les étapes de dépannage
📦 Installation
Installation en une commande (Docker)
mkdir openfamily && cd openfamily
curl -O https://raw.githubusercontent.com/NexaFlowFrance/OpenFamily/main/docker-compose.yml
docker compose up -dL'application sera disponible sur http://localhost:3000
Fonctionnalités automatiques
- ✅ Génération automatique d'un mot de passe sécurisé PostgreSQL
- ✅ Téléchargement et application automatique du schéma de base de données
- ✅ Vérification de l'intégrité de la configuration
- ✅ Démarrage coordonné de tous les services
🔧 Changements Techniques
Fichiers modifiés
server/db.ts: Désactivation de l'auto-connexion au chargement du moduleserver/index.ts: Messages d'erreur améliorés avec contexte Docker/localdocker-compose.yml: Service postgres attend maintenant le service init
Architecture
- Le pool de connexion principal dans
index.tsutilise correctement DATABASE_URL - Le mot de passe PostgreSQL est généré une seule fois au premier démarrage
- Les services s'initialisent dans l'ordre correct : init → postgres → schema → app
📝 Notes de mise à jour
Si vous aviez une version précédente installée :
cd openfamily
docker compose down -v # Supprime les volumes pour réinitialiser
curl -O https://raw.githubusercontent.com/NexaFlowFrance/OpenFamily/main/docker-compose.yml
docker compose up -d🙏 Remerciements
Merci aux utilisateurs qui ont signalé les problèmes d'installation Docker. (@2kPi)
Release v1.0.2
Bug Fixes
Critical Issues Resolved
-
Fixed UI completely blocked when editing health information (#19)
- Changed health input fields from onChange to onBlur pattern
- Prevents API spam causing infinite WebSocket notification loop
- Users can now type freely without UI freezing
-
Fixed appointment time parsing errors crashing calendar (#21)
- Added HH:mm format validation in time inputs
- Secured parseInt operations with fallback values
- Calendar now renders correctly without NaN errors
Server Improvements
- Transform flat health properties to JSONB structure properly
- Server merges health_info updates instead of replacing entire object
- Added validation for required member name/color fields
Enhancements
- Updated version display to 1.0.2
- Improved Docker build configuration
- Better error handling in member updates
Installation
Docker (Recommended)
\\�ash
docker compose down
docker compose pull
docker compose up -d
\\
Manual
\\�ash
git pull
pnpm install
pnpm dev
\\
Links
- Full Changelog: v1.0.1...v1.0.2
- Issues: #19, #21