Time-tracker is a small full stack web app, that can help a freelancer track their time.
User stories:
- As a user, I want to be able to start a time tracking session
- As a user, I want to be able to stop a time tracking session
- As a user, I want to be able to name my time tracking session
- As a user, I want to be able to save my time tracking session when I am done with it
- As a user, I want an overview of my sessions for the day, week and month
- As a user, I want to be able to close my browser and shut down my computer and still have my sessions visible to me when I power it up again.
# To generate graphql schemas
# Note: see server/graph/schemas and also ./gqlgen.yml
$ make schema
# Use this command to start the service locally
$ make local
# To run tests
$ make test
# build a binary for the api
$ make build
# generate mocks
$ make gen-mocks
# runs go vet
$ make vet
# runs go fmt to format files
$ make fmt
- Backend deployed version - https://trackerr-app.herokuapp.com/
- frontend deployed version - https://victor-nach.github.io/time-tracker-frontend/
- frontend repo - https://github.com/victor-nach/time-tracker-frontend
- Signup
- Login
- Refresh tokek
- Get user info
- save session
- view saved sessions
- update session
- delete session
- Go
- GraphQL
- MongoDB (datastore)
- Heroku (deployment)
Code | ErrorType | Detail |
---|---|---|
101 | InvalidRequestErr | invalid request parameters |
102 | InternalErr | Internal error |
103 | DatabaseErr | database error |
104 | InvalidAuthErr | email or passcode invalid |
105 | CustomerNotFoundErr | invalid customer id |
106 | SessionNotFoundErr | invalid session id |
107 | EmailExistsError | Duplicate Email found |