Managing customer configurations takes much work. At first, it seems like just creating another SQL database, but in reality, it's just the beginning.
You need to define different pricing tiers for different customers, but some important ones require extra customization. You need to store lots of different values for them - throttling configurations, secrets, and just plain JSONs. And you need to be able to access these configurations across your system - with 0 latency. You need this data synchronized across many systems - CRMs, authentication services, billing systems, and even sometimes your Databases. Enrolla's goal is to simplify customer configuration management and provide developers with the tools to focus on delivering best-in-class products - while providing the needed flexibility for the rest of the company.
- 🛂 Easily manage all your configurations - throttling, secrets, just plain JSONs
- 🧩 Integrations with CRMs, authentication services, billing systems
- ⏩ Typescript SDK for fetching configurations to your services with smart caching (Python and Go in developement)
- 📦 Built-in backoffice for non engineers
- 😎 Headless UI templates for providing needed knobs for your customers (in developement)
- 👩💻 Community driven
Enrolla is using a monorepo (powered by Nx Workspaces) with multiple apps and libraries.
It's backend is based on NestJS, and its front-end is a Vite deployment of a Refine app.
Follow these instructions to set up a local developement environment.
-
Clone the repositoriy and install dependencies:
git clone https://github.com/enrolla/enrolla.git cd enrolla nvm install npm install
-
Set up a local Postgres Database. You can use Postgres.app for Mac for example.
-
Set up doppler, our secrets manager:
doppler login doppler setup
-
Apply database migrations:
doppler run -- npx nx run prisma-models:prisma-deploy
-
To start developing, run the
serve
target on both the backend and the frontend:# This will serve the Backend in development mode doppler run -- npx nx serve # This will serve the Frontend in development mode doppler run -p frontend -c dev -- npx nx serve mgmt-ui
That's it, you are good to go! Happy hacking! 👾