Research
Security News
Quasar RAT Disguised as an npm Package for Detecting Vulnerabilities in Ethereum Smart Contracts
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
@totalperspective/pondermatic
Advanced tools
Functional effect system-driven rules engine for Clojure/ClojureScript & Javascript
Pondermatic is a functional effect system-driven rules engine designed for use with Clojure, ClojureScript, and JavaScript. It provides a robust framework for defining and executing rules in a declarative manner. Pondermatic helps manage side effects in a predictable and composable way, making it easier to integrate with various data sources and build complex rule-based systems.
Pondermatic's architecture consists of the following key components:
Add the following dependency to your deps.edn
file:
{:deps {tech.totalperspective/pondermatic {:mvn/version "1.11.10"}}}
Install via npm:
npm install @totalperspective/pondermatic
(ns example.core
(:require [pondermatic.core :as p]))
(def rules
(p/ruleset
[{:id :example-rule
:rule/when {:data/key ?value}
:rule/then {:data/new-key ?value}}]))
(def data
(p/dataset
[{:key "value"}]))
(def engine (p/->engine "example" :reset-db? true))
(-> engine
(p/|> {:->db rules})
(p/|> {:->db data})
p/stop)
import pondermatic from '@totalperspective/pondermatic';
// Create a new engine instance
const engine = pondermatic.createEngine('example', true);
// Define a ruleset
const rules = pondermatic.ruleset([
{
id: 'example-rule',
'rule/when': { 'data/key': '?value' },
'rule/then': { 'data/new-key': '?value' }
}
]);
// Define a dataset
const data = pondermatic.dataset([{ key: 'value' }]);
// Load the ruleset into the engine
pondermatic.sh(engine, { '->db': rules });
// Load the dataset into the engine
pondermatic.sh(engine, { '->db': data });
// Stop the engine
pondermatic.stop(engine);
Contributions are welcome! Please read the Contributing Guidelines for more information.
This project is governed by the Code of Conduct. By participating, you are expected to uphold this code.
FAQs
Functional effect system driven rules engine
The npm package @totalperspective/pondermatic receives a total of 63 weekly downloads. As such, @totalperspective/pondermatic popularity was classified as not popular.
We found that @totalperspective/pondermatic demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
Security News
Research
A supply chain attack on Rspack's npm packages injected cryptomining malware, potentially impacting thousands of developers.
Research
Security News
Socket researchers discovered a malware campaign on npm delivering the Skuld infostealer via typosquatted packages, exposing sensitive data.