Reviewed-on: #97
Fociz — Focus, Dagplanning, Brainstorm & Roadmap Systeem
Fociz is een compleet, modern webplatform gebouwd in PHP 8 & MariaDB voor dagplanning, werkstructurering, interactieve brainstormsessies die met één klik omgezet kunnen worden in een roadmap, en koppelingen met Outlook, Teams en Jira.
🔒 Beveiliging & Toegangsbeheer
- Strikt afgesloten: Geen openbare registratie. Enkel toegankelijk na inloggen met tweetrapsauthenticatie (2FA).
- First-run Admin Setup (
/auth/setup.php):- Bij het allereerste gebruik detecteert Fociz automatisch dat er nog geen beheerder bestaat en start de setup wizard.
- De beheerder voert naam, e-mail en wachtwoord in en scant de 2FA QR-code met bijv. Google Authenticator, Microsoft Authenticator of 1Password.
- Na verificatie van de 6-cijferige code wordt de beheerder opgeslagen en wordt
/auth/setup.phpdefinitief vergrendeld.
- Invite-only Registratie (
/auth/invite.php?token=...):- Nieuwe collega's kunnen enkel toetreden met een unieke uitnodigingslink aangemaakt door de beheerder (
/users.php). - Dwingt direct het instellen van een wachtwoord en 2FA-registratie af.
- Nieuwe collega's kunnen enkel toetreden met een unieke uitnodigingslink aangemaakt door de beheerder (
- Inloggen (
/auth/login.php):- Stap 1: E-mailadres & wachtwoord (
password_hash/password_verify). - Stap 2: 6-cijferige TOTP verificatiecode (of herstelcode).
- Stap 1: E-mailadres & wachtwoord (
🚦 Omgevingsindicator (Dev vs Live)
In de linkerbovenhoek van elk scherm bevindt zich een opvallende flashy badge met live radar-ping animatie:
- Development (Rood): Knippert rood met de tekst
DEVELOPMENT (DEV)zodat u direct ziet dat u op de test/dev omgeving werkt. - Live (Groen): Knippert groen met de tekst
LIVE (MAIN)voor de productie-omgeving.
Hoe in te stellen per omgeving:
In het bestand includes/env_badge.php:
- Op DEV:
$environment = 'development';(staat standaard al zo ingesteld) - Op MAIN / LIVE:
$environment = 'live';(of zetAPP_ENV="live"in.env)
🚀 Kernmodules
-
Dagplanning & Focus (
/planner.php):- Dagdoel: Leg uw nummer 1 focuspunt van de dag vast met één klik.
- Focus Modus: Ingebouwde Pomodoro/Stopwatch timer (25 min Focus, 50 min Deep Work, 5 min Pauze) met visuele voortgang en taakselectie.
- Dagtaken & Prioriteiten: Taken indelen op prioriteit (P1 Brandend, P2 Belangrijk, P3 Regulier), snel toevoegen en afvinken.
- Tijdlijn & Time-blocking: Uuroverzicht (08:00 - 18:00) met time-blocking voor taken en gesynchroniseerde Outlook meetings.
- Dagnotities: Snel kladblok voor reflecties en memo's.
-
Brainstorm Canvas (
/brainstorm.php&/brainstorm_canvas.php):- Interactief whiteboard met sticky notes ingedeeld in 4 categorieën:
- 💡 Ideeën & Concepten
- ⚠️ Knelpunten & Uitdagingen
- 🚀 Oplossingen & Features
- ⚡ Quick Wins
- Stemmen (upvoting) op ideeën.
- Zet om naar Roadmap: Selecteer brainstormkaarten en zet ze direct om naar planbare roadmap-items met kwartaal, deadline en prioriteit.
- Interactief whiteboard met sticky notes ingedeeld in 4 categorieën:
-
Roadmap & Tijdlijn (
/roadmap.php):- Kwartaaloverzicht (Q1, Q2, Q3, Q4) en statussen (Gepland, In Uitvoering, In Review, Voltooid).
- Voortgangsbalken (0 - 100%) en deadlines.
- Gekoppeld aan de oorspronkelijke brainstormkaarten en optioneel Jira Issue Keys (bijv.
FOC-101).
-
Mijn Profiel & Persoonlijke Koppelingen (
/profile.php):- Microsoft Outlook & Teams: Koppel met 1 klik uw persoonlijke werkagenda voor dagelijkse afsprakensynchronisatie en directe Teams meeting links.
- Atlassian Jira: Koppel uw persoonlijke Atlassian API token om aan u toegewezen tickets in te zien en in te plannen.
- Browser Push Meldingen: Configureer persoonlijke waarschuwingen (vooraankondigingstijd, herhalingsfrequentie, audio chime en live test).
- Account & Beveiliging: Wachtwoord wijzigen en 2FA beveiligingsstatus.
-
Systeembeheer & Integraties Portaal (
/admin.php- Admin only):- Centrale Microsoft 365 Azure App Registratie (Client ID, Client Secret, Tenant ID, Admin Consent verlenen).
- Standaard Jira bedrijfsdomein voor alle teamleden.
- Systeem & Team Monitor (statistieken over actieve leden, agenda koppelingen en API-status).
- Extensibiliteit Hub voor toekomstige modules (AI Co-Pilot, werkdag standaarden).
-
Team & Invites Beheer (
/users.php- Admin only):- Genereer beveiligde uitnodigingslinks voor collega's met kopieerknop.
- Overzicht van actieve gebruikers, rollen en 2FA-status.
🛠️ Installatie op uw Server
1. Bestanden uploaden
Push of upload alle bestanden naar de gewenste webdirectory op uw server (bijv. /var/www/fociz of public_html).
2. MariaDB Database configureren
Pas de databasegegevens aan in .env (of direct in config/config.php):
DB_HOST="127.0.0.1"
DB_PORT="3306"
DB_NAME="fociz"
DB_USER="uw_mariadb_gebruiker"
DB_PASS="uw_mariadb_wachtwoord"
APP_URL="https://fociz.nl"
3. Automatische Tabellen Aanmaak
U hoeft niet handmatig SQL-commando's uit te voeren: zodra u de website voor het eerst opent in uw browser, detecteert Fociz automatisch MariaDB en worden alle tabellen en relaties uit config/schema.sql vanzelf aangemaakt!
(Optioneel kunt u config/schema.sql ook zelf importeren via phpMyAdmin of de MariaDB CLI).
4. Eerste Beheerder Instellen
- Open uw browser en ga naar
https://fociz.nl(ofhttps://dev.fociz.nl). - U wordt automatisch doorverwezen naar
/auth/setup.php. - Vul uw naam, e-mailadres en gewenst wachtwoord in.
- Scan de QR-code met Google Authenticator of Microsoft Authenticator.
- Vul de 6-cijferige code in om te bevestigen.
- Klaar! U kunt nu direct inloggen en collega's uitnodigen.