Foxx

Traditionally, server-side projects have been developed as standalone applicationsthat guide the communication between the client-side frontend and the databasebackend. This has led to applications that were either developed as singlemonoliths or that duplicated data access and domain logic across all servicesthat had to access the database. Additionally, tools to abstract away theunderlying database calls could incur a lot of network overhead when using remotedatabases without careful optimization.

ArangoDB allows application developers to write their data access and domain logicas microservices running directly within the database with native access toin-memory data. The Foxx microservice framework makes it easy to extendArangoDB’s own REST API with custom HTTP endpoints using modern JavaScript runningon the same V8 engine you know from Node.js and the Google Chrome web browser.

Unlike traditional approaches to storing logic in the database (like storedprocedures), these microservices can be written as regular structured JavaScriptapplications that can be easily distributed and version controlled. Depending onyour project’s needs Foxx can be used to build anything from optimized RESTendpoints performing complex data access to entire standalone applicationsrunning directly inside the database.