knowledge-base
knowledge-base is the workspace's knowledge management system — successor to the retired _pkos/ workspace, consolidated into a named repo on 2026-04-03. Hosted at alawein/knowledge-base and served from kb.meshal.ai (CNAME via Cloudflare DNS-only; fallback knowledge-base-alawein.vercel.app).
Structure
| Directory | Purpose |
|-----------|---------|
| app/ | Next.js 16 dashboard (browse, search, config drift) |
| db/ | Knowledge records — markdown + YAML frontmatter |
| career/ | Resume/LaTeX system with own build pipeline |
| scripts/ | PKOS CLI, validation, sync, generation (Python) |
| templates/ | Governance templates for downstream repos |
| WORKSPACE.yaml | 30-repo manifest |
Records
267 records as of 2026-04-07:
- 42 projects (
db/projects/) - 175 assets (
db/assets/) - 13 plans (
db/plans/) - 34 tasks (
db/tasks/) - 1 profile, 1 decision, 1 journal entry
Tech Stack
Polyglot: Python 3.12 (pyproject.toml, scripts) + TypeScript Next.js 16 + Tailwind v4 dashboard. gray-matter for frontmatter parsing (with regex normalization for non-standard ---type: canonical opener). npm workspace at root with single app workspace member.
Sync
The KB Projects Notion DB (collection://2d67d4d4-b939-45d8-916b-44fd94541ae5) is fed from db/projects/*.md via alawein/scripts/notion-kb-sync.mjs. Each project file carries an optional notion_page_id for sync continuity. The canonical projects DB (driven by alawein/projects.json) is a separate Notion database, synced via sync-to-notion.mjs.
Notes
- Existing records use
---type: canonicalas frontmatter opener (non-standard). New records use standard---. The Next.js data layer normalizes both formats. - Tailwind CSS v4: no
tailwind.config.jsneeded. No@tailwindcss/typographyavailable — prose styles are inapp/src/app/globals.css. - Next.js 16: dynamic route
paramsandsearchParamsare Promises — mustawaitthem. config_audit.pyis the unified config drift tool (replaces running individual validation scripts per repo).- Domain registry SSOT lives at
db/assets/domain-registry.md.