Modern, responsive website for the Enterprise Knowledge Graph Foundation (EKGF), built with Next.js 15, TypeScript, and Tailwind CSS.
This is the main landing page and portal for EKGF, serving as the central hub linking to all documentation sites:
- Method: method.ekgf.org - Use Case Tree Method
- Catalog: Client 360 - EKG Catalog
- Maturity: maturity.ekgf.org - Maturity Model
- Principles: Principles - Principles & Manifesto
- DPROD: ekgf.github.io/dprod - Data Product Ontology
- ✨ Modern Stack: Next.js 15 with App Router, React 19, TypeScript
- 🎨 Beautiful UI: Tailwind CSS v4 + shadcn/ui components
- 🌓 Dark Mode: System-aware theme with manual toggle
- 📱 Responsive: Mobile-first design
- ♿ Accessible: WCAG 2.1 compliant
- 🚀 Fast: Optimized for performance
- 📊 Analytics: Google Analytics integration
- 📧 Contact Form: Server Actions for form handling
- 🔍 SEO: Comprehensive metadata and sitemap
- 🎯 EKGF Branding: Custom color scheme matching existing docs
The website showcases five main activities of EKGF:
Comprehensive methodology for EKG development through use case trees and structured implementation.
Browse the catalog of EKG components, patterns, and best practices for building knowledge graphs.
Assessment framework for evaluating and improving EKG implementations.
Core principles for Enterprise Knowledge Graphs, guiding strategic implementation.
OMG standard for describing Data Products using W3C technologies. DPROD enables:
- Decentralized data architectures (Data Mesh)
- Standardized metadata across platforms
- Input/output port definitions with DCAT Data Services
- Integration with ODRL (rights), PROV (lineage), and DQV (quality)
DPROD is built on W3C technologies (DCAT, RDF, OWL, SHACL, PROV) and
is standardized by the Object Management Group (OMG). The DPROD page
(/dprod) provides an overview before linking to the full
specification at https://ekgf.github.io/dprod/.
- Next.js 15 - Latest stable, App Router
- TypeScript 5 - Type safety
- React 19 - UI library
- Tailwind CSS 4 - Utility-first CSS
- shadcn/ui - Component library
- Lucide React - Icon library
- next-themes - Dark mode support
- Zod - Schema validation
- React Server Actions - Form handling
- @next/third-parties - Google Analytics
- Next.js Metadata API - SEO optimization
- ESLint - Code linting
- Prettier - Code formatting
- Husky - Git hooks
- Commitlint - Commit message linting
- Node.js 24
- pnpm 10+
# Install dependencies
pnpm install
# Run development server
pnpm dev
# Open browser
open http://localhost:3000# Start dev server
pnpm dev
# Build for production
pnpm build
# Start production server
pnpm start
# Run linter
pnpm lint
# Format code
pnpm format
# Check formatting
pnpm format:checkekgf-website/
├── src/
│ ├── app/ # Next.js App Router
│ │ ├── about/ # About page
│ │ ├── contact/ # Contact page
│ │ ├── resources/ # Resources page
│ │ ├── dprod/ # DPROD explanation page
│ │ ├── method/ # Method redirect
│ │ ├── catalog/ # Catalog redirect
│ │ ├── maturity/ # Maturity redirect
│ │ ├── principles/ # Principles redirect
│ │ ├── actions/ # Server Actions
│ │ ├── layout.tsx # Root layout
│ │ ├── page.tsx # Home page
│ │ ├── globals.css # Global styles
│ │ ├── sitemap.ts # Sitemap generation
│ │ └── robots.ts # Robots.txt generation
│ ├── components/ # React components
│ │ ├── ui/ # shadcn/ui components
│ │ ├── Header.tsx # Site header
│ │ ├── Footer.tsx # Site footer
│ │ ├── Hero.tsx # Hero section
│ │ ├── DocumentationGrid.tsx
│ │ ├── ContactForm.tsx
│ │ └── theme-provider.tsx
│ └── lib/ # Utilities
│ └── utils.ts # Helper functions
├── public/ # Static assets
│ └── ekgf-logo-*.svg # Logos
├── .github/ # GitHub workflows
├── DEPLOYMENT.md # Deployment guide
├── vercel.json # Vercel configuration
└── package.json
The site uses EKGF's brand colors:
- Primary:
#4051b5(Indigo) - Main brand color - Primary Light:
#5c6bc0- Lighter variant for dark mode - Primary Dark:
#303f9f- Darker variant - Accent:
#ff6f00- Orange accent - Accent Light:
#ff9800- Lighter orange - Accent Dark:
#e65100- Darker orange
These match the colors used in the existing MkDocs documentation sites.
- Sans Serif: Roboto (300, 400, 500, 700 weights)
- Monospace: Roboto Mono
See DEPLOYMENT.md for detailed deployment instructions.
- Push code to GitHub
- Import project in Vercel
- Deploy automatically
- Configure custom domain
See .env.example for all available environment variables.
Optional variables:
RESEND_API_KEY- For email functionality (contact form)NEXT_PUBLIC_SITE_URL- Site URL for metadata
The contact form uses Next.js Server Actions for form handling. Email
integration with Resend is prepared but
commented out in /src/app/actions/contact.ts.
To enable email sending:
- Sign up for Resend
- Add and verify domain
- Add
RESEND_API_KEYto environment variables - Uncomment Resend code in
contact.ts - Install Resend:
pnpm add resend
The site includes:
- Comprehensive meta tags
- Open Graph tags for social sharing
- Twitter Card tags
- Google Analytics (G-9LCW4TSSRP)
- Sitemap at
/sitemap.xml - Robots.txt at
/robots.txt - Google Search Console verification
Copyright (c) 2026 EDMCouncil Inc., d/b/a Enterprise Data Management Association ("EDMA")
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
When using or sharing this content, please provide attribution to:
- EDMCouncil Inc., d/b/a Enterprise Data Management Association ("EDMA")
This project is a partnership between:
- Enterprise Knowledge Graph Forum (EKGF) - an initiative of the Object Management Group (OMG)
- Object Management Group (OMG) - now part of EDMCouncil Inc., d/b/a Enterprise Data Management Association ("EDMA")
- Documentation: Check the
/docsfolder - Issues: GitHub Issues
- Contact: Use the contact form on the website
See CONTRIBUTING.md for contribution guidelines.