DuckDB
To use DuckDB as the database provider in your Remult-based application, follow these steps:
Step 1: Install DuckDB
Run the following command to install @duckdb/node-api:
sh
npm i @duckdb/node-apiStep 2: Configure the dataProvider
In your index.ts (or server file), configure the dataProvider to use DuckDB:
ts
import express from 'express'
import { remultApi } from 'remult/remult-express'
import { SqlDatabase } from 'remult'
import { DuckDBInstance } from '@duckdb/node-api'
import { DuckDBDataProvider } from 'remult/remult-duckdb'
const app = express()
app.use(
remultApi({
dataProvider: new SqlDatabase(
new DuckDBDataProvider(
(await DuckDBInstance.create(':memory:')).connect(),
),
),
}),
)
app.listen(3000, () => console.log('Server is running on port 3000'))Explanation:
- DuckDB setup: The database is initialized with
DuckDBInstance.create(':memory:')to create an in-memory database. Replace':memory:'with a file path if you want to persist the database to disk. - SqlDatabase:
SqlDatabaseis used to connect Remult with DuckDB through theDuckDBDataProvider.
This setup allows you to use DuckDB as your database provider in a Remult project.