arangojs
arangojs is the official JavaScript driver for ArangoDB, a multi-model NoSQL database. It enables Node.js and browser applications to connect to and query ArangoDB using async/await syntax, with support for both modern ES modules and legacy CommonJS patterns.
Key facts
Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.
| Field | Value |
|---|---|
| Repository | arangodb/arangojs |
| Owner | arangodb |
| Primary language | TypeScript |
| License | Apache-2.0 — OSI-approved |
| Stars | 610 |
| Forks | 111 |
| Open issues | 5 |
| Latest release | v10.3.1 (2026-06-02) |
| Last updated | 2026-07-02 |
| Source | https://github.com/arangodb/arangojs |
What arangojs is
TypeScript-based driver providing connection pooling, AQL query execution with template tag support, error handling via ArangoError and NetworkError classes, and compatibility with latest ArangoDB stable versions and recent Node.js LTS releases. Supports basic auth, configurable endpoints, and detailed error introspection.
Get the arangojs source
Clone the repository and explore it locally.
git clone https://github.com/arangodb/arangojs.gitcd arangojs# follow the project's README for install & configurationNeed it deployed, integrated, or customized instead? DEV.co ships production installs.
Best use cases
Implementation considerations
- Requires Node.js LTS version compatibility verification; driver explicitly drops support for out-of-LTS versions and end-of-life ArangoDB releases.
- Configuration includes auth (basic, optional), endpoint URL, and database name; credentials can be rotated via useBasicAuth() without reconnection.
- Query construction via aql template tag prevents SQL injection-style vulnerabilities; raw query strings with manual bindVars require careful validation.
- Error handling distinguishes ArangoError (database-specific) from NetworkError (connection/HTTP) with detailed properties for introspection.
- Stack trace visibility impacted by async queue design; enable precaptureStackTraces option for debugging at runtime performance cost.
When to avoid it — and what to weigh
- Legacy Internet Explorer Support — Driver relies on modern ES module syntax and fetch APIs; older browser targets require transpilation and polyfills not covered in the README.
- Inside ArangoDB (Foxx/arangosh) — This driver is explicitly for external database access only. Foxx and shell environments require the @arangodb module instead.
- Non-ArangoDB Databases — Driver is ArangoDB-specific. No abstraction for switching database backends; requires alternatives like Prisma or TypeORM for multi-database projects.
- Synchronous-Only Codebases — Entire API is async/promise-based; blocking synchronous code patterns are not supported and will require refactoring.
License & commercial use
Licensed under Apache License 2.0, a permissive OSI-approved license allowing modification, distribution, and commercial use with mandatory attribution and liability disclaimers.
Apache-2.0 is widely recognized as permissive for commercial deployment. No proprietary or dual-licensing restrictions evident. Requires review of your organization's license compliance process to confirm this satisfies your procurement and IP review requirements.
DEV.co evaluation signals
Editorial assessment — not user reviews. Directional, with an explicit confidence level.
| Signal | Assessment |
|---|---|
| Maintenance | Active |
| Documentation | Strong |
| License clarity | Clear |
| Deployment complexity | Low |
| DEV.co fit | Strong |
| Assessment confidence | High |
Uses aql template tag to reduce query injection risk if used correctly; raw bindVars queries require manual validation. Credentials transmitted via basic auth over HTTP unless endpoint is HTTPS. No mention of cert pinning, TLS version enforcement, or secret rotation strategies. Precautionary stack trace capture may expose sensitive details in logs. Network error cause chains expose system-level details (syscall, errno) useful for debugging but potentially information-disclosing in production logs.
Alternatives to consider
Prisma
Multi-database ORM with schema-driven code generation. Better for teams requiring SQL/NoSQL portability or strict schema validation, but adds abstraction layer and dependency complexity.
TypeORM
Supports both SQL and NoSQL with decorator-based schema definition. Good for monolithic projects needing mixed database support, but heavier footprint and learning curve than native driver.
ArangoDB REST API (direct HTTP)
Eliminates driver dependency, use native fetch or axios. Suitable for stateless functions or polyglot services, but requires manual URL routing, error parsing, and connection overhead per request.
Build on arangojs with DEV.co software developers
Review the compatibility matrix, examine migration guides for major version upgrades, and validate Apache-2.0 licensing against your procurement process before deploying.
Talk to DEV.coRelated open-source tools
Surfaced by semantic similarity across the DEV.co open-source index.
Related on DEV.co
Explore the category and the services that help you build with it.
arangojs FAQ
Does arangojs work in browsers?
Which ArangoDB versions are supported?
How do I handle database errors?
Can I use arangojs inside ArangoDB (Foxx, arangosh)?
Custom software development services
Need help beyond evaluating arangojs? DEV.co is a software development agency offering software development services and web development for teams of every size. Our software developers and web developers build custom software, web applications, APIs, and open-source databases integrations — and maintain them long-term.
Ready to integrate ArangoDB into your Node.js or browser app?
Review the compatibility matrix, examine migration guides for major version upgrades, and validate Apache-2.0 licensing against your procurement process before deploying.