Team Name: Intangibles

Team Members: Oscar Alcantar, Yakov Chipak, Ruthvik Chowdary, Paul Davydov, Hermont George Legaspi, Hung Quach, Alexander Van Oss

Adviser: Prof. Jin, Ying

Firebase

Google Firebase is used to store our database

React

React is used to display our front end

Node.js

Node.js is used for our back end!

Background

  • The projects goal is to create a simpler project manager for small development teams or individuals.
  • The client’s name is Adam C. Younis and he is an indie game developer. His website is Upponhill.com.
  • The main issue that the client faces is that his current project management software is cluttered and overly complicated for what he needs it for.
  • Two major goals of our client was to make a user friendly interface and to make each project have a list of tasks that subsequently have an infinite depth of subtasks within them.

Scope

  • Create a pleasant to look at, dark themed user interface that is easily navigable.
  • Have input that the client could use to create projects and to create tasks and subtasks.
  • Make each task have an infinite depth of subtasks within them.
  • Allow each task and project to have its details able to be edited.
  • Each subtask can be expanded to view more details or its subtasks.
  • Implement a system for logging in and signing up.

Implementation

  • The entire project was written in the javascript programming language, as it is the most commonly used language for web development.
  • Front-end was built using: HTML, CSS, Javascript, Bootstrap, React.
  • Back end was built using: Node.js, Express HTTP framework, Google Firebase.
  • Testing was done using Postman for the back-end and Selenium for the front-end.
  • 3000 lines of code across 34 files between 2 repositories.

Highlights

  • This project management software is unique in that it is made for one developer.
  • This allows the developer to closely monitor and set various properties of tasks themselves.
  • It is innovative in that the client gets to see how well they are at estimating tasks and prioritizing them.
  • It also shows the client data, that is often hidden from the user, which can also help with project organization.

Lessons Learned

  • The process of an Agile workflow for software development.
  • The most modern tools for creating a full stack web application.
  • Learning to use the tools, and knowing what tools are available to you is one of the most important parts of becoming a skilled developer.
  • Having great teamwork skills are exponentially useful in the real world.
  • The best way to get the most out of a field is to get your feet wet in that field and actually work through something and overcome the struggles.

Acknowledgement

Special thanks to Professor Yang, our lab advisors Professor Penn and Professor Jin, and our client Adam Younis.

DEMO

Ready to try this out?