Skip to content

Development Setup ​

Prerequisites ​

  • Node.js >= 20
  • npm >= 10
  • Docker and Docker Compose (for local database instances)

Setup ​

1. Clone the repository ​

bash
git clone https://github.com/zequel-labs/zequel.git
cd zequel

2. Install dependencies ​

bash
npm install

3. Start the development databases ​

bash
docker compose up -d

This starts seven database containers with seed data:

ServiceHost PortCredentials
PostgreSQL54320zequel / zequel
MySQL33061zequel / zequel
MariaDB33070zequel / zequel
SQL Server14330sa / Zequel123!
MongoDB27018zequel / zequel
Redis63790password: zequel
ClickHouse18123 (HTTP), 19000 (Native)zequel / zequel

SQLite and DuckDB are file-based databases and don't need Docker containers. The SQLite database file is at docker/sqlite/zequel.db. Recreate it with:

bash
sqlite3 docker/sqlite/zequel.db < docker/sqlite/init.sql

See Connection URLs for ready-to-paste connection strings.

If you only need specific databases, start them individually:

bash
docker compose up -d postgres redis

4. Run the app ​

bash
npm run dev

5. Run tests ​

bash
# Unit tests
npm run test:unit

# Integration tests (requires Docker databases running)
npm run test:integration

# All tests in watch mode
npm test

# Coverage report
npm run test:coverage

6. Build for production ​

bash
npm run build

The output will be in the dist/ directory. See Releasing for full release instructions.

Released under the Elastic License 2.0.