Skip to content

open-source time tracking service written in Golang.

License

Notifications You must be signed in to change notification settings

AhmedShaef/wakt

Repository files navigation

Wakt


CircleCI go.mod Go version Go Report Card Wiki License

Getting Started

Wakt is an open-source time tracking Microservice, based on Ardanlabs service 3 and inspired by Toggl track.

fast run (this just run wakt api)

1- the Go 1.18 + and postgres 14.2 is requred.

2- use commend to run main.go.

make run

3- apply the schema and seed demo data.

make seed

Prerequisites

You can run this make command to use brew to install all the software above.

make dev.setup.mac

To start using wakt

    make all
    make kind-up
    make kind-load
    make kind-apply  

Check services status

Check status

    make kind-status 

Check logs

    make kind-logs

also you can log specific service ex.

    make kind-logs-wakt

Check traces

Use Zipkin to query traces in localhost:9411

Check metrics

use the expvar sidecar service in port 4000

Ckeck readiness in localhost:4000/debug/readiness the status ok mean the api up and running

Liveness is in locakhost:4000/debug/liveness if you get data that's mean the db is running and connected

To stop using wakt

    make kind-down

Run tests (that support unit and integrated test)

    make test

Data Model

TODO for v1.0.0

in API :

  1. Decrease number of db connection per request
  2. Improve notification system
  3. Report package
  4. invoice and payment
  5. Oauth2
  6. improve comments
  7. missing functionalities

in UI:

  • Design UI/UX and Code (using React.js) the following:
    1. App Dashboard
    2. Home Page
    3. Price Page
    4. SignUp/Login/forget password Pages
    5. Email HTML Template for:
      1. SignUp validation
      2. Invitations
      3. Reset email/password
      4. Reports and invoices

About

open-source time tracking service written in Golang.

Resources

License

Stars

Watchers

Forks