eserstack-monorepo

star 127

Monorepo structure, package conventions, version synchronization, and publishing workflow. Use when adding packages, modifying project structure, or managing versions.

eser By eser schedule Updated 4/15/2026

name: eserstack-monorepo description: Monorepo structure, package conventions, version synchronization, and publishing workflow. Use when adding packages, modifying project structure, or managing versions.

eserstack Monorepo

Multi-language monorepo: Deno/TypeScript packages (JSR/npm) + Go services.

Quick Start

  1. Each package: pkg/@eserstack/<name>/ with deno.json, mod.ts, mod.test.ts
  2. Unified version — use deno task cli codebase versions <patch|minor|major>
  3. JSR primary (deno publish), npm secondary (only @eserstack/cli)
  4. Run deno task validate to check entire monorepo

Key Principles

  • Entry point: mod.ts (or main.ts for CLIs)
  • Tests: *.test.ts co-located with source, benchmarks: *.bench.ts
  • File naming: kebab-case enforced by pre-commit hook
  • License header required on all .ts files
  • Explicit exports and publish.include in each deno.json
  • Never manually edit version fields — always use the version-bump script
  • @eserstack/standards is the foundation — change carefully

Go Services

Go code lives in apps/ajan/ with independent git-tag versioning.

  • Run make go-ok for Go-only validation
  • Go does NOT use the unified version-bump script
  • Follow hexagonal architecture — see go-practices skill

References

See rules.md for package conventions, adding packages, and templates.

Install via CLI
npx skills add https://github.com/eser/stack --skill eserstack-monorepo
Repository Details
star Stars 127
call_split Forks 5
navigation Branch main
article Path SKILL.md
More from Creator