Skip to content

Class: DORMClient ​

Defined in: src/client/client.ts:30

The entry point. Construct with a connection URI (and optional database name), declare models synchronously with .model(), then await connect() once at application start.

ts
const dorm = new DORMClient(process.env.MONGODB_URL!);
const User = dorm.model("users", { ... }, { timestamps: true });
await dorm.connect();

Constructors ​

Constructor ​

new DORMClient(connectionUrl, databaseName?, options?): DORMClient

Defined in: src/client/client.ts:41

Parameters ​

connectionUrl ​

string

databaseName? ​

string

options? ​

DORMClientOptions = {}

Returns ​

DORMClient

Properties ​

connectionString ​

readonly connectionString: string

Defined in: src/client/client.ts:31


databaseName ​

databaseName: string | undefined

Defined in: src/client/client.ts:32


allowRawOperators ​

readonly allowRawOperators: boolean

Defined in: src/client/client.ts:34

Whether raw operator objects are permitted in filter values (see DORMClientOptions).

Accessors ​

__meta__ ​

Get Signature ​

get __meta__(): Record<string, unknown>

Defined in: src/client/client.ts:55

Returns ​

Record<string, unknown>

Methods ​

connect() ​

connect(): Promise<void>

Defined in: src/client/client.ts:68

Connects to MongoDB. Idempotent — a second call is a no-op. The full URI is passed to the driver; the database name is resolved from (in order) the constructor argument, the URI path, or "test" with a warning.

Returns ​

Promise<void>


close() ​

close(): Promise<void>

Defined in: src/client/client.ts:78

Closes the underlying connection.

Returns ​

Promise<void>


isConnected() ​

isConnected(): boolean

Defined in: src/client/client.ts:85

Returns ​

boolean


model() ​

model<S, O>(name, schema, options?): Model<S, O>

Defined in: src/client/client.ts:93

Declares a model. Synchronous and safe to call before connect(). Calling again with the same name returns the already-registered model.

Type Parameters ​

S ​

S extends SchemaDef

O ​

O extends ModelOptions = ModelOptions

Parameters ​

name ​

string

schema ​

S

options? ​

O

Returns ​

Model<S, O>


ensureIndexes() ​

ensureIndexes(): Promise<void>

Defined in: src/client/client.ts:108

Creates the unique/index indexes declared across all registered models.

Returns ​

Promise<void>


transaction() ​

transaction<T>(fn): Promise<T>

Defined in: src/client/client.ts:119

Runs fn inside a MongoDB transaction, committing on success and aborting on error. Pass the session to writes via .session(session) / create(data, { session }). Requires a replica-set deployment.

Type Parameters ​

T ​

T

Parameters ​

fn ​

(session) => Promise<T>

Returns ​

Promise<T>

Released under the MIT License.