Rollout-Dashboard is a beautiful interactive user interface for rollout gem.
It allows you to perform CRUD operations and send them to Rollout-Service (a Grape service that expose rollout gem with RESTful endpoints).
- Search field.
- Table view with action buttons
- Delete, Create, Edit actions.
- Validations, error messages and confirm message.
- New fields - author, author mail, history, last update and description.
- Security:
- You must connect via google in order to access the application.
- You can restrict the authentication only to specific google apps domain.
- The token gets validate on Rollout-Service
- Typescript
- React for view layer
- Redux for state management
- Webpack for bundling
- Node Express service for serving the static assets
Rollout-Dashboard communicates with Rollout-Service via AJAX requests to perform actions on rollout gem.
On page load, we're fetching from Rollout-Service all the features (~2 seconds for ~240 features).
Run cp .env.example .env
and then set right values there. You can also pass those values as env vars instead.
Here $SERVICE_HOST and $SERVICE_PORT vars point to Rollout-Service service
instance, and $PORT specifies the dashboard UI listening port.
Start it by running npm run start:dev
The history field is a list of the last 50 percentage changes.
This feature is already supported!
You can easily do that by editing the config
file in Rollout-Service
You can do that by specifying the ALLOWED_USERS_EMAILS env var in Rollout-Service
You can generate the credentials at google console.
Then set the GAPI_CLIENT_ID in ENV var, or in the .env file for development.
Currently this feature is not supported.
Add an issue on that and we'll refer that.