To-do list time tracker for programmers and other digital workers with Jira, Github, and Gitlab integration

Overview

Please help us improve the app's usability!

Banner

MIT license GitHub All Releases On product hunt tweet

Get it from the Snap Store English badge App Store Badge Play Store Badge

Organize your daily tasks in one place while making time tracking a lot less annoying. Super Productivity is a ToDo List / Time Tracker / Personal Jira Task Manager for Linux, MacOS and Windows aimed at reducing the time you spend with repetitive tasks and to provide you with a place to collect all the information you need to do your job.

🌐 Open Web App or πŸ’» Download

βœ”οΈ Features

  • Plan, track & summarize. Create time sheets and work summaries in a breeze to easily export them to your company's time tracking system.
  • Integrate with Jira, GitHub and GitLab. Auto import tasks assigned to you, plan the details locally, automatically create worklogs and get notified right away, when something changes.
  • Organize your project's data. Create notes, attach files or create bookmarks for links, files and even commands and have it all out of the way, once you're ready for the weekend.
  • Helps you to establish healthy habits. A break timer reminds to you, when it's time to step away. You also can collect personal metrics for yourself to see, which of your work routines need adjustments.
  • Stuck and procrastinating? No problem! Super Productivity's anti procrastination feature helps you to reconsider your options and a pomodoro timer is also always at hand.
  • Super Productivity does NOT collect any data and there are no user accounts or registration. It's free and open source and always will be.

And much more!

Work View with global links

❓ How to use it

I wrote a little article on how I use the app - and another one on how I implement the 'eat the frog' prioritizing scheme in the app . There is also a youtube video available.

🌐 Web Version

Check out the web version eventhough it is a bit limited: Time tracking only works if the app is open and for idle time tracking to work, the chrome extension has to be installed.

If you want the Jira integration and idle time tracking to work, you have to also download and install the Super Productivity Chrome Extension.

πŸ’» Downloads & Install

All Platforms

Install from the releases page.

Windows

Due to certification issues it's recommended to download the app from the Microsoft Store:

English badge

Linux

# stable
sudo snap install superproductivity

# edge channel releases
 sudo snap install --channel=edge superproductivity
Get it from the Snap Store

Arch

git clone https://aur.archlinux.org/superproductivity-bin.git
cd superproductivity-bin
makepkg -si

MacOS

Install via homebrew cask:

brew install --cask superproductivity
App Store Badge

Android

There is a very early(!) Android version available. The sources can be found here.

App Store Badge

β™₯️ Contributing

Please check out the CONTRIBUTING.md

There are several ways to help.

  1. Spread the word: More users means more people testing and contributing to the app which in turn means better stability and possibly more and better features. You can vote for Super Productivity on Slant, Product Hunt, Softpedia or on AlternativeTo, you can tweet about it, share it on LinkedIn, reddit or any of your favorite social media platforms. Every little bit helps!

  2. Make a feature or improvement request: Something can be be done better? Something essential missing? Let us know!

  3. Report bugs

  4. Contribute: You don't have to be programmer to help. Some of the icons really need improvement and many of the translations could use some love.

  5. Sponsor the project

Pull Requests

Pull requests are of course very welcome! Please make sure that you're following the angular commit guidelines and to also include the issue number in your commit message, if you're fixing a particular issue (e.g.: feat: add nice feature with the number #31).

Running the development server

To run the development server you need to have node installed at least in the version 12. Go to https://nodejs.org for installation instructions. You also need to install yarn which is used for dependency management.

Clone repo

git clone https://github.com/johannesjo/super-productivity.git

Install dependencies

cd super-productivity
yarn
yarn global add @angular/cli

Run the dev server

ng serve

Afterwards you can open http://localhost:4200 in your browser. For most adjustments this should be enough and also enables you to use the redux dev tools.

If you want to run the app standalone do the following:

ng serve

# in a new console tab
yarn start

Packaging the app

Packaging the app is done via electron-builder. To start packaging run yarn dist. If you want to add new platforms and experiment with the build options the easiest way to do so is manipulating the build property in the package.json, but you can also use the command line interface of electron builder.

Run as Docker Container

docker run -d -p 80:80 johannesjo/super-productivity:latest

Custom themes (desktop only)

In addition to color coding your projects and tags and to the dark and light theme you can also load completely custom css to restyle everything. To load a custom theme you simply need put them into a new file named styles.css directly in the user data folder.

There is a great set of themes available for download in this repository as well as some info on how to role out your own custom themes.

Custom WebDAV Syncing

If using the integrated WebDAV Syncing is not working out for you, you can also try to sync all app files, which are located in the user data folder.

Automatic Backups

For the desktop version automatic backups are stored per default in the backup sub folder of the user data folder. Once you located a backup you can restore it on the settings page under Sync & Export/Import/Export/Import from file.

User Data Folder

Where user data is stored differs from os to os. The most common locations are: Mac OS: ~/Library/Application Support/superProductivity/ Windows: C:\Users\<YOUR_USER_NAME>\AppData\Local\superProductivity/ Linux: ~/.config/superProductivity/

The path should be shown when you go to the "Automatic Backups` section on the configuration page (minus the "backup" sub folder). You can also see it printed out when you start the app from the command line.

For web browsers data is simply stored for the current user inside the browser storage.

Using a custom folder to save user data

You can specify a custom folder for saving your data by starting the application with the --user-data-dir parameter like so:

superproductivity --user-data-dir=/path/to/my/data
Issues
  • [color request] custom dark theme colors (customs stylesheets?)

    [color request] custom dark theme colors (customs stylesheets?)

    hi. I don't like the dark theme color can you add another color for dark themes? like arc (arc-dark) or nord or another https://www.pling.com/p/1167639/ https://github.com/horst3180/arc-theme https://github.com/arcticicestudio/nord

    enhancement help wanted hacktoberfest Stale 
    opened by fla15 40
  • build: upgrade to angular 10

    build: upgrade to angular 10

    Upgrades to Angular 10.

    todos:

    • [x] ~~fix the e2e tests~~ (protractor-based e2e will be replaced with nightwatch)

    bugs in prod mode:

    • [x] worklog, project and settings pages are not scrollable (fixed via 375d600)
    • [x] sideEffects: false in src/app/package.json breaks the task list (angular bug, see https://github.com/johannesjo/super-productivity/pull/501#issuecomment-702819486 and angular/angular#35602)
    opened by thetric 38
  • Feature Request: WebDav sync (so I can use NextCloud)

    Feature Request: WebDav sync (so I can use NextCloud)

    I see that the app supports Google Drive, I was wondering if there is a chance to add WebDav sync so I can use my NextCloud instance to sync?

    enhancement help wanted hacktoberfest 
    opened by TobiasDev 36
  • WebDAV Nextcloud sync not working, continual upload try, but fails.

    WebDAV Nextcloud sync not working, continual upload try, but fails.

    Your Environment

    • Version used: deb - 6.0.0.rc.5
    • Operating System and version: Pop_OS! 20.04
    • Desktop Environment: GNOME
    • Browser Name and version: Desktop version

    Expected Behavior

    Webdav should sync to Nextcloud

    Current Behavior

    Can't sync the file. Say's No remote data found. Upload local to Remote when selecting ok, error: An Error occurred while uploading your local data, try to force the update and just hitting ok, loops the process.

    Steps to Reproduce (for bugs)

    1. Setup SYNC with the follwing info and it presents these errors.

    image

    Console Output

    main.8b59fe120f7989f6bc26.js:1 Persistence already allowed main.8b59fe120f7989f6bc26.js:1 0 out of 206572 MiB used (0%) main.8b59fe120f7989f6bc26.js:1 Migrating model "Task" to version from undefined to 3.3334 Object main.8b59fe120f7989f6bc26.js:1 Migrating model "TaskRepeat" to version from undefined to 1 Object main.8b59fe120f7989f6bc26.js:1 Migrating model "Task" to version from undefined to 3.3334 Object main.8b59fe120f7989f6bc26.js:1 Migrating model "TaskRepeat" to version from undefined to 1 Object main.8b59fe120f7989f6bc26.js:1 Migrating model "Tag" to version from undefined to 1 Object main.8b59fe120f7989f6bc26.js:1 Migrating model "SimpleCounter" to version from undefined to 2 Object main.8b59fe120f7989f6bc26.js:1 Object main.8b59fe120f7989f6bc26.js:1 true Object main.8b59fe120f7989f6bc26.js:1 WebDAV main.8b59fe120f7989f6bc26.js:1 backupMeta Object main.8b59fe120f7989f6bc26.js:1 backupData {"bookmark":{},"note":{},"metric":{},"improvement":{},"obstruction":{},"globalConfig":{"lang":{"lng":null},"misc":{"isDarkMode":true,"isConfirmBeforeExit":false,"isNotifyWhenTimeEstimateExceeded":false,"isAutMarkParentAsDone":false,"isAutoStartNextTask":true,"isTurnOffMarkdown":false,"isAutoAddWorkedOnToToday":false,"isDisableInitialDialog":false,"defaultProjectId":null,"firstDayOfWeek":0},"evaluation":{"isHideEvaluationSheet":false},"idle":{"isOnlyOpenIdleWhenCurrentTask":false,"isEnableIdleTimeTracking":true,"minIdleTime":300000,"isUnTrackedIdleResetsBreakTimer":true},"takeABreak":{"isTakeABreakEnabled":false,"isLockScreen":false,"isFocusWindow":false,"takeABreakMessage":"Take a break! You have been working for ${duration} without one. Go away from the computer! Take a short walk! Makes you more productive in the long run!","takeABreakMinWorkingTime":3600000,"motivationalImg":null},"pomodoro":{"isEnabled":false,"duration":1500000,"breakDuration":300000,"longerBreakDuration":900000,"cyclesBeforeLongerBreak":4,"isStopTrackingOnBreak":true,"isStopTrackingOnLongBreak":true,"isManualContinue":false,"isPlaySound":true,"isPlaySoundAfterBreak":false,"isPlayTick":false},"keyboard":{"globalShowHide":"Ctrl+Shift+X","globalToggleTaskStart":null,"globalAddNote":null,"globalAddTask":null,"addNewTask":"Shift+A","addNewNote":"n","openProjectNotes":"Shift+N","openDistractionPanel":"Shift+D","showHelp":"?","toggleBookmarks":"Shift+V","toggleBacklog":"b","goToWorkView":"w","goToSettings":null,"zoomIn":"Ctrl++","zoomOut":"Ctrl+-","zoomDefault":"Ctrl+0","taskEditTitle":"e","taskToggleAdditionalInfoOpen":"i","taskOpenEstimationDialog":"t","taskSchedule":"s","taskToggleDone":"d","taskAddSubTask":"a","taskDelete":"Delete","taskMoveToProject":null,"selectPreviousTask":"k","selectNextTask":"j","moveTaskUp":"Ctrl+Shift+ArrowUp","moveTaskDown":"Ctrl+Shift+ArrowDown","moveToBacklog":"Shift+B","moveToTodaysTasks":"Shift+T","expandSubTasks":null,"collapseSubTasks":null,"togglePlay":"y"},"localBackup":{"isEnabled":true},"sound":{"volume":75,"isPlayDoneSound":true,"isIncreaseDoneSoundPitch":true,"doneSound":"done2.mp3"},"trackingReminder":{"isEnabled":true,"isShowOnMobile":false,"minTime":120000},"sync":{"isEnabled":true,"syncProvider":"WebDAV","syncInterval":60000,"dropboxSync":{"authCode":null,"accessToken":null},"googleDriveSync":{"isAutoSyncToRemote":false,"isNotifyOnSync":false,"isLoadRemoteDataOnStartup":false,"isAutoLogin":false,"isCompressData":true,"syncFileName":"SUPER_PRODUCTIVITY_SYNC.json","_syncFileNameForBackupDocId":null,"_backupDocId":null},"webDav":{"baseUrl":"https://cloud.NEXTCLOUD.net/remote.php/dav/files/C_B/","userName":"C_B","password":"password","syncFilePath":"super-sync.json"}},"googleDriveSync":{"isEnabled":false,"isAutoLogin":false,"isAutoSyncToRemote":false,"isNotifyOnSync":false,"isLoadRemoteDataOnStartup":false,"isCompressData":true,"syncInterval":300000,"syncFileName":"SUPER_PRODUCTIVITY_SYNC.json","_backupDocId":null},"dropboxSync":{"isEnabled":false,"syncInterval":60000,"authCode":null,"accessToken":null,"_backupDocId":null},"__modelVersion":2},"reminders":[],"project":{"ids":["DEFAULT"],"entities":{"DEFAULT":{"id":"DEFAULT","title":"Super Productivity","isArchived":false,"issueIntegrationCfgs":{"JIRA":{"isEnabled":false,"_isBlockAccess":false,"host":null,"userName":null,"password":null,"isWonkyCookieMode":false,"isAutoPollTickets":true,"searchJqlQuery":"","isAutoAddToBacklog":true,"autoAddBacklogJqlQuery":"assignee = currentUser() AND sprint in openSprints() AND resolution = Unresolved","isWorklogEnabled":true,"isAutoWorklog":false,"isAddWorklogOnSubTaskDone":true,"isAllowSelfSignedCertificate":false,"isUpdateIssueFromLocal":false,"isShowComponents":true,"isCheckToReAssignTicketOnTaskStart":false,"storyPointFieldId":null,"isTransitionIssuesEnabled":true,"availableTransitions":[],"transitionConfig":{"OPEN":"DO_NOT","IN_PROGRESS":"ALWAYS_ASK","DONE":"ALWAYS_ASK"},"userToAssignOnDone":null},"GITHUB":{"repo":null,"token":null,"isSearchIssuesFromGithub":false,"isAutoPoll":false,"isAutoAddToBacklog":false,"filterUsername":null},"GITLAB":{"project":null,"token":null,"isSearchIssuesFromGitlab":false,"isAutoPoll":false,"isAutoAddToBacklog":false,"filterUsername":null}},"taskIds":[],"backlogTaskIds":[],"advancedCfg":{"worklogExportSettings":{"cols":["DATE","START","END","TIME_CLOCK","TITLES_INCLUDING_SUB"],"roundWorkTimeTo":null,"roundStartTimeTo":null,"roundEndTimeTo":null,"separateTasksBy":" | ","groupBy":"DATE"}},"theme":{"isAutoContrast":true,"isDisableBackgroundGradient":false,"primary":"#29a1aa","huePrimary":"500","accent":"#ff4081","hueAccent":"500","warn":"#e11826","hueWarn":"500"},"workStart":{},"workEnd":{},"breakTime":{},"breakNr":{}}},"__modelVersion":5.1},"tag":{"ids":[],"entities":{}},"simpleCounter":{"ids":["STANDING_DESK_ID","COFFEE COUNTER"],"entities":{"STANDING_DESK_ID":{"id":"STANDING_DESK_ID","title":"Standing Desk Timer","isEnabled":false,"icon":"airline_seat_recline_normal","iconOn":"directions_walk","type":"StopWatch","triggerOnActions":[],"triggerOffActions":[],"countOnDay":{},"isOn":false},"COFFEE COUNTER":{"id":"COFFEE COUNTER","title":"Coffee Counter","isEnabled":false,"icon":"free_breakfast","type":"ClickCounter","triggerOnActions":[],"triggerOffActions":[],"countOnDay":{},"isOn":false}}},"task":{"ids":[],"entities":{},"currentTaskId":null,"selectedTaskId":null,"taskAdditionalInfoTargetPanel":"Default","lastCurrentTaskId":null,"isDataLoaded":false},"taskArchive":{"ids":[],"entities":{}},"taskRepeatCfg":{"ids":[],"entities":{}},"lastActiveTime":1603267303704,"lastLocalSyncModelChange":1603267303704} main.8b59fe120f7989f6bc26.js:1 IMPORT---> Object main.8b59fe120f7989f6bc26.js:1 Migrating model "Tag" to version from undefined to 1 Object main.8b59fe120f7989f6bc26.js:1 Migrating model "SimpleCounter" to version from undefined to 2 Object main.8b59fe120f7989f6bc26.js:1 Migrating model "TaskRepeat" to version from undefined to 1 Object main.8b59fe120f7989f6bc26.js:1 Migrating model "Task" to version from undefined to 3.3334 Object main.8b59fe120f7989f6bc26.js:1 sync(effect)..... SYNC_DBX_AFTER_ENABLE cloud.NEXTCLOUD.net/remote.php/dav/files/C_B/super-sync.json:1 Failed to load resource: the server responded with a status of 404 (Not Found) main.8b59fe120f7989f6bc26.js:1 WebDAV ↑ Update Remote after no getRevAndLastClientUpdate() main.8b59fe120f7989f6bc26.js:1 Refused to set unsafe header "Content-Length" (anonymous) @ main.8b59fe120f7989f6bc26.js:1 main.8b59fe120f7989f6bc26.js:1 sync(effect)..... I_FOCUS_THROTTLED cloud.NEXTCLOUD.net/remote.php/dav/files/C_B/super-sync.json:1 Failed to load resource: the server responded with a status of 503 (Service Unavailable) main.8b59fe120f7989f6bc26.js:1 Error: Request failed with status code 503 at t.exports (main.8b59fe120f7989f6bc26.js:1) at t.exports (main.8b59fe120f7989f6bc26.js:1) at XMLHttpRequest.p.onreadystatechange [as __zone_symbol__ON_PROPERTYreadystatechange] (main.8b59fe120f7989f6bc26.js:1) at XMLHttpRequest.D (polyfills.250ebd3af63450554a58.js:1) at l.invokeTask (polyfills.250ebd3af63450554a58.js:1) at Object.onInvokeTask (main.8b59fe120f7989f6bc26.js:1) at l.invokeTask (polyfills.250ebd3af63450554a58.js:1) at i.runTask (polyfills.250ebd3af63450554a58.js:1) at u.invokeTask [as invoke] (polyfills.250ebd3af63450554a58.js:1) at _ (polyfills.250ebd3af63450554a58.js:1) (anonymous) @ main.8b59fe120f7989f6bc26.js:1 main.8b59fe120f7989f6bc26.js:1 WebDAV X Upload Request Error main.8b59fe120f7989f6bc26.js:1 Refused to set unsafe header "Content-Length" (anonymous) @ main.8b59fe120f7989f6bc26.js:1 cloud.NEXTCLOUD.net/remote.php/dav/files/C_B/super-sync.json:1 Failed to load resource: the server responded with a status of 503 (Service Unavailable) main.8b59fe120f7989f6bc26.js:1 Error: Request failed with status code 503 at t.exports (main.8b59fe120f7989f6bc26.js:1) at t.exports (main.8b59fe120f7989f6bc26.js:1) at XMLHttpRequest.p.onreadystatechange [as __zone_symbol__ON_PROPERTYreadystatechange] (main.8b59fe120f7989f6bc26.js:1) at XMLHttpRequest.D (polyfills.250ebd3af63450554a58.js:1) at l.invokeTask (polyfills.250ebd3af63450554a58.js:1) at Object.onInvokeTask (main.8b59fe120f7989f6bc26.js:1) at l.invokeTask (polyfills.250ebd3af63450554a58.js:1) at i.runTask (polyfills.250ebd3af63450554a58.js:1) at u.invokeTask [as invoke] (polyfills.250ebd3af63450554a58.js:1) at _ (polyfills.250ebd3af63450554a58.js:1) (anonymous) @ main.8b59fe120f7989f6bc26.js:1 main.8b59fe120f7989f6bc26.js:1 WebDAV X Upload Request Error main.8b59fe120f7989f6bc26.js:1 Service worker registration failed with: TypeError: Failed to register a ServiceWorker for scope ('file:///opt/superProductivity/resources/app.asar/dist/') with script ('file:///opt/superProductivity/resources/app.asar/dist/ngsw-worker.js'): An unknown error occurred when fetching the script. (anonymous) @ main.8b59fe120f7989f6bc26.js:1 DevTools failed to load SourceMap: Could not load content for file:///opt/superProductivity/resources/app.asar/dist/runtime.076604685350bc36956d.js.map: DevTools failed to load SourceMap: Could not load content for file:///opt/superProductivity/resources/app.asar/dist/polyfills.250ebd3af63450554a58.js.map: DevTools failed to load SourceMap: Could not load content for file:///opt/superProductivity/resources/app.asar/dist/main.8b59fe120f7989f6bc26.js.map: DevTools failed to load SourceMap: Could not load content for file:///opt/superProductivity/resources/app.asar/dist/styles.e1c786d55963a75bdeca.css.map: DevTools failed to load SourceMap: Could not load content for file:///opt/superProductivity/resources/app.asar/dist/reminder.5b0fa13d8ca10813efca.worker.js.map: DevTools failed to load SourceMap: Could not load content for file:///opt/superProductivity/resources/app.asar/dist/lz.5d2c2359e92f65d00e61.worker.js.map:

    Error Log (Desktop only)

    • Version used: Android App version 6.0 (latest from play store)
    • Operating System and version: Android 10
    • ~Desktop Environment:~
    • ~Browser Name and version:~

    Current Behavior

    When using the "Sync via Google Drive" - Login Button in the Settings the typical google dialog option appears to select the google account with which you desire to login. If any account is selected the box closes again and the login button is still there and nothing really changed.

    Expected Behavior

    You should be able to login with google to sync your super-productivity related things.

    Steps to Reproduce (for bugs)

    1. Press Settings in the main menu of the android app.
    2. Open the drawer labeled "Sync via Google Drive"
    3. Press "Login"
    4. Select any account

    Console Output

    I think there isn't any console on android. I can add logcat values if useful later.

    ~Error Log (Desktop only)~

    bug 
    opened by tooxo 33
  • Can not

    Can not "Finish your day", notification keeps appearing.

    Your Environment

    • Version used: superproductivity-git 2.11.1.r17.g1ae80248-1
    • Operating System and version: Arch
    • Desktop Environment: XFCE

    Expected Behavior

    I can't "finish" a previous day. When I click dismiss or "finish day" in the notification, I expect that to clear the nag.

    Current Behavior

    I did finish that day last day, the nag is incorrect, and even attempting to do so now it, it keeps telling me I have not.

    Video: https://streamable.com/b4dtb

    Steps to Reproduce (for bugs)

    It may be specific to my database of tasks. I'm not sure if there is an easy way to reproduce this. This is my work task list in work and may contain confidential information, so if needed, I can confidentially provide that.

    Console Output

    No output when taking any actions specific to this bug, beyond this: project.reducer.ts:207 DEFAULT 2019-09-18

    Error Log (Desktop only)

    no logs associated with any of these actions

    Other than that, I've been loving the recent updates. Suuuuch a great program.

    bug help wanted 
    opened by Ghoughpteighbteau 30
  • Extreme resource use

    Extreme resource use

    Your environment: Version 6.1.0 Operating system: Ubuntu 20.04

    Current behavior:

    Since this morning (maybe with the latest update), super-productivity seems to be using a lot of system resources, causing my whole system to slow down (when I typed in other programs, the letters showed up with a delay) and super-productivity itself to freeze multiple times, but without throwing any errors. This occurs in particular when I have the pomodoro timer running.

    When I run top, I see that super-productivity is using 100% (or more) of a CPU: superproductivity_screenshot

    Earlier today, also gnome-shell used a lot of resources, so I suspected the issue was about a new way that super-productivity interacts with gnome-shell. After I have disabled usage of the Ubuntu Top bar by all applications, gnome-shell is more well-behaved again, but the problems with the super-productivity resource use persist.

    Steps to reproduce

    • Start program
    • Start pomodoro timer on project

    Please let me know if I can provide any other information that might help clarify the issue.

    Thanks a lot for your awesome work on this project! I have been using super-productivity every day for the last few months and it really helps me a lot to organize my day and keep track of my time.

    bug external issue 
    opened by meikew 29
  • sync doesn't work accross multiple devices

    sync doesn't work accross multiple devices

    • Version used: snap (3.1.3)
    • Operating System and version: Manjaro
    • Desktop Environment: Cinnamon

    Steps to Reproduce (for bugs)

    1. Sync using google in one device
    2. Open the app in another device and sync

    Error

    Google Drive - Error: [object Object]

    I tried to re-install the app, and clean the local directory and re-log-in, but it didn't work.

    bug help wanted 
    opened by soheilred 29
  • Feature Request: Cross-project daily to do list

    Feature Request: Cross-project daily to do list

    Your Environment

    • Version used:
    • Operating System and version:
    • Desktop Environment:
    • Browser Name and version:

    Expected Behavior

    I work on multiple projects daily and love having the separate backlogs so that I can clearly see what's required on each project and plan my day out. However, throughout the working day it's a bit of a pain to have to switch between projects to see which tasks I had planned. I do flit between projects, doing tasks for each throughout the day. I'd love it if you can have a unified view of the planned tasks so that I have a single list to work from, and prioritise tasks against each other across the projects.

    Current Behavior

    Daily tasks are separate between projects.

    Steps to Reproduce (for bugs)

    Console Output

    Error Log (Desktop only)

    enhancement community feedback wanted 
    opened by ThatRobVK 28
  • [Feature Request] GitLab Integration

    [Feature Request] GitLab Integration

    Lately, GitLab has become more and more relevant as a code hosting platform that has a lot of nice features (some of them aren't available on GitHub). The main selling points to me are unlimited free private repositories and the ability to self-host a free instance of GitLab.

    These were the main reasons I changed from GitHub to GitLab for professional work, and because of this I would love to have GitLab integration from super-productivity.

    GitLab already has issue time tracking but it's kind of clumsy (https://docs.gitlab.com/ee/workflow/time_tracking.html) - it doesn't track spent time automatically, you have to comment on the issue after completing some chunk of work something like /spend 2h 30m. Having direct integration from super-productivity to GitLab would be a killer feature for me!

    There is an API available for leading with issues: https://docs.gitlab.com/ee/api/issues.html

    As a bonus, it would be awesome if the integration could be done with both gitlab.com as well as a self-hosted instance.

    Thanks!

    enhancement help wanted hacktoberfest 
    opened by tiagogala 27
  • copy URL to clipboard

    copy URL to clipboard

    Problem Statement

    I have a task and I attached a URL to it. When I show the attachments, an info panel appears on the right side. Moving the mouse on the URL attachment, 3 options appear: open URL, edit, and delete. Here I'd like to see a 4th option: copy URL to clipboard.

    Rationale

    I use several web browsers, each for a specific task. When I click on open URL, then my main web browser will open this URL. However, if I use a different web browser at the moment, I would prefer to open the link there. The simplest way would be to copy the URL and then I'll open it manually in the browser in which I want.

    Another use case: I want to send this URL to someone in an email. Then copying the URL would be the simplest solution.

    Workaround

    A workaround solution would be to use the edit option and then copy the link without editing it. But it's more steps and when clicking on Edit, the URL is not highlighted by default. Here an easy fix would be to highlight the URL when clicking on Edit. Then Edit and Ctrl+c would do the trick.

    enhancement 
    opened by jabbalaci 3
  • dropbox authorization code: nothing happens AUR

    dropbox authorization code: nothing happens AUR

    SuperProductivity version: 7.5.2 Operating system: Manjaro Linux

    When clicking on "Get Authorization Code" for Dropbox, nothing happens. The browser is not opened. SuperProductivity is launched in the terminal, but no debug info appears there.

    Quick fix: show the URL, then I could open it manually. It may be just the button that doesn't work.

    bug help wanted 
    opened by jabbalaci 5
  • M1 Mac build? (Universal)

    M1 Mac build? (Universal)

    Problem Statement

    Hey will there be an M1 version anytime soon?

    :grey_question: Possible Solution

    :arrow_heading_up: Describe alternatives you've considered

    :heavy_plus_sign: Additional context

    enhancement help wanted 
    opened by orphee-celui-qui-ne-sait-rien 1
  • Make it  more CPU friendly when minimized to tray

    Make it more CPU friendly when minimized to tray

    Problem Statement

    After start using the program my notebook starts the CPU fans. under the CPU utilization it is visible that it takes 3-10% CPU when the app is minimized in the system tray. This is on Desktop/Linux

    :grey_question: Possible Solution

    Suspend all activity when paused and leave only the timers to tick.

    :arrow_heading_up: Describe alternatives you've considered

    :heavy_plus_sign: Additional context

    enhancement help wanted 
    opened by gudata 1
  • Difficult to select task in time tracking reminder

    Difficult to select task in time tracking reminder

    Your Environment

    • Version used: 7.5.2
    • Operating System and version: Windows 8

    Expected Behavior

    In task selecting dialog for time tracking reminder some task should be selected.

    Alternatively the dialog should display a list of available tasks so that user can select a task by mouse.

    Current Behavior

    No task is selected initially. I have to start writing the name of the task, and this can require switching keyboard language.

    Steps to Reproduce (for bugs)

    1. Add some tasks.
    2. Does not start tracking time.
    3. Wait for 2 min.
    4. Select "ADD TO TASK" in time tracking reminder.
    enhancement help wanted 
    opened by hanixer 3
  • Error: Uncaught (in promise): SecurityError: The operation is insecure

    Error: Uncaught (in promise): SecurityError: The operation is insecure

    Steps to Reproduce

    Error Log (Desktop only)

    Console Output

    Error: Uncaught (in promise): SecurityError: The operation is insecure.notify/<@https://app.super-productivity.com/main-es2015.21dfb35b24a982ceb1b9.js:1:2659100fB/<@https://app.super-productivity.com/main-es2015.21dfb35b24a982ceb1b9.js:1:[email protected]://app.super-productivity.com/polyfills-es2015.df6fcf2a87a01af28504.js:1:[email protected]://app.super-productivity.com/main-es2015.21dfb35b24a982ceb1b9.js:1:[email protected]://app.super-productivity.com/main-es2015.21dfb35b24a982ceb1b9.js:1:2658857notifyDesktop/<@https://app.super-productivity.com/main-es2015.21dfb35b24a982ceb1b9.js:1:2658828fB/<@https://app.super-productivity.com/main-es2015.21dfb35b24a982ceb1b9.js:1:[email protected]://app.super-productivity.com/polyfills-es2015.df6fcf2a87a01af28504.js:1:[email protected]://app.super-productivity.com/main-es2015.21dfb35b24a982ceb1b9.js:1:[email protected]://app.super-productivity.com/main-es2015.21dfb35b24a982ceb1b9.js:1:2658775t/this.sessionStartSnack$
    

    Stacktrace

    scheduleResolveOrReject (webpack:///node_modules/zone.js/fesm2015/zone.js:1213:30)
    makeResolver (webpack:///node_modules/zone.js/fesm2015/zone.js:1120:31)
    function (webpack:///node_modules/zone.js/fesm2015/zone.js:1136:32)
    invoke (webpack:///node_modules/zone.js/fesm2015/zone.js:372:25)
    onInvoke (webpack:///node_modules/@angular/core/fesm2015/core.js:28673:32)
    invoke (webpack:///node_modules/zone.js/fesm2015/zone.js:371:51)
    run (webpack:///node_modules/zone.js/fesm2015/zone.js:134:42)
    zone.scheduleMicroTask(source, (webpack:///node_modules/zone.js/fesm2015/zone.js:1276:35)
    invokeTask (webpack:///node_modules/zone.js/fesm2015/zone.js:406:30)
    onInvokeTask (webpack:///node_modules/@angular/core/fesm2015/core.js:28660:32)
    invokeTask (webpack:///node_modules/zone.js/fesm2015/zone.js:405:59)
    task._transitionTo (webpack:///node_modules/zone.js/fesm2015/zone.js:178:46)
    drainMicroTaskQueue (webpack:///node_modules/zone.js/fesm2015/zone.js:582:34)
    

    Meta Info

    META: SP7.5.2 Browser – en-US – Win32 – Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:92.0) Gecko/20100101 Firefox/92.0

    Actions Before Error

    1631808867898: [Task] Add time spent 
    1631808867898: [Tag] Update Work End for Tag 
    1631808867901: [Persistence] Save to DB 
    1631808867901: [Persistence] Save to DB 
    1631808868909: [Task] Add time spent 
    1631808868910: [Tag] Update Work End for Tag 
    1631808868913: [Persistence] Save to DB 
    1631808868913: [Persistence] Save to DB 
    1631808869920: [Task] Add time spent 
    1631808869922: [Tag] Update Work End for Tag 
    1631808869925: [Persistence] Save to DB 
    1631808869925: [Persistence] Save to DB 
    1631808870931: [Task] Add time spent 
    1631808870932: [Tag] Update Work End for Tag 
    1631808870935: [Persistence] Save to DB 
    1631808870935: [Persistence] Save to DB 
    1631808871939: [Task] Add time spent 
    1631808871940: [Tag] Update Work End for Tag 
    1631808871943: [Persistence] Save to DB 
    1631808871943: [Persistence] Save to DB 
    1631808872946: [Task] Add time spent 
    1631808872946: [Tag] Update Work End for Tag 
    1631808872950: [Persistence] Save to DB 
    1631808872951: [Persistence] Save to DB 
    1631808873957: [Task] Add time spent 
    1631808873959: [Tag] Update Work End for Tag 
    1631808873964: [Persistence] Save to DB 
    1631808873964: [Persistence] Save to DB 
    1631808874920: [Pomodoro] Finish Pomodoro Session 
    1631808874939: [Task] UnsetCurrentTask
    
    bug help wanted 
    opened by BigIron-TexasRed 4
  • IndexSizeError: Index or size is negative or greater than the allowed amount

    IndexSizeError: Index or size is negative or greater than the allowed amount

    Steps to Reproduce

    Error Log (Desktop only)

    Console Output

    Stacktrace

    [email protected]://app.super-productivity.com/main-es2015.21dfb35b24a982ceb1b9.js:1:2858900
    ngOnInit/[email protected]://app.super-productivity.com/main-es2015.21dfb35b24a982ceb1b9.js:1:2858129
    [email protected]://app.super-productivity.com/polyfills-es2015.df6fcf2a87a01af28504.js:1:11389
    [email protected]://app.super-productivity.com/polyfills-es2015.df6fcf2a87a01af28504.js:1:7158
    [email protected]://app.super-productivity.com/main-es2015.21dfb35b24a982ceb1b9.js:1:142314
    [email protected]://app.super-productivity.com/polyfills-es2015.df6fcf2a87a01af28504.js:1:7079
    [email protected]://app.super-productivity.com/polyfills-es2015.df6fcf2a87a01af28504.js:1:2554
    [email protected]://app.super-productivity.com/polyfills-es2015.df6fcf2a87a01af28504.js:1:8208
    [email protected]://app.super-productivity.com/polyfills-es2015.df6fcf2a87a01af28504.js:1:20169
    [email protected]://app.super-productivity.com/polyfills-es2015.df6fcf2a87a01af28504.js:1:20415
    
    

    Meta Info

    META: SP7.5.2 Browser – en-US – Linux x86_64 – Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:92.0) Gecko/20100101 Firefox/92.0

    Actions Before Error

    1631279498390: [Persistence] Save to DB 
    1631279498391: [Persistence] Save to DB 
    1631279499370: [Task] Add time spent 
    1631279499382: [Tag] Update Work End for Tag 
    1631279499402: [Persistence] Save to DB 
    1631279499404: [Persistence] Save to DB 
    1631279500371: [Task] Add time spent 
    1631279500384: [Tag] Update Work End for Tag 
    1631279500407: [Persistence] Save to DB 
    1631279500412: [Persistence] Save to DB 
    1631279501371: [Task] Add time spent 
    1631279501381: [Tag] Update Work End for Tag 
    1631279501395: [Persistence] Save to DB 
    1631279501398: [Persistence] Save to DB 
    1631279502372: [Task] Add time spent 
    1631279502379: [Tag] Update Work End for Tag 
    1631279502395: [Persistence] Save to DB 
    1631279502398: [Persistence] Save to DB 
    1631279503371: [Task] Add time spent 
    1631279503379: [Tag] Update Work End for Tag 
    1631279503392: [Persistence] Save to DB 
    1631279503393: [Persistence] Save to DB 
    1631279504372: [Task] Add time spent 
    1631279504389: [Tag] Update Work End for Tag 
    1631279504409: [Persistence] Save to DB 
    1631279504413: [Persistence] Save to DB 
    1631279505372: [Task] Add time spent 
    1631279505380: [Tag] Update Work End for Tag 
    1631279505391: [Persistence] Save to DB 
    1631279505394: [Persistence] Save to DB
    
    bug help wanted 
    opened by eentenza 4
  • Keyboard-Issues Web App

    Keyboard-Issues Web App

    Hi, First of all: Such great App and Project! Thank you very much!!

    In the Web App on my iPhone 7 (iOS 14.7.1) the keyboard doesn’t appear, when I want to rename a task. I can mark the name but there is no keyboard to change the name or project. Same problem, when I want to make a subtask. No keyboard to type a name. Would be really great, if this could be fixed.

    Greetings, Sebastian.

    help wanted good first issue 
    opened by m4nured 5
  • Screen rendering /artefacts

    Screen rendering /artefacts

    2 weird rectangular white blocks appearing behind tasks on task screen -see url. http://u.pc.cd/Gvv Acer Spin 713 Chromebook, using v7.5.2 from PlayStore. Always appear, always same places. Notice also removes the 'black block' format around lowest task on the list.

    bug help wanted 
    opened by 1MG1mG 1
  • Icons are messed up offline in android app

    Icons are messed up offline in android app

    Your Environment

    • Version used: 7.5.2 from Google Play store
    • Operating System and version: Android 7.1
    • Desktop Environment:
    • Browser Name and version:

    Expected Behavior

    Load normally

    Current Behavior

    Loads and instead of some icons there is large text and basically unusable

    w23rfewfgeqfgq

    It's same as #756

    Steps to Reproduce (for bugs)

    1. Open the app with internet turned off

    Note that it does work in browser and when installed as an app from a browser

    bug android 
    opened by sandorex 2
Releases(v7.5.2)
Owner
Johannes Millan
I love programming!
Johannes Millan
The break time reminder app

Stretchly The break time reminder app Stretchly is a cross-platform Electron app that reminds you to take breaks when working on your computer. Table

Jan Hovancik 2.8k Sep 22, 2021
QOwnNotes is a plain-text file notepad and todo-list manager with markdown support and Nextcloud / ownCloud integration.

QOwnNotes Installation | Changelog | Issues | Shortcuts | Documentation | Screenshots | Nextcloud API | Nextcloud App Page | ownCloud API | Telegram G

Patrizio Bekerle 2.2k Sep 20, 2021
A tool for tagging files and archiving tasks.

PDF Archiver Archive all incoming documents digitally to access and search them in an easier way. Transfer the sorted documents to your smartphone or

PDF Archiver 198 Sep 15, 2021
No-Fuss Time Management App

Strategr No-Fuss Time Management Stategr helps you maximize your productivity, giving you the quickest and most effective way to time-box your day wit

Dmitry Khrykin 155 Sep 18, 2021
Toggl Desktop app for Windows, Mac and Linux

Native desktop applications for the leading time tracking tool Toggl. About β€’ Download β€’ Build β€’ Change log β€’ Contribute About Toggl Desktop is a Togg

Toggl Open Source 1.6k Sep 23, 2021
Cross-platform application to open any website or media in a floating window

Pennywise Cross-platform application to open website or media in a floating window Pennywise opens any website or media in a small floating window tha

Kamran Ahmed 3.3k Sep 19, 2021
Elegant Microsoft To-Do desktop app

Ao Elegant Microsoft To-Do desktop app Description Ao is an unofficial, featureful, open source, community-driven, free Microsoft To-Do app, used by p

Klaus Sinani 1.9k Sep 15, 2021
The open source Tab Manager Extension for Safari.

Ultra TabSaver The open source Tab Manager for Safari. Table of Contents Features Branches How to use it How does it work Building and running To do l

Swift open source 195 Sep 20, 2021
Quicksilver Project Source

About Quicksilver on Github This repository contains the current source code of Quicksilver. If you're having issues with the latest Quicksilver versi

Quicksilver for macOS 2.5k Sep 13, 2021
A simple but highly customizable `UICollectionViewLayout` for `UICollectionView`.

CollectionViewPagingLayout Layout Designer SnapshotTransformView ScaleTransformView StackTransformView Custom implementations About This is a simple b

Amir Khorsandi 1.4k Sep 18, 2021
Quickwords is a productivity app, to get on with your work quicker.

Table of Contents What is Quickwords? Installation MacOS Linux & Windows Privacy and Security Contribution FAQ Authors License What is Quickwords? Qui

null 103 Jul 27, 2021
Clean and simple clipboard manager for developers

Flycut Description: Flycut is a clean and simple clipboard manager for developers. It's based on an open source app called Jumpcut. On the Mac, every

Gennadii Potapov 1.8k Sep 14, 2021
Lightweight clipboard manager for macOS

Maccy Maccy is a lightweight clipboard manager for macOS. It keeps the history of what you copy and lets you quickly navigate, search, and use previou

Alex Rodionov 3k Sep 23, 2021
πŸŽ‰ Flexible invoicing desktop app with beautiful customizable templates.

Manta A desktop application for creating invoices with beautiful and customizable templates. Screenshots β€’ Features β€’ Downloads β€’ Technologies β€’ Why?

Hung Q. Le 5.1k Sep 17, 2021
Open Source macOS pomodoro app. Pomodoro Cycle

Pomodoro cycle macOS The Pomodoro Technique is a time management method developed by Francesco Cirillo in the late 1980s. The technique uses a timer t

Denis Z. 37 Sep 13, 2021
Open-source productivity booster with a brain

Cerebro Usage You can download the latest version on releases page. After installation use default shortcut ctrl+space to show an app window. You can

Cerebro 7.1k Sep 23, 2021
A macOS/iOS apps to treat ideas as links of concepts.

Linked Ideas A macOS application to write down and connect ideas and an iOS application to read documents. Objective Linked Ideas is an application to

Felipe Espinoza 300 Sep 12, 2021
Personal db information management system.

The Information Management System This tool is so simple that most people don't understand how to use it. TL;DR This is a personal database which stor

null 43 Sep 23, 2021
πŸ“˜ Manga reader app for Mac OS X

Yomu Manga Reader App for Mac OS, feel free to request new features on issue tracker Requirements Mac OS 10.11+ Install Download Latest yomu installer

Sendy Halim 165 Sep 13, 2021