Skip to content

gatekeeperx/ruleflow-ts

Ruleflow TS

CI coverage

Monorepo for the Ruleflow DSL, including:

  • @ruleflow-ts/dsl-core: TypeScript interpreter for the Ruleflow DSL (Node / SSR / Edge-friendly).
  • @ruleflow/dsl-tests: Golden tests for @ruleflow-ts/dsl-core using Vitest.
  • @ruleflow/next-demo: Next.js demo that consumes the core package and exposes an evaluator.

Requirements: Node.js >= 18

Getting Started

# from the repo root
npm install
npm run typecheck
npm run build

Useful scripts:

  • npm run build: builds @ruleflow-ts/dsl-core
  • npm run typecheck: type-checks @ruleflow-ts/dsl-core
  • npm test: runs Vitest with coverage in @ruleflow/dsl-tests
  • npm run smoke: runs a smoke test for @ruleflow-ts/dsl-core
  • npm run dev:next: starts the Next.js demo in dev mode

Packages

  • packages/dsl-core/ – the core interpreter.
    • Entry points: main, exports, and types point to the built artifacts in dist/.
    • License: MIT
    • Publish config: public access
  • packages/dsl-tests/ – Vitest golden tests for the core.
    • Private package
    • Generates coverage reports (text, html, lcov) in coverage/
  • packages/next-demo/ – Next.js demo app.
    • Private package, not intended for npm publishing

Testing & Coverage

npm test
# coverage artifacts will be written to packages/dsl-tests/coverage

CI (GitHub Actions) installs deps, type-checks, builds the core, runs tests with coverage, uploads coverage artifacts, runs the smoke test, and builds the Next.js demo.

Contributing

Please see CONTRIBUTING.md.

Security

Please see SECURITY.md for our vulnerability disclosure policy.

Publishing

Only @ruleflow-ts/dsl-core is meant for publication to npm.

  • License: MIT
  • files: includes dist/, README.md, and LICENSE
  • publishConfig.access: public

Run a dry run:

npm run -w @ruleflow-ts/dsl-core pack:dry

Release helpers:

Manual publish and release helpers:

npm publish -w @ruleflow-ts/dsl-core --access public
npm run -w @ruleflow-ts/dsl-core release:patch
npm run -w @ruleflow-ts/dsl-core release:minor
npm run -w @ruleflow-ts/dsl-core release:major

License

MIT

About

Ruleflow Engine & DSL is a multi-language rule-based workflow engine for risk evaluation. It provides a custom DSL to define workflows, rulesets, and complex conditions with mathematical, logical, date, and aggregate operators, plus configurable states, tags, and actions.

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors