How acmepy/seq works
seq is a modular asynchronous Node.js ORM. Users configure a Seq instance with models and an adapter, define model attributes and relationships, then authenticate and synchronize before issuing model queries or mutations. Model routes persistence through adapter DML; Seq coordinates registration, schema work, and lifecycle. The tree and README establish Map, SQLite, MySQL, and Oracle adapters, plus associations, hooks, query operators, transactions, and caching. Sampled excerpts confirm only parts of Model, DML, and adapter behavior, so uncertain implementation links are omitted.
Main entry points: Model.js Models · Seq.js Seq · BaseAdapter.js Adapter Contract · DMLAbstract.js DML Operations
Components 22
ORM API
- Public API
src/index.js - Seq
src/core/Seq.js - Model Registry
src/core/ModelRegistry.js
Modeling and Queries
- Models
src/core/Model.js - Associations
src/core/Association.js - Data Types
src/data-types/index.js - Query Operators
src/operators.js - Include Resolver
src/utils/include.js
Adapter Runtime
- Adapter Contract
src/adapters/BaseAdapter.js - DML Operations
src/adapters/abstract/DMLAbstract.js - Schema Operations
src/adapters/abstract/DDLAbstract.js - Transactions
src/adapters/abstract/TCLAbstract.js
Persistence Backends
- Map Adapter
src/adapters/map/MapAdapter.js - Map Storage
src/adapters/map/MapDML.js - SQLite Adapter
src/adapters/sqlite/SQLiteAdapter.js - MySQL Adapter
src/adapters/mysql/MySQLAdapter.js - Oracle 11 Adapter
src/adapters/oracle11/Oracle11Adapter.js - Oracle 12 Adapter
src/adapters/oracle12/Oracle12Adapter.js
Caching
- Cache
src/cache/Cache.js - Cache Adapters
src/cache/adapters/CacheAdapter.js
Other components
- Application
- External Database
Connections 25
- Application → Public API: imports
- Application → Seq: configures
- Public API → Seq: exports
- Seq → Model Registry: registers models
- Application → Models: defines models
- Models → Data Types: uses types
- Models → Associations: defines relations
- Models → Query Operators: builds queries
- Models → Include Resolver: resolves includes
- Models → DML Operations: issues persistence
- Seq → Adapter Contract: coordinates adapter
- Seq → Schema Operations: synchronizes schema
- Seq → Transactions: controls transactions
- Adapter Contract → DML Operations: provides operations
- Adapter Contract → Schema Operations: provides operations
- Adapter Contract → Transactions: provides operations
- DML Operations → Include Resolver: loads associations
- Map Adapter → Map Storage: reads and writes
- Map Adapter → External Database: uses backend
- SQLite Adapter → External Database: queries
- MySQL Adapter → External Database: queries
- Oracle 11 Adapter → External Database: queries
- Oracle 12 Adapter → External Database: queries
- Models → Cache: caches results
- Cache → Cache Adapters: delegates storage