All checks were successful
Deploy / deploy (push) Successful in 1m8s
Papa-Kind-Treff
Updated: 2026-08-10
Papa-Kind-Treff is a PHP-based platform for fathers focused on local events, appointments, and meetups, community exchange, and a protected member area.
Scope
- discover local events, appointments, and meetups
- community/forum with categories, boards, threads, and replies
- member area for profile, optional child information, and own events
- community moderation with a role model
Current State
- landing page with hero, event search, event carousel, community preview, and member-area block
- community with board navigation and separate thread view
- community admin area for applications, reports, roles, and migrations
- location-based ordering for the newest events
- member area with left-side section navigation
- top-right profile menu with
Profileand, for authorized users,Admin Settings - profile area for personal information, children, own events, own places and event-style entries, settings, and community information
- separate admin area for profile levels, categories, system settings, and moderation and approvals for places and event-style entries
- Admin subsections stay inside the same dashboard layout: approvals only show not-yet-published places and event-style entries, community moderation only shows open applications and reports, User Management contains roles and system levels, and System contains the community migration.
- account emails and sensitive profile fields are stored encrypted application-side
- children can be created, edited, and deleted
- profile address supports encrypted street/house number, address search, browser import, and validation
- system section for site admins with maintenance and service toggles
- new data foundation prepared for a broader event, place, and listing system
- member area
Eventsis now limited again to real own events and event participations - own events now support an optional description, explicit child suitability, optional capacity, an optional image, and either a database-backed location or a custom address
- when an own event uses a database-backed location, address and category are shown as informational values and are not edited directly inside the event
- when a user creates a new place or event-style listing from inside an own event, the flow returns to that event afterwards and preselects the newly created entry
- places and other event-style entries were moved for now into a separate member-area section
Places & Events - new places and event-style entries must be approved by an admin before publication; change and deletion wishes also run as reasoned requests
- not-yet-published place and event-style suggestions can be edited directly in the member area
SiteOwnerfully inherits the place and event approval rights fromForum Admin- the member-area entry forms now follow a progressive approach: required fields first, optional data inside collapsible sections
- categories now use a search input with existing suggestions; new categories are created automatically and can be merged by site admins in the system area
- the
Eventsarea now also includes an ICS download and a personal subscribable calendar feed for all own events and event participations
Core Wording Rule
- Primary product term:
Events - Secondary SEO/explanatory terms:
Appointments,Meetups
Tech
- entry point:
public/index.php - templates:
partials/ - application logic:
src/App/ - assets:
public/assets/ - database schema:
Internal/db/schema.sql - new base classes:
src/App/SystemSettings.php,src/App/ListingCatalog.php
Privacy and Security
- Server secrets can be loaded locally through
config/secrets.local.phpoutside the webroot; the file is not versioned and is not deleted by deployments. - password hashes via Argon2id
- account emails are encrypted and additionally addressed through a separate HMAC lookup hash
- personal calendar-feed tokens are stored encrypted and additionally resolved through a separate SHA-256 lookup hash
- profile fields such as first name, last name, street/house number, phone number, profession, languages, and short bio are encrypted
- location coordinates (
lat,lng) remain plaintext where technically required for distance and radius search - non-essential analytics and third-party services are only active after consent
Documentation Rule
Whenever project behavior or structure changes, review and update:
Internal/de/README.mdInternal/de/PROJECT_CONTEXT.mdInternal/de/PROJECT_STRUCTURE.md- matching English files under
Internal/en/
Parallel DE / EN Maintenance
- Documentation in
Internal/de/andInternal/en/must remain fully parallel in content. - German and English are both binding internal references.
- The root
README.mdremains the fixed start document for new chats and must be reviewed when core project assumptions change.
Root Rule
- In the root directory, only
README.mdremains as the content entry point for new chats. - Former root documentation files were moved to
Internal/archive/legacy-root-files/.