Butler
Butler provides an intuitive drag-and-drop UI for designing server architecture. It will generate a boilerplate from your configuration and send your files to github. Then clone your new repo and start coding!
Note:Butler currently only supports express.js servers.
Team
- Product Owner: Reid Greer
- Scrum Master: Sofia Berlin
- Development Team Members: Dylan Kuang, Jeremy Rosenfeld, Reid Greer, Sofia Berlin
## Table of Contents
Usage
- Navigate your browser to appButler.io.
- Login with Github. AppButler needs github authorization to create a new repo.
- Drag and drop components until you are satisfied with your server architecture.
- Click build to generate your boilerplate
- Start coding!
Features
- Support for express.js server generation
- Integration with Github
- An intuitive UI to help you visualize and design your server architecture
- Ability to save and return to past server configurations
Requirements
- Node >= 5.0.x < 6
- Express
- Mongo 3.2.x
- Mongoose 4.4.x
- React
- Redux
Development
Installing Dependencies
From within the root directory:
npm install
npm run build
Contributing + Github Workflow
See contributing.md for contribution and github workflow guidelines.
Architecture
High Level Architecture
Database
API
Method | Route | Description |
---|---|---|
POST | api/serve | Generate a boilerplate and sends it to github |
GET | api/config | Get current user's configs from the database |
POST | api/serve | Generate a new config |
POST | api/config | Save a user's config to the database |
DELETE | api/config | Delete a user's config |
POST | api/login | Log in user through Github |
GET | api/users | Get current user from the database |