Systemix is a modular, high-performance toolkit for building secure and scalable JavaScript and TypeScript systems. It provides typed env loading, cryptographically secure password, passphrase, and token generators, plus shareable ESLint, TypeScript, and test runner configs — a lightweight "standard library" for modern Node.js and web projects.
Published to npm and GitHub Packages:
Links: npm org · npm profile
pnpm add @systemix/env @systemix/password @systemix/passphrase @systemix/tokenimport { load } from '@systemix/env';
import { generatePassword } from '@systemix/password';
import { generatePassphrase } from '@systemix/passphrase';
import { generateToken } from '@systemix/token';
// Typed env vars
const env = load({ PORT: { type: 'number', default: 3000 } });
// Secure random password
console.log(generatePassword({ length: 16, useSymbols: true }));
// → "Z#kM@4p*J!h2X&b7"
// Memorable passphrase
console.log(generatePassphrase({ wordCount: 4 }));
// → "apple orange banana kiwi"
// API key / session token
console.log(generateToken({ byteLength: 32, charset: 'hex' }));
// → "a1b2c3d4e5f6..."| Package | Description |
|---|---|
@systemix/env · npm |
Typed environment variable loading and validation with .env file support. |
@systemix/password · npm |
Cryptographically secure password generator with character guarantees and entropy tools. |
@systemix/passphrase · npm |
Human-readable passphrase generator with formatting and entropy tools. |
@systemix/token · npm |
Secure token generator (hex, base64, base64url) and signed-token module. |
@systemix/eslint · npm |
ESLint v10 flat configs for JS, TS, React, Express, and Next.js. |
@systemix/typescript · npm |
Base TypeScript configs for various environments. |
@systemix/runner · npm |
Minimal test runner with assert, assertThrows, createRunner, runSuites. |
# Utilities (env, password, passphrase, token generators)
pnpm add @systemix/env @systemix/password @systemix/passphrase @systemix/token
# Configs (ESLint flat config, TypeScript tsconfig, test runner)
pnpm add -D @systemix/eslint @systemix/typescript @systemix/runnerWith npm:
npm install @systemix/env @systemix/password @systemix/passphrase @systemix/token
npm install -D @systemix/eslint @systemix/typescript @systemix/runnerFrom GitHub Packages (add to .npmrc: @shahadathhs:registry=https://npm.pkg.github.com):
pnpm add @shahadathhs/env @shahadathhs/password @shahadathhs/passphrase @shahadathhs/token
pnpm add -D @shahadathhs/eslint @shahadathhs/typescript @shahadathhs/runnerRecommendation: Use npm (
@systemix/*) — no extra config.
In an era where security and performance are paramount, Systemix aims to provide developers with a "standard library" of tools that are:
- Modular: Only use what you need.
- Secure: Built on top of robust cryptographic primitives.
- Scalable: Designed for both small projects and large-scale monorepos.
- Developer-First: Comprehensive types, flat configurations, and seamless DX.
- Standardized Linting: Pre-configured ESLint rules matching modern best practices.
- Cryptographic Security: Utilities utilize Node.js
cryptofor high-entropy randomization. - Turbo-Powered: Build and test workflows optimized with Turbo for maximum speed.
- TypeScript Native: Full type safety and intelligent IDE support out of the box.
- Monorepo Management: pnpm Workspaces
- Build System: Turbo
- Bundling: tsup (Rollup/Esbuild power)
- Code Quality: ESLint 10, Prettier
- Language: TypeScript
We welcome contributions! Whether it's reporting a bug, suggesting a feature, or submitting a pull request, your help is appreciated.
- Contributing Guide — Setup and workflow
- Code of Conduct — Community standards
- Clone the repo:
git clone https://github.com/shahadathhs/systemix.git - Install dependencies:
pnpm install - Build the project:
pnpm build - Run checks:
pnpm ci:check
Distributed under the MIT License. See LICENSE for more information.
Built with ❤️ by @shahadathhs · npm · @systemix