OnTrack
Overview
OnTrack is a Team Management web app, focused on Software Development teams that collaborate using GitHub Project and Issues to track their project development.
Goals
1 - Visualize the Projects assigned to your development team, with their timelines.
2 - Manage Team's capacity based on Project duration and GitHub issues (scope of development).
Specifications
MVP
- Display a report of GitHub hosted project(s), based on Project Duration(h), Project Target Completion Date, Team Capacity(h) and Open Issues.
- Create/Edit Teams, Team Members, Team Capacity
Frontend
- React App
- CSS, SASS and Bulma
Backend
- GraphQL
- Node.js
- Express.js
- MongoDB
- Mongoose ODM
- CRUD operations
- JWT authentication
- GitHub API
Milestones
Project Specification
- Project Specification due by 03/14/2022
MVP
- Needs to be working with no bugs by 03/18/2022
Application Deployed to Heroku
- Application needs to be deployed to Heroku by 03/21/2022
- Final application needs to be deployed to Heroku by 03/22/2022
Project Presentation
- Project presentation on 03/23/2022
User Stories
As a User I want to be able to Create/Edit/Delete a Team, I want to be able to Add / Remove Users from the Team, When I’m logged in as a User
As a Team Member I want to be able to Assign a Project to my Team I want to be able to determine the Project Target Completion Date I want to be able to determine the Team Member’s daily capacity (hours) I want to be able to determine…
As a Team Member I want to be able to Assign a Issue to another Team Member or myself I want to be able to determine a Issue duration
As a Team Member I want to be able to…
Data Models
Team
- name
- description
- createdAt
- Users from User
- Projects from Project
User
- username
- password
- project from Project
Project
- projectID
- projectTitle
- projectURL
- completionDate
- issues from Issue
Issue
- issueID
- title
- description
- username
- duration
Coding Standards
- use Prettier VSCode extension
- Single quote
- Tab Size 2
Future Development
- AWS - store user images for example
- Calendar for Team meetings / events / deadlines
- Integration to Microsoft DevOps and Jira
Team Members
- Fernando Ortega - Product Owner / Backend Dev / PR tester/approver
- Jojo Bautista - Backend Dev
- Edison Simondet - Scrum Master / Frontend Dev (React)
- Henry Olson - Frontend Dev (CSS, SASS, Bulma)
Feature/auth
This commit dove deeper into the package we're using for the SPA portion of our app, react-router-dom. Following their documentation, I created a new Routing folder (this is not a RESTful API, just shares some naming conventions).
App.js received minor changes, now all pages accept landing and meet the devs are protected and inaccessible without being logged in and having an auth token.
Trouble points include the Server backend portion occasionally stopping. While I don't believe it is related expressly to the changes in this commit further testing is required. As it stands now as long as the server is running and hasn't stopped on its own the Sign Up and Sign In/Out functionality works.
Issue/32 connect front backend
In this PR, I added the connection between back and frontend for the Project component. I also started working on the JWT issue, but was not able to finish it yet.
There are a few more fixes in the mutation, typeDef files as well.
Feature/dashboard
This pull includes dashboard styling as well as the equation I believe should be used in the MVP.
Projected Progress = Total Number of Issue Hours - (Total Team Capacity * Days Remaining Actual Progress = Total Number of Issue Hours / Days Remaining)