{"id":42329,"library":"wulfy-orm","title":"Wulfy ORM","description":"A lightweight TypeScript ORM for Node.js, currently at version 0.1.7 with an active pre-release development cadence. It supports PostgreSQL via a separate driver package (wulfy-postgres-driver) and provides basic CRUD operations, lazy loading, and common data types. Key differentiators: minimalistic API, TypeScript-first, and driver-based architecture allowing future database support. Currently in early development with limited associations (OneToMany, ManyToOne) and no migrations or table sync yet.","status":"active","version":"0.1.7","language":"javascript","source_language":"en","source_url":null,"tags":["javascript","typescript"],"install":[{"cmd":"npm install wulfy-orm","lang":"bash","label":"npm"},{"cmd":"yarn add wulfy-orm","lang":"bash","label":"yarn"},{"cmd":"pnpm add wulfy-orm","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Required driver for PostgreSQL database connectivity","package":"wulfy-postgres-driver","optional":true}],"imports":[{"note":"The package is ESM-only and requires a default import. TypeScript types are included.","wrong":"const WulfyORM = require('wulfy-orm')","symbol":"WulfyORM","correct":"import WulfyORM from 'wulfy-orm'"},{"note":"PostgresDriver is a default export from the driver package, not a named export.","wrong":"import { PostgresDriver } from 'wulfy-postgres-driver'","symbol":"PostgresDriver","correct":"import PostgresDriver from 'wulfy-postgres-driver'"},{"note":"init is a static method on the default export WulfyORM, not a standalone function. Must be called after import.","wrong":"init(new PostgresDriver(...))","symbol":"init","correct":"WulfyORM.init(new PostgresDriver(...))"}],"quickstart":{"code":"import WulfyORM from 'wulfy-orm';\nimport PostgresDriver from 'wulfy-postgres-driver';\n\n// Initialize with PostgreSQL connection string\nWulfyORM.init(new PostgresDriver('postgres://user:password@localhost:5432/mydb'));\n\n// Define a model\nconst User = WulfyORM.model('User', {\n  name: WulfyORM.string(),\n  age: WulfyORM.number().unsigned().integer()\n});\n\n// Insert a record\nconst newUser = await User.create({ name: 'Alice', age: 30 });\n\n// Find records\nconst users = await User.where('age', '>', 18).all();\n\n// Update\nawait User.where('name', '=', 'Alice').update({ age: 31 });\n\n// Delete\nawait User.where('id', '=', newUser.id).delete();","lang":"typescript","description":"Shows how to initialize Wulfy ORM with PostgreSQL, define a model, and perform basic CRUD operations."},"warnings":[{"fix":"Pin to a specific version and review changelog before upgrading.","message":"The package is in early development (v0.x) and the API may change without notice between minor versions.","severity":"breaking","affected_versions":"<1.0.0"},{"fix":"Install the appropriate driver: npm i wulfy-postgres-driver for PostgreSQL.","message":"Wulfy ORM requires a separate driver package (e.g., wulfy-postgres-driver) to connect to a database. The core package does not include any driver.","severity":"gotcha","affected_versions":">=0.0.0"},{"fix":"Only use OneToMany and ManyToOne associations. For ManyToMany or OneToOne, wait for future releases.","message":"Associations like ManyToMany and OneToOne are listed as planned but not yet implemented. Using them will result in errors.","severity":"deprecated","affected_versions":"0.1.x"},{"fix":"Use import syntax or set \"type\": \"module\" in your package.json.","message":"The package uses ESM imports only. CommonJS require() will fail.","severity":"gotcha","affected_versions":">=0.1.0"}],"env_vars":null,"search_vec":"'0.1.7':12 'activ':15 'allow':56 'api':47 'architectur':55 'associ':66 'base':54 'basic':35 'cadenc':20 'common':41 'crud':36 'current':9,60 'data':42 'databas':58 'develop':19,63 'differenti':45 'driver':27,32,53 'driver-bas':52 'earli':62 'first':50 'futur':57 'javascript':76 'key':44 'lazi':38 'lightweight':4 'limit':65 'load':39 'manytoon':68 'migrat':71 'minimalist':46 'node.js':8 'onetomani':67 'oper':37 'orm':2,6 'packag':28 'postgr':31 'postgresql':23 'pre':17 'pre-releas':16 'provid':34 'releas':18 'separ':26 'support':22,59 'sync':74 'tabl':73 'type':43 'typescript':5,49,77 'typescript-first':48 'version':11 'via':24 'wulfi':1,30 'wulfy-postgres-driv':29 'yet':75","created_at":"2026-06-04T18:56:43.744820+00:00","updated_at":"2026-06-04T18:56:43.744820+00:00","problems":[{"fix":"Run npm install wulfy-postgres-driver","cause":"The driver package is not installed or not in node_modules.","error":"Cannot find module 'wulfy-postgres-driver'"},{"fix":"Use import WulfyORM from 'wulfy-orm' (default import)","cause":"Incorrect import style (named import instead of default).","error":"Property 'init' does not exist on type 'typeof import(\"wulfy-orm\")'"},{"fix":"Ensure you have imported the default export correctly: import WulfyORM from 'wulfy-orm'","cause":"init() called before importing the package or on wrong reference.","error":"WulfyORM.init is not a function"}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":null,"github":null,"docs":null,"changelog":null,"pypi":null,"npm":"wulfy-orm","openapi_spec":null,"status_page":null,"smithery":null,"categories":["database"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-04","next_check":"2026-09-02","install_tag":null}}