Software

About

The goal of the Software Solutions team is to create software that makes the lives of the rest of the club easier. This means working on creating and updating our project management dashboard dubbed FinishLine. Our goal is to have our club (and others in the future) be able to manage all projects, teams, and finances via the dashboard. To access the app, you can go here and sign in with your husky Google email.

Getting Started

To get started working on the app, first check out the Software Onboarding doc to get your environment setup. If you have any questions, check out the FAQ docs too. Once you’ve done that, check out the Software Contributor Guide to see how to start working on a ticket.

Tech Stack

This project is a full-stack Typescript web application that uses React on the frontend and Express on the backend. Yarn workspaces are used to maintain it as a monorepo.

The current tech stack list is provided below:

  • TypeScript

  • Node.js

  • Express

  • React

  • Prisma

  • PostgreSQL

  • Jest

  • Docker

The app is deployed on AWS Elastic Beanstalk using the Docker configuration for the backend and Netlify for the frontend. It uses AWS RDS for the database.

History

The NER PM Dashboard v1 was created in July of 2020 as a Google Apps Script web application attached to the database Google Sheet file. Major development took place during July and August prior to the start of the Fall 2020 semester. During Fall 2020, two developers make incremental improvements, and then in Spring 2020 a team of developers was formed.

The NER PM Dashboard v2 was hypothesized during the Fall 2020 semester as the v1 developers ran into platform and framework limitations. Research, planning, and project initiation for v2 began in Spring 2021. The end of Summer 2021 was selected as the initial launch deadline for v2, but was not met. In Fall 2021, the team of developers was formalized into NER's Software Solutions team and grew to 20+ members. January 18, 2022 was selected as the adjusted launch deadline for v2, but was yet again not met. In Spring 2022, the Software Solutions team grew to 70+ members. The application finally launched in May of 2022.

However, there were more technical limitations with v2. This led to the creation of NER PM Dashboard v3 in Summer 2022. The biggest change was using Express on the backend instead of Netlify Lambdas. It also generally cleaned up the repo and used Yarn workspaces as a better way to keep the monorepo instead of the workarounds used in v2. It was also rebranded to FinishLine by NER. This is the current iteration being worked on by developers in Fall 2022, and we are continuously releasing new features to enhance and improve the dashboard.