Skip to content

Initial monorepo scaffold: apps, packages, ADRs, CI and tests - #1

Draft
steflight wants to merge 1 commit into
masterfrom
codex/creer-le-depot-kladrichat-sur-github
Draft

steflight wants to merge 1 commit into
masterfrom
codex/creer-le-depot-kladrichat-sur-github

Conversation

@steflight

Copy link
Copy Markdown
Owner

Motivation

  • Initialize a TypeScript npm workspace monorepo to deliver the KC-001 prototype (identities, organizations, invitations, private conversations, client-side envelopes and idempotent message delivery).
  • Provide a minimal, testable in-memory API and lightweight clients (web + mobile) so business rules and contracts can be exercised before production persistence and auth are added.
  • Establish developer ergonomics with docs, ADRs and a local compose manifest for future persistence and object storage integration.
  • Add CI to enforce typechecking, tests and a web build in PRs and pushes to main.

Description

  • Add monorepo manifests and base TS configuration (package.json, tsconfig.base.json, workspaces) and a .gitignore for typical artifacts.
  • Implement apps/api using Fastify with a reusable InMemoryKladrichat domain service and WebSocket realtime endpoints, plus an apps/api test exercising invitation, conversation and idempotent message delivery.
  • Add client shells: apps/web (Next.js static UI and styles) and apps/mobile (Expo Router skeleton and a simple list screen), and placeholder processes apps/workers and apps/recorder.
  • Introduce packages @kladrichat/contracts, @kladrichat/domain, @kladrichat/crypto, @kladrichat/sdk, and @kladrichat/design-tokens, with unit tests for domain and crypto, ADRs, documentation and a Docker Compose manifest for Postgres/Redis/MinIO.
  • Add GitHub Actions CI workflow (.github/workflows/ci.yml) to run npm install, npm run typecheck, npm test and npm run build -w @kladrichat/web on PRs and pushes.

Testing

  • Ran workspace type checking with npm run typecheck which completed successfully.
  • Ran the test suite with npm test, executing node:test suites for packages/domain, packages/crypto and apps/api, and all tests passed.
  • Built the web app with npm run build -w @kladrichat/web which succeeded in producing a Next.js build.
  • The CI workflow (.github/workflows/ci.yml) is configured to run the same sequence on PRs and pushes to main.

Codex Task

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant