Coder Social home page Coder Social logo

badgateway / tt-app Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 871 KB

Time tracker app using the Bad Gateway suite of opensource tools. Related: https://github.com/badgateway/tt-api

License: MIT License

TypeScript 85.43% Makefile 0.06% HTML 1.65% CSS 3.62% JavaScript 4.45% SCSS 4.80%
hacktoberfest

tt-app's People

Contributors

beckypollard avatar evert avatar ikbensiep avatar syedfkabir avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

tt-app's Issues

App plan: MVP 0.5 tasks

Let's get the app into a place where the basic user flow is successful!

The focus of "MVP 0.5" is all about getting the basic functions of the app's idea working, the user should be able to complete the user flow for the app. A user should be able to:

  1. Log in or register.
  2. Create & edit a client.
  3. Create & edit a project.
  4. Create & edit a user.
  5. Log hours to a timesheet & edit entry.
  6. Delete stuff (client, project, user, timesheet entry).

Tasks List

  • Setup
  • App has login screen.
  • Users can create and edit Clients.
  • Users can create and edit Projects #31
  • Users can create and edit People.
  • Users can log and edit time for projects. badgateway/tt-api#36
  • Users can delete data. (just entries) #45
  • Timesheet enteries UI improvements.

Things to think about for future milestones:

  • Submitting time sheets UI and functionality.

When the user flow of the app can be satisfied, 0.5 will be achieved!


References:
User flow description from the Notion document.

Let the user know why their Entry was not submitted

Task

This is a follow up to #49

You can now successfully submit an Entry, however if you do not have a Project selected, you'll get a console error.

After some discussion with the Bad Gateway team:
The submit button should not be disabled
The user should be able to hit submit and see why their submission was not successful
This can be done using the required keyword on a <form>, however we are currently not using one
Update the component to now use a form

Screenshot

Screen Shot 2022-10-20 at 12 53 54 PM

Improve time-entry ux to a point that it doesn't suck

  • Add a SAVE button for updating day's time entries.
  • Change SUBMIT to ADD for new entry row.
  • Better accessibility for rows.
  • Better layout for active day (today always open by default?
  • Hide future days?
  • Handle input validation #50

App plan: MVP 1 tasks

Hey the app's core functions work now, let's make it better to use!

The focus of "MVP 1" is all about how the user interacts with the app, and how the functionality is used throughout the screens. We'll improve the design, user experience, and functionality of the app. We also want to create a new screen for monthly client reports where all the timesheet info is displayed in one place as summary, and a landing page with info about the current user's data.

Tasks List

Client reports screen new

Timesheets / Journal

Landing page new

App

  • Better UI for all screens.
    • #46
    • Better design for all screens. (ticket todo)
  • #57

References:
Notion document.

Adding a new person doesn't show newest person until refresh

Task

Not sure if this is a front end or backend bug,
but I experienced in the front end so I'll post it here.

When adding a new person through the front end, once you select CREATE, you are redirected to the Person Collection page. This page will not have the newest person you just CREATEd.

Screenshots:

Before clicking CREATE

Screen Shot 2022-10-27 at 1 00 36 PM

After clicking CREATE

Screen Shot 2022-10-27 at 1 00 49 PM

After refreshing the page you land on

Screen Shot 2022-10-27 at 1 03 48 PM

Update Entry Submit to point at existing endpoint

Task

Currently the entry endpoint is functional, but the FE points at /person/1/sheet/{year}/{week}.
Though this can work, we want to keep that endpoint simple, with a single purpose of submitting the week's timesheet.
The task is to change the FE from pointing at /person/1/sheet/{year}/{week} to /person/1/entry

Screenshot

Screen Shot 2022-10-18 at 4 39 15 PM

Can't create a new Project

Task

Fix the issue where a user can't create a new project.
Getting a 400 status error.

Background:

I tested the API by making a POST request on the project endpoint. It was successful, so I assume the bug is on the Front End.

Screen Shot 2022-09-26 at 5 09 04 PM

Screenshots

Project Creation Page

Screen Shot 2022-09-26 at 5 03 49 PM

After pressing Create, redirects to /project with status code 400

Screen Shot 2022-09-26 at 5 04 48 PM

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.