feat: MyEasyCMS v2 — Full SaaS rebuild
Some checks failed
Workflow / ⚫️ Test (push) Has been cancelled
Workflow / ʦ TypeScript (push) Has been cancelled

Complete rebuild of 22-year-old PHP CMS as modern SaaS:

Database (15 migrations, 42+ tables):
- Foundation: account_settings, audit_log, GDPR register, cms_files
- Module Engine: modules, fields, records, permissions, relations + RPC
- Members: 45+ field member profiles, departments, roles, honors, SEPA mandates
- Courses: courses, sessions, categories, instructors, locations, attendance
- Bookings: rooms, guests, bookings with availability
- Events: events, registrations, holiday passes
- Finance: SEPA batches/items (pain.008/001 XML), invoices
- Newsletter: campaigns, templates, recipients, subscriptions
- Site Builder: site_pages (Puck JSON), site_settings, cms_posts
- Portal Auth: member_portal_invitations, user linking

Feature Packages (9):
- @kit/module-builder — dynamic low-code CRUD engine
- @kit/member-management — 31 API methods, 21 actions, 8 components
- @kit/course-management, @kit/booking-management, @kit/event-management
- @kit/finance — SEPA XML generator + IBAN validator
- @kit/newsletter — campaigns + dispatch
- @kit/document-generator — PDF/Excel/Word
- @kit/site-builder — Puck visual editor, 15 blocks, public rendering

Pages (60+):
- Dashboard with real stats from all APIs
- Full CRUD for all 8 domains with react-hook-form + Zod
- Recharts statistics
- German i18n throughout
- Member portal with auth + invitation system
- Public club websites via Puck at /club/[slug]

Infrastructure:
- Dockerfile (multi-stage, standalone output)
- docker-compose.yml (Supabase self-hosted + Next.js)
- Kong API gateway config
- .env.production.example
This commit is contained in:
Zaid Marzguioui
2026-03-29 23:17:38 +02:00
parent 61ff48cb73
commit 1294caa7fa
120 changed files with 11013 additions and 1858 deletions

View File

@@ -74,7 +74,8 @@
"finance": "Finanzen",
"documents": "Dokumente",
"newsletter": "Newsletter",
"events": "Veranstaltungen"
"events": "Veranstaltungen",
"siteBuilder": "Website"
},
"roles": {
"owner": {

View File

@@ -41,6 +41,78 @@
"contactError": "Fehler beim Senden Ihrer Nachricht",
"contactSuccessDescription": "Wir haben Ihre Nachricht erhalten und melden uns schnellstmöglich",
"contactErrorDescription": "Beim Senden ist ein Fehler aufgetreten. Bitte versuchen Sie es später erneut",
"footerDescription": "Hier können Sie eine Beschreibung Ihres Unternehmens oder Produkts einfügen",
"copyright": "© Copyright {year} {product}. Alle Rechte vorbehalten."
"footerDescription": "Die All-in-One-Verwaltungsplattform für Vereine, Clubs und Organisationen. Entwickelt von Com.BISS GmbH.",
"copyright": "© Copyright {year} {product}. Alle Rechte vorbehalten.",
"heroPill": "Die nächste Generation der Vereinsverwaltung",
"heroTitle": "Verwalten Sie Ihre Organisation. Einfach und effizient.",
"heroSubtitle": "MyEasyCMS ist die All-in-One-Plattform für Vereine, Clubs und Organisationen. Verwalten Sie Mitglieder, Kurse, Veranstaltungen, Finanzen und mehr — alles an einem Ort.",
"trustedBy": "Vertraut von Vereinen und Clubs in ganz Deutschland",
"trustAssociations": "Vereine",
"trustSchools": "Bildungseinrichtungen",
"trustClubs": "Sport- & Angelvereine",
"trustOrganizations": "Gemeinnützige Organisationen",
"featuresHeading": "Alles, was Ihre Organisation braucht",
"featuresSubheading": "Von der Mitgliederverwaltung bis zur Finanzbuchhaltung — alle Werkzeuge in einer modernen, benutzerfreundlichen Plattform.",
"featuresLabel": "Kernmodule",
"featureMembersTitle": "Mitgliederverwaltung",
"featureMembersDesc": "Verwalten Sie alle Mitglieder mit Abteilungen, Beitragsverfolgung, Mitgliedsausweisen, Anträgen und detaillierten Statistiken.",
"featureCoursesTitle": "Kursverwaltung",
"featureCoursesDesc": "Organisieren Sie Kurse mit Terminplanung, Dozentenzuweisung, Anwesenheitsverfolgung, Kategorien und Standorten.",
"featureBookingsTitle": "Raumbuchungen",
"featureBookingsDesc": "Buchen Sie Räume und Ressourcen mit einem visuellen Kalender, verwalten Sie Gäste und prüfen Sie die Verfügbarkeit.",
"featureEventsTitle": "Veranstaltungsverwaltung",
"featureEventsDesc": "Planen und verwalten Sie Veranstaltungen mit Anmeldungen, Ferienpässen und Teilnehmerverfolgung.",
"featureFinanceTitle": "Finanzen & Abrechnung",
"featureFinanceDesc": "Erstellen Sie Rechnungen, verwalten Sie Zahlungen und SEPA-Lastschrifteinzüge — behalten Sie Ihre Finanzen mühelos im Griff.",
"featureNewsletterTitle": "Newsletter",
"featureNewsletterDesc": "Erstellen und versenden Sie professionelle Newsletter mit Vorlagen. Halten Sie Ihre Mitglieder informiert.",
"showcaseHeading": "Ein leistungsstarkes Dashboard auf einen Blick",
"showcaseDescription": "Erhalten Sie einen vollständigen Überblick über Ihre Organisation mit unserem intuitiven Dashboard. Greifen Sie auf alles zu — Mitglieder, Kurse, Veranstaltungen und Finanzen — von einer zentralen Stelle aus.",
"additionalFeaturesHeading": "Und es gibt noch mehr",
"additionalFeaturesSubheading": "Zusätzliche Werkzeuge, die jeden Aspekt der täglichen Arbeit Ihrer Organisation vereinfachen.",
"additionalFeaturesLabel": "Weitere Funktionen",
"featureDocumentsTitle": "Dokumentenverwaltung",
"featureDocumentsDesc": "Erstellen Sie Dokumente aus Vorlagen, verwalten Sie Dateien und halten Sie alle wichtigen Unterlagen organisiert.",
"featureSiteBuilderTitle": "Website-Baukasten",
"featureSiteBuilderDesc": "Erstellen und verwalten Sie die Website Ihrer Organisation ohne Programmierkenntnisse. Aktualisieren Sie Inhalte ganz einfach.",
"featureModulesTitle": "Individuelle Module",
"featureModulesDesc": "Erweitern Sie die Plattform mit maßgeschneiderten Modulen für Ihre spezifischen Anforderungen. Importieren Sie Daten und passen Sie Einstellungen an.",
"whyChooseHeading": "Warum Organisationen MyEasyCMS wählen",
"whyChooseDescription": "Entwickelt mit über 20 Jahren Erfahrung im Dienste von Vereinen, Clubs und gemeinnützigen Organisationen in ganz Deutschland.",
"whyResponsiveTitle": "Mobilfreundlich",
"whyResponsiveDesc": "Greifen Sie von jedem Gerät auf Ihre Daten zu. Unser responsives Design funktioniert perfekt auf Desktop, Tablet und Smartphone.",
"whySecureTitle": "Sicher & Zuverlässig",
"whySecureDesc": "Ihre Daten sind mit erstklassiger Sicherheit geschützt. Regelmäßige Backups stellen sicher, dass nichts verloren geht.",
"whySupportTitle": "Persönlicher Support",
"whySupportDesc": "Erhalten Sie direkten, persönlichen Support von unserem Team. Wir sprechen Ihre Sprache und verstehen Ihre Bedürfnisse.",
"whyGdprTitle": "DSGVO-konform",
"whyGdprDesc": "Vollständig konform mit der europäischen Datenschutz-Grundverordnung. Die Daten Ihrer Mitglieder werden sorgfältig behandelt.",
"howItWorksHeading": "In drei einfachen Schritten loslegen",
"howItWorksSubheading": "Die Einrichtung Ihrer Organisation auf MyEasyCMS dauert nur wenige Minuten.",
"howStep1Title": "Konto erstellen",
"howStep1Desc": "Registrieren Sie sich kostenlos und richten Sie Ihr Organisationsprofil ein. Keine Kreditkarte erforderlich.",
"howStep2Title": "Module konfigurieren",
"howStep2Desc": "Aktivieren Sie die benötigten Module — Mitglieder, Kurse, Veranstaltungen, Finanzen — und passen Sie diese an Ihren Workflow an.",
"howStep3Title": "Team einladen",
"howStep3Desc": "Fügen Sie Teammitglieder mit verschiedenen Rollen und Berechtigungen hinzu. Verwalten Sie Ihre Organisation gemeinsam.",
"pricingPillLabel": "Kostenlos starten",
"pricingPillText": "Keine Kreditkarte erforderlich.",
"pricingHeading": "Faire Preise für alle Arten von Organisationen",
"pricingSubheading": "Starten Sie mit unserem kostenlosen Tarif und upgraden Sie, wenn Sie bereit sind.",
"ctaHeading": "Bereit, die Verwaltung Ihrer Organisation zu vereinfachen?",
"ctaDescription": "Schließen Sie sich hunderten von Vereinen, Clubs und Organisationen an, die MyEasyCMS bereits nutzen.",
"ctaButtonPrimary": "Jetzt kostenlos starten",
"ctaButtonSecondary": "Kontakt aufnehmen",
"ctaNote": "Keine Kreditkarte erforderlich. Kostenloser Tarif verfügbar."
}

View File

@@ -72,6 +72,7 @@
"courses": "Courses",
"bookings": "Bookings",
"events": "Events",
"siteBuilder": "Website",
"finance": "Finance",
"documents": "Documents",
"newsletter": "Newsletter"

View File

@@ -41,6 +41,78 @@
"contactError": "An error occurred while sending your message",
"contactSuccessDescription": "We have received your message and will get back to you as soon as possible",
"contactErrorDescription": "An error occurred while sending your message. Please try again later",
"footerDescription": "Here you can add a description about your company or product",
"copyright": "© Copyright {year} {product}. All Rights Reserved."
"footerDescription": "The all-in-one management platform for associations, clubs, and organizations. Built by Com.BISS GmbH.",
"copyright": "© Copyright {year} {product}. All Rights Reserved.",
"heroPill": "The next generation of association management",
"heroTitle": "Manage your organization. Simply and efficiently.",
"heroSubtitle": "MyEasyCMS is the all-in-one platform for associations, clubs, and organizations. Manage members, courses, events, finances, and more — all from one place.",
"trustedBy": "Trusted by associations and clubs across Germany",
"trustAssociations": "Associations",
"trustSchools": "Educational Institutions",
"trustClubs": "Sports & Fishing Clubs",
"trustOrganizations": "Non-Profit Organizations",
"featuresHeading": "Everything your organization needs",
"featuresSubheading": "From member management to finance — all the tools you need in one modern, easy-to-use platform.",
"featuresLabel": "Core Modules",
"featureMembersTitle": "Member Management",
"featureMembersDesc": "Manage all your members with departments, dues tracking, membership cards, applications, and detailed statistics.",
"featureCoursesTitle": "Course Management",
"featureCoursesDesc": "Organize courses with scheduling, instructor assignment, attendance tracking, categories, and locations.",
"featureBookingsTitle": "Room Bookings",
"featureBookingsDesc": "Book rooms and resources with a visual calendar, manage guests, and track availability at a glance.",
"featureEventsTitle": "Event Management",
"featureEventsDesc": "Plan and manage events with registrations, holiday passes, and participant tracking.",
"featureFinanceTitle": "Finance & Billing",
"featureFinanceDesc": "Handle invoices, payments, and SEPA direct debit collections — keep your finances organized effortlessly.",
"featureNewsletterTitle": "Newsletter",
"featureNewsletterDesc": "Create and send professional newsletters with templates. Keep your members informed and engaged.",
"showcaseHeading": "A powerful dashboard at your fingertips",
"showcaseDescription": "Get a complete overview of your organization with our intuitive dashboard. Access everything you need — members, courses, events, and finances — from one central hub.",
"additionalFeaturesHeading": "And there's more",
"additionalFeaturesSubheading": "Additional tools to streamline every aspect of your organization's daily work.",
"additionalFeaturesLabel": "More Features",
"featureDocumentsTitle": "Document Management",
"featureDocumentsDesc": "Generate documents from templates, manage files, and keep all your important documents organized.",
"featureSiteBuilderTitle": "Website Builder",
"featureSiteBuilderDesc": "Create and manage your organization's website without any programming knowledge. Update content with ease.",
"featureModulesTitle": "Custom Modules",
"featureModulesDesc": "Extend the platform with custom modules tailored to your specific needs. Import data and configure settings.",
"whyChooseHeading": "Why organizations choose MyEasyCMS",
"whyChooseDescription": "Built with over 20 years of experience serving associations, clubs, and non-profit organizations across Germany.",
"whyResponsiveTitle": "Mobile-Friendly",
"whyResponsiveDesc": "Access your data from any device. Our responsive design works perfectly on desktop, tablet, and smartphone.",
"whySecureTitle": "Secure & Reliable",
"whySecureDesc": "Your data is protected with enterprise-grade security. Regular backups ensure nothing is ever lost.",
"whySupportTitle": "Personal Support",
"whySupportDesc": "Get direct, personal support from our team. We speak your language and understand your needs.",
"whyGdprTitle": "GDPR Compliant",
"whyGdprDesc": "Fully compliant with European data protection regulations. Your members' data is handled with care.",
"howItWorksHeading": "Get started in three easy steps",
"howItWorksSubheading": "Setting up your organization on MyEasyCMS takes just minutes.",
"howStep1Title": "Create your account",
"howStep1Desc": "Sign up for free and set up your organization profile. No credit card required to get started.",
"howStep2Title": "Configure your modules",
"howStep2Desc": "Activate the modules you need — members, courses, events, finance — and customize them to fit your workflow.",
"howStep3Title": "Invite your team",
"howStep3Desc": "Add team members with different roles and permissions. Start managing your organization collaboratively.",
"pricingPillLabel": "Start for free",
"pricingPillText": "No credit card required.",
"pricingHeading": "Fair pricing for all types of organizations",
"pricingSubheading": "Get started on our free plan and upgrade when you are ready.",
"ctaHeading": "Ready to simplify your organization's management?",
"ctaDescription": "Join hundreds of associations, clubs, and organizations who already use MyEasyCMS to streamline their work.",
"ctaButtonPrimary": "Get Started for Free",
"ctaButtonSecondary": "Contact Us",
"ctaNote": "No credit card required. Free plan available."
}