OnTrack is a Team Management web app, focused on Software Development teams that collaborate using GitHub Project and Issues to track their project development.

  • By Fernando Ortega
  • Last update: Mar 21, 2022
  • Comments: 3

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
  • email
  • 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

Github

https://github.com/Feortegas/OnTrack

Comments(3)

  • 1

    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.

  • 2

    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.

  • 3

    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)