Dit document beschrijft de installatie, configuratie en het gebruik van de Interactieve Levensloop Tijdlijn applicatie.
Het doel van deze tool is om op een visuele en interactieve manier een levensloop in kaart te brengen, waarbij de impact van gebeurtenissen (zowel positief als moeilijk) wordt gevisualiseerd.
De applicatie bestaat uit vier kerndelen:
- Een Invoerpagina (
gebeurtenissen.php): Een centraal punt voor het invoeren van data via diverse bronnen (tekst, beeld, audio, documenten, banktransacties). Elke gebeurtenis heeft een datum, titel, omschrijving en een "impactscore" (-10 tot +10). - Een Visualisatiepagina (
index.php): Een interactieve tijdlijn die alle ingevoerde punten toont.- Positieve punten staan boven de nullijn, negatieve eronder.
- De grafiek berekent een "netto gemiddelde trendlijn".
- Klik op een punt om de volledige details (inclusief media) te zien.
- Timesheet & Dashboard: Inzicht in productiviteit en tijdsbesteding.
- Verbanden leggen: Verbind gebeurtenissen visueel met elkaar om oorzaak-gevolg relaties te tonen.
Versie 2.25 introduceert diepgaande financiële integratie en productiviteitsinzichten.
- 💶 Geld Module (Bunq): Koppel je bankrekening om transacties direct om te zetten in tijdlijn-events. Inclusief zoekfuncties en het slim samenvoegen van betalingen.
- ⏱️ Timesheet Dashboard: Monitor je gewerkte uren, focus-tijd vs. administratie, en je voortgang richting jaardoelen (urencriterium).
- 🔒 Volledige Encryptie: Gevoelige data (namen, titels, details, banktransacties) wordt versleuteld (AES-256) opgeslagen.
- 🎙️ Audio Module: Upload audio-opnames; AI transcribeert ze en maakt er gebeurtenissen van.
- 🛡️ Secure Media: Een digitale kluis voor gevoelige bestanden.
De applicatie is ontworpen met privacy als uitgangspunt ("Privacy by Design").
- Multi-User: Iedere gebruiker heeft een eigen, afgeschermde omgeving.
- Encryptie: Persoonlijke data is onleesbaar in de database zonder de unieke encryptiesleutel in
config.php. - Audit Logging: Belangrijke acties (inloggen, data-toegang, imports) worden gelogd.
- Secure Storage: Gevoelige media en API-configs worden buiten de publieke web-map opgeslagen.
- Backend: PHP 8.4+
- Database: MySQL / MariaDB (met AES-256-GCM data at rest)
- Frontend: HTML5, Tailwind CSS, Chart.js
- Integraties:
- Google Gemini API: AI-analyse van tekst, beeld en audio.
- Bunq API: Real-time banktransacties.
- Dependencies: Beheerd via Composer (
bunq/sdk_php,smalot/pdfparser,phpoffice/phpword).
- Webserver (Apache/Nginx) met PHP 8.1+ (8.4 aanbevolen).
- MySQL/MariaDB.
- Composer.
- Schrijfrechten op
uploads/,docs/,storage/enaudio/.
Gebruik installer.sh (Ubuntu) voor een snelle setup.
- Config: Kopieer
config.example.phpnaarconfig.php. - Database & Keys: Vul DB-gegevens, Gemini API Key en genereer een
ENCRYPTION_KEY(php generate_key.php). - Bunq (Optioneel): Vul
BUNQ_API_KEYenBUNQ_ENVIRONMENTin. - Installatie:
- Importeer
levensloop.sql. - Draai
composer install. - Draai
php run_migration_security.php.
- Importeer
Beheer je financiële historie direct in je tijdlijn.
- Connect: Verbind veilig via API Key. Sessie-tokens worden versleuteld opgeslagen.
- Filter: Zoek op datum, rekening, bedrag of omschrijving.
- Merge: Selecteer meerdere transacties (bv. "Vakantie Italië") en voeg ze samen tot één event met totaalbedrag en specificatie.
Houdt je productiviteit bij op basis van activiteitslogs (rt_history).
- Doelen: Voortgangsbalk voor het urencriterium (1225u).
- Analyse: Grafieken voor maandelijkse uren en verhouding Focus/Admin werk.
src/BunqService.php: Handelt beveiligde communicatie met de Bunq API af.src/SecurityService.php: Encryptie, CSRF, en Audit logs.dashboard_module.php: Timesheet visualisaties.gebeurtenissen.php: Hoofdcontroller voor invoer en API-logica.
Zie het LICENSE bestand. Ontwikkeld door PCPal.