Cubic is a simple wrapper that integrates node.js frameworks into one platform that's easy to scale in docker or kubernetes.
This project is still very much in development and lacks documentation in some places, but you can already check out how we've built NexusHub with the help of Cubic.
Cubic comes with everything needed to create a full-size web application for modern standards:
- Automatically routed API endpoints to HTTP and WebSockets
- Webpack for optimal dev & prod bundling
- Full OAuth2 integration
- Pub/Sub model for real-time data
- Rate limits and caching on a per-endpoint basis
- Concise endpoint schema for automated unit tests
We provide all of these features regardless of which http/ws server you choose to use under the hood.
To install cubic to your project:
npm install cubic cubic-api cubic-auth cubic-ui cubic-client cubic-defaults
This looks like a lot of things, but that's because you don't actually need more
cubic-api for a minimal API server. Everything else only extends
the base functionality for the sake of showing you a fully working web-app.
Next we'll create index.js as our entrypoint to the server
const Cubic = require('cubic')
const cubic = new Cubic()
// Load auth, view and api nodes needed for a basic setup
Now all we need to do is run
And Cubic will automatically create some default API endpoints and views
that you can learn the basics from.
You'll now find your web-app on