Registry / devops / arckode-framework

arckode-framework

JSON →
library1.4.3jsnpmunverified

Arckode Framework (v1.4.3) is an AI-first TypeScript/Bun framework for building modular APIs with clean architecture, SOLID principles, and zero magic. Designed so that AI agents can read the composition root and understand the entire system—explicit module contracts, no decorators, no implicit conventions. Targets Bun >= 1.0, and requires peer dependencies mysql2, pg, redis, and nodemailer. Released as an npm package with a CLI tool for scaffolding projects and modules. Differentiators: predictable architecture for AI code generation, strong separation of concerns via RepositoryAdapter pattern, and built-in module system enforcing explicit boundaries.

npm install arckode-framework
INSTALL
IMPORT
SIG · ARCKODE-FRAMEWORK
A
arckode-framework
devopsjavascriptv1.4.3
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

createModule
import { createModule } from 'arckode-framework'
const createModule = require('arckode-framework').createModule
ESM-only; requires "type":"module" in package.json or .mjs extension
RepositoryAdapter
import { RepositoryAdapter } from 'arckode-framework'
import { RepositoryAdapter } from 'arckode-framework/repository'
Main export path only; no subpath exports
OrmRepository
import { OrmRepository } from 'arckode-framework'
import OrmRepository from 'arckode-framework'
Named export, not default
createApp
import { createApp } from 'arckode-framework'
import { createApp } from 'arckode-framework/src'
Use main entry point; avoid internal paths

Creates a minimal 'productos' module with RepositoryAdapter and starts the app.

import { createModule, createApp, OrmRepository, RepositoryAdapter } from 'arckode-framework'; interface ProductoDTO { id: number; name: string; price: number; } const ProductosModule = createModule({ name: 'productos', version: '1.0.0', description: 'Gestión del catálogo de productos', contract: { actions: ['listar', 'crear'], events: ['onProductoCreado'], tables: ['productos'], }, create({ logger, orm, cache, router }) { const repo = new OrmRepository<ProductoDTO>(orm, 'Producto'); return { listar: async () => repo.findMany(), crear: async (data: ProductoDTO) => repo.create(data), }; }, }); const app = createApp({ modules: [ProductosModule] }); app.start({ port: 3000 });
Debug
Known issues
breakingv1.4.0 changed RepositoryAdapter from class to interface; ormRepository return type changed.
fix
Update custom repository implementations to match new interface signature.
affects: >=1.4.0
deprecatedcreateModule's 'actions' config replaced by explicit router setup in create callback.
fix
Move action definitions to create callback using router parameter.
affects: >=1.3.0
gotchaModules must never import other modules directly; only via composition root resolveModule. Violations cause runtime errors.
fix
Use composition root pattern: createModule().create({...}) receives resolved dependencies.
affects: >=1.0.0
breakingBun >= 1.0 required; no support for Node.js or Deno.
fix
Install Bun (bun.sh) and run scripts with bun CLI.
affects: >=1.0.0
deprecatedSockets in module folders are deprecated; use composition root event hooks instead.
fix
Move socket logic to composition-root.ts and use event system.
affects: >=1.2.0
Errors
Common errors & fixes
TypeError: arckode is not a recognized command
CLI not installed globally or incorrect package name
fix
Run: bun install -g arckode-framework
Error: Module 'arckode-framework' cannot be found
Project dependencies not installed
fix
Run: bun install inside project directory
Cannot find module 'mysql2' or 'pg'
Missing peer dependency
fix
Install required peer: bun add mysql2 pg redis nodemailer
TypeError: createModule is not a function
Mistakenly used default import
fix
Change to: import { createModule } from 'arckode-framework'
Upgrade
Version history
1.4.3latest on npm
Audit
Dependencies
mysql2requiredRequired ORM adapter for MySQL databases
pgrequiredRequired ORM adapter for PostgreSQL databases
redisrequiredRequired for caching and session management
nodemailerrequiredRequired for email sending capabilities
Agent activity
12 hits · last 30 days
node
10
OpenAI (training)
1
Resources
arckode-framework — npm install arckode-framework · libregistry