Yekonga Server
raw JSON → 4.4.3 verified Sat Apr 25 auth: no javascript
Yekonga Server v4.4.3 is an open-source Node.js backend framework built on Express and Socket.IO, providing REST, GraphQL, CLI scaffolding, and cloud functions. It integrates GraphQL with an optional authQuery, configurable permissions, database modeling, and mail (SMTP) support. Requires Node >=21.0.0. Differentiators: opinionated CLI (create, generate triggers), JSON configuration, and built-in GraphQL auth. Release cadence is irregular.
Common errors
error Cannot find module 'yekonga-server' ↓
cause Package not installed or node_modules missing
fix
Run 'npm install yekonga-server' in your project root
error Yekonga is not defined ↓
cause Missing require('yekonga-server')
fix
Add 'const Yekonga = require('yekonga-server');' at the top
error Error: config.app is required ↓
cause Config object missing app property
fix
Include 'app: { title: ... }' in config
error TypeError: Yekonga.setConfig is not a function ↓
cause setConfig removed in v3+, use constructor
fix
Use 'new Yekonga(config)' directly
Warnings
breaking Node >=21.0.0 required since v4.0.0 ↓
fix Update Node to v21 or later
deprecated Yekonga.setConfig() deprecated, pass config in constructor ↓
fix Use new Yekonga(config) instead
gotcha GraphQL authQuery misconfiguration breaks auth ↓
fix Ensure graphql.authQuery returns a valid query string
gotcha CJS-only; no ESM support ↓
fix Use require() syntax; do not import package in ES modules
breaking Socket.IO version mismatch may cause runtime errors ↓
fix Ensure installed socket.io version matches peer dependency
Install
npm install yekonga-server yarn add yekonga-server pnpm add yekonga-server Imports
- default wrong
import Yekonga from 'yekonga-server'; // ESM not supportedcorrectconst Yekonga = require('yekonga-server'); - Yekonga wrong
const Yekonga = require('yekonga-server').default; // No .defaultcorrectconst Yekonga = require('yekonga-server'); - Yekonga class wrong
import { Yekonga } from 'yekonga-server'; // Named export not availablecorrectconst Yekonga = require('yekonga-server'); const app = new Yekonga();
Quickstart
const Yekonga = require('yekonga-server');
const config = {
app: { title: 'My App', version: '1.0.0' },
permissions: { default: 'public' },
database: { users: { fields: { name: 'string', email: 'string' } } }
};
const app = new Yekonga(config);
app.start(3000, () => console.log('Server running on port 3000'));