Member
Open JS Foundation Logo
A 3D layered cube diagram representing Harper’s fused application stack. The base layer includes Blob, Database, NoSQL, and Vector components. Above that sits the Cache and In-Memory layer, followed by an API layer featuring GraphQL, REST, WebSocket, and MQTT. At the top, a Node.js and {code} block symbolizes the application logic built directly into the stack. The colors transition from blue at the base to pink and green toward the top, visually emphasizing the integrated nature of data, cache, and runtime.
All In One
Build, scale, and deploy Node apps on a global cluster — no config, no patchwork, just code.
Start on Fabric →
A silver laptop with a glowing teal outline displays a GitHub repository open in dark mode. The screen shows folders and files from the “harper” project.
INSTALL
Apache 2.0
Free to Use
Free to Modify
Free to Sell
Install with npm
npm install -g harperdb
harperdb
Verify Download
curl http://localhost:9925/health
Build
Start from Template
git clone https://github.com/HarperDB/application-template my-app
cd my-app
Define Your Data (schema.graphql)
# @table defines a database table
# @primaryKey marks the id field
# @export makes this table a REST API at /Dog/

type Dog @table @export {
  id: ID @primaryKey     # unique record id
  name: String            # dog's name
  breed: String           # breed type
  age: Int                # dog’s age in years
  tricks: [String]        # list of tricks
Test Endpoint
# ── add a record ───────────────────────────────
curl -X POST http://localhost:9926/Dog/ \
  -H "Content-Type: application/json" \
  -d '{"name":"Harper","breed":"Labrador","age":3,"tricks":["sits"]}'

# ── view that record ───────────────────────────
curl http://localhost:9926/Dog/<id>
Deploy
Recommended (Git Import)
1. Push your app to GitHub, then deploy from Fabric in just a few clicks.
2. Commit your code to a public or private Git repository.
3. In Fabric, go to Applications → Import Application.
4. Enter your repo URL (public HTTPS or SSH).Optionally include a version tag for deployment control:
git clone https://github.com/HarperDB/application-template my-app
cd my-app
Fabric will clone your app, build it, and run it automatically on your cluster.
CLI Method (Direct Push)
1. Open your project directory.
2. Run the deploy command below (replace placeholders)
harperdb deploy_component \
  project=<my-app-name> \
  target=<your-cluster.your-org.harperfabric.com> \
  username=<user> \
  password=<pass> \
  restart=true \
  replicated=true
Fabric will clone your app, build it, and run it automatically on your cluster.
Tip: Use Git tags for versioning, and deploy by tag to roll out updates safely.
Test
curl https://<your-cluster>.<your-org>.harperfabric.com/Dog/ \
  -H "Authorization: Basic <base64(user:pass)>"
If you get JSON back, your app is live. You can also open the same URL in your browser to view data directly.

Congrats! The internet just got measurably faster.
Build
right Arrow
Screenshot of harper Docs
Open Docs
Explore
Discord Green Logo
Join us on Discord →
O'Reilly Logo in Green
Read Service Fabrics and Unified Platforms →
Report cover for "Service Fabrics & Unified Platforms" report written by O'Reilly