An application to manager github repository with kanban boards.
David Nascimento
- An user can be added an repository to system;
- An user can select an repository and manager it;
- The board kanban have 4 colums (Todo, Doing, Review and Closed);
- Todo is the startpoint, that is, the user will create the card/issues here;
- Always an new card is created, an issue associate must be created;
- The card can be title, description;
- User can be drag and drop, of any board to any board:
- When an user move card to Closed the associated issue must be closed;
- When an user move card of Closed the associated issue must be reopen.
- Create figma prototype;
- Github login page;
- Add repository page;
- Select repository page;
- Kaban board;
- Add new Todo page.
- Create front-end;
- Github login page;
- Add repository page;
- Select repository page;
- Kaban board;
- Add new Todo page.
- Create back-end.
- create login resource;
- create add repository resource;
- create list repository resource;
- create card to an repository resource;
- create list boards of an repository resource.
In the app was used an stack javascript
, with nodejs
in backend and reactjs
in web.
- nodejs;
- typescript;
- eslint;
- dotenv;
- prettier;
- mysql;
- sequelize;
- axios;
- express;
- nodemon.
- reactjs;
- typescript;
- eslint;
- prettier;
- react-dnd;
- styled-components;
- axios;
- react-router-dom;
- redux;
- react-redux;
- redux-saga;
- immer;
- OAuth with github;
- Create, search and delete database instances;
- Migrations with sequelize;
- Relationship in tables of database;
- API RESTful with express;
- Drag and drop of HTML5;
- Consumer the api resouces with axios;
- Manager github api resources;
- React hooks;
- React with redux;
- Side-effects with redux saga;
- Css-In-Js with styled-componets.
Example how usage app.
- Config you environment;
- Create an OAuth app in github;
- Git clone
git clone https://github.com/david32145/github-kanban
; - Enter in api folder;
- Copy .env.example to .env and fill with your config, sever port by default is 3333. Below an example of
.env
;
DB_USER=root
DB_PASS=root
DB_HOST=localhost
DB_NAME=github_kanban
DB_PORT=3306
DB_DIALECT=mysql
FRONT_END_LOGIN_URL=http://localhost:3000/login
GITHUB_CLIENT_ID=your_github_client_id
GITHUB_CLIENT_SECRET=your_client_secret
- Run
yarn install
ornpm install
; - Up your migrations with
yarn migration:up
ornpm run migration:up
; - Run server with
yarn dev
ornpm run dev
; - Enter in web folder;
- Copy .env.example to .env and fill with your config. Below an example of
.env
REACT_APP_OPEN_CLIENT_ID=your_github_client_id
REACT_APP_API_URL=http://localhost:3333
- Run server with
yarn dev
ornpm run dev
; - Run
yarn start
ornpm run start
;