Classic example of developer wanting to use something else that doesn’t exist.
When I join NJCPA in 2014, I needed to track development time for projects for multiple reasons. Did some research and fell in love with Toggl Track (seriously if you need to track time, look at Toggl Track). Then when I went from NJCPA to CPAMB I brought it along and implemented it’s use within the dev team. Then I went from CPAMB to PerByte, a consulting firm where time tracking is key. But, I disliked the time tracker that the product PerByte was using… so being me, I continued to use Toggl and just manually entered my time entries. That was fine for initially but I very quickly hate doing time entries… Wait! The product PerByte uses has an API!!! Toggl Track has an API!!! Chrono was born.
Chrono was a simple web app that allowed me to easily select Toggl Entries and almost 1 button click to create a time entry in the product PerByte was using.
Infrastructure
- Hosting: Azure Static Web App
- Client: Nuxt 2 SSG
- API: Azure C# .Net 6 Functions
- Authentication: Azure Static Web App built in Azure AD
- Integration: Azure Table Storage for cached data as the product PerByte used’s API had a max 100 items per request and wasn’t the fastest thing in the world.
- Integration: Toggl Track API and Reports API
- Integration: Product PerByte is using
Features
-
My Week and My Day
- A listing of all the tasks assigned to me for the week
- Listing could be filtered out a few way
- Took the idea from Microsoft ToDo to select those tasks into “MyDay”
-
Hours Allocations (this never worked correctly)
- Split out the tasks and time entries into there respected allocation buckets
- Idea was to make sure hours were getting allocated correctly and keeping up with company goals.
-
Sync to Toggl
- Would sync my Tasks with there id to Toggl projects so that there was a 1:1 tie
-
Time Entries
- Primary purpose of the app, Toggl Entries to PerByte’s products Time entires
-
Toggl Tracker
- For fun added a stop/start for Toggl