Getting Started
Prerequisites
- Node.js 20 or later (aligns with the CI matrix)
- npm >= 10.0 (ships with Node 20)
Install
bash
npm install rawsql-ts
Your First Dynamic Query
typescript
import { DynamicQueryBuilder, SqlFormatter } from 'rawsql-ts';
const baseSql = 'SELECT id, name, email, created_at FROM users WHERE active = true';
const builder = new DynamicQueryBuilder();
const query = builder.buildQuery(baseSql, {
filter: { status: 'premium', created_at: { '>': '2024-01-01' } },
sort: { created_at: { desc: true }, name: { asc: true } },
paging: { page: 2, pageSize: 10 }
});
const formatter = new SqlFormatter();
const { formattedSql, params } = formatter.format(query);
console.log(formattedSql);
console.log(params);
Next Step
- Formatting Recipes - Configure whitespace, keyword casing, and placeholder styles so your formatted SQL matches production expectations.
- Querybuilding Recipes - Master
FilterConditions
, nested logic, and downstream formatting to safely project runtime parameters.