Skip to content

Native app for ClickUp time tracking. Easily drag & resize events around on a calendar. Changes are synced in real time

License

Notifications You must be signed in to change notification settings

gwleuverink/clickup-time-tracker

Repository files navigation

ClickUp Time tracking - the low friction way

A tool for tracking time on Clickup tasks, but without the frustration

Drag tracked events around on a calendar, drag resize & duplicate entries with ease. Changes are synced with clickup in real time!

Project setup

npm install

Compiles and hot-reloads for development

npm run electron:serve

Build for production

npm run build:osx
npm run build:win
npm run build:linux
npm run build:all

Build & publish a new release

# Increment the version number first
npm run publish:osx
npm run publish:win
npm run publish:linux
npm run publish:all

Lints and fixes files

npm run lint

Roadmap

Done

  • Fetch & list tracking entries for active view
  • Create a new entry by dragging on the calendar
  • Search through all Clickup tasks in searchable select field when adding a new entry
  • Refresh cached Clickup tasks asynchronously in the background process with convenient UI control
  • Update a time entry when resizing/moving the event
  • Disable editing (resize/drag/delete) when the associated task is closed
  • Add proper accesibility support & hooks to create & detail modals
  • Double click event to show details
  • In details modal add a button to delete the tracking entry
  • Add select + backspace to delete support
  • Add copy/paste support
  • Show proper toast alerts when things happen in the app
  • Add full bleed title bar
  • Add a preferences screen where the user can set env variables
  • Add online/offline state splash screen
  • Replace all inline svg's with svg components (heroicons included in project)
  • Add proper validation to create modal
  • Rewrite css overrides to scss
  • Auto updater using Github registry

Milestones

  • Extract edit & create modals to separate components (consider this)
  • Optional settings for modifing start & end of day
  • Setting for toggling weekends
  • Add JSON Schema for setting store with default values for start/end of day & weekend toggle
  • Add caching with TTL on fetched task list
  • In details modal make an option to update tracking description/attached task

Quick wins

  • Show error message (and log) when fetching task list from background process fails
  • Button to refresh current view (and tracked entries in that view)
  • Sort selectable tasks by latest log entry (might not be possible since tracked time is not added to tasks fetch payload)
  • After that sort selectable tasks by updated_at date
  • Reset a task when an API error occured while editing (resize/drag etc)
  • Filter Tasks API call to exclude Tasks with status 'Requested, Backlog, Closed' etc
  • Customize app menu
  • Add optional background image
  • Add error reporting (sentry)

About

Native app for ClickUp time tracking. Easily drag & resize events around on a calendar. Changes are synced in real time

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Contributors 4

  •  
  •  
  •  
  •