diff --git a/.github/annotations/wiki-lint-problem-matcher.json b/.github/annotations/wiki-lint-problem-matcher.json new file mode 100755 index 000000000..733b4b408 --- /dev/null +++ b/.github/annotations/wiki-lint-problem-matcher.json @@ -0,0 +1,17 @@ +{ + "problemMatcher": [ + { + "owner": "pymarkdown-error", + "severity": "error", + "pattern": [ + { + "regexp": "^([^:]+):(\\d+):(\\d+):\\s+([^:]+:\\s+.+)$", + "file": 1, + "line": 2, + "column": 3, + "message": 4 + } + ] + } + ] +} diff --git a/.github/workflows/wiki-sync.yml b/.github/workflows/wiki-sync.yml new file mode 100755 index 000000000..a76abbd1c --- /dev/null +++ b/.github/workflows/wiki-sync.yml @@ -0,0 +1,160 @@ +--- +name: GitHub Wiki - Lint and (r)Sync + +'on': + pull_request: + branches: [master, main] + paths: + - "docs/wiki/**" + - .github/workflows/wiki-sync.yml + - .github/annotations/wiki-lint-problem-matcher.json + push: + branches: [master, main] + paths: + - "docs/wiki/**" + - .github/workflows/wiki-sync.yml + - .github/annotations/wiki-lint-problem-matcher.json + +concurrency: + group: wiki + cancel-in-progress: true + +permissions: + contents: write + +jobs: + lint: + name: Lint YAML and Markdown + runs-on: ubuntu-latest + env: + GH_A9S: .github/annotations + GH_W7S: .github/workflows + + steps: + - name: Checkout Code + uses: actions/checkout@v6 + + - name: Set up Python + uses: actions/setup-python@v6 + with: + python-version: '3.13' + + - name: Install dependencies + run: | + python -m pip install --upgrade pip + python -m pip install yamllint pymarkdownlnt + + - name: Add Problem Matcher (for Annotations) + id: problem_matcher + run: echo "::add-matcher::${GH_A9S}/wiki-lint-problem-matcher.json" + + - name: Lint with yamllint + id: yamllint + run: | + yamllint \ + --format github \ + "${GH_W7S}/wiki-sync.yml" + + - name: Lint with pymarkdownlnt + if: > + steps.yamllint.outcome == 'success' && + steps.problem_matcher.outcome == 'success' + run: | + pymarkdownlnt \ + --disable-rules line-length \ + scan --recurse "docs/wiki" + + sync: + name: Publish to GitHub Wiki + needs: lint + if: '!cancelled()' + # if: needs.lint.result == 'success' + runs-on: ubuntu-latest + env: + # Using [standard bot credentials](https://github.com/actions/checkout) + GIT_AUTHOR_NAME: github-actions[bot] + GIT_AUTHOR_EMAIL: 41898282+github-actions[bot]@users.noreply.github.com + GIT_COMMITTER_NAME: github-actions[bot] + GIT_COMMITTER_EMAIL: 41898282+github-actions[bot]@users.noreply.github.com + + CODE_ROOT: code-root + WIKI_SRC: code-root/docs/wiki + WIKI_ROOT: wiki-root + + steps: + - name: Checkout Code + uses: actions/checkout@v6 + with: + repository: ${{ github.repository }} + path: ${{ env.CODE_ROOT }} + + - name: Checkout Wiki + uses: actions/checkout@v6 + with: + repository: ${{ github.repository }}.wiki + path: ${{ env.WIKI_ROOT }} + + - name: Verify Source and Target Git Checkouts + run: | + # -------------------------------------------------------------------- + echo "::group::File and Directory Checks for ${WIKI_SRC}" + if [ ! -d "${CODE_ROOT}/.git" ]; then + echo "::error::Git directory for ${CODE_ROOT} is absent." + else + echo "Git directory for ${CODE_ROOT} is present." + fi + ls -lAh "${WIKI_SRC}" + echo "::endgroup::" + # -------------------------------------------------------------------- + echo "::group::File and Directory Checks for ${WIKI_ROOT}" + if [ ! -d "${WIKI_ROOT}/.git" ]; then + echo "::error::Git directory for ${WIKI_ROOT} is absent." + else + echo "Git directory for ${WIKI_ROOT} is present." + fi + ls -lAh "${WIKI_ROOT}" + echo "::endgroup::" + # -------------------------------------------------------------------- + + - name: Mirror docs/wiki to GitHub Wiki + run: | + # RSYNC Options: assume that the code is always the source of truth + # RSYNC_DRY_RUN: "0" + # Hard mirror: overwrite + delete removed files and delete empty dirs + # Preserve existing '.git' in GH Wiki + # Report on changes in case dry-run debugging is needed + RSYNC_OPTIONS=( + --archive + --delete + --prune-empty-dirs + --exclude='.git' + --itemize-changes + --stats + ) + + # Optional dry-run for testing. + if [[ "${RSYNC_DRY_RUN:-0}" == "1" ]]; then + echo "::warning::DRY RUN --- no changes will be written" + RSYNC_OPTIONS+=(--dry-run) + fi + + # Debug mode (warning: does not do a dry-run on its own!) + if [[ "${ACTIONS_STEP_DEBUG:-}" == "true" ]]; then + RSYNC_OPTIONS+=(-vv) + fi + + # Mirror the code to the wiki. + rsync "${RSYNC_OPTIONS[@]}" "${WIKI_SRC}"/ "${WIKI_ROOT}" + + - name: Switch, Commit, and Push + working-directory: ${{ env.WIKI_ROOT }} + run: | + git add -A # preferred over `git add .` in order to include deletions + if ! git diff-index --quiet HEAD; then + git commit -m "docs(wiki): auto-publish via wiki-sync.yml" + git push --force-with-lease # ensures edits in wiki don't block + else + # Expected if modifying only the YML and not the wiki content. + echo "::warning::No changes found to be committed." + echo "*No changes found to be committed.*" >> "$GITHUB_STEP_SUMMARY" + fi diff --git a/docs/wiki/0.-Meta.md b/docs/wiki/0.-Meta.md new file mode 100755 index 000000000..7d4f9d7ae --- /dev/null +++ b/docs/wiki/0.-Meta.md @@ -0,0 +1,10 @@ +This Wiki is structured based on the [Diátaxis](https://diataxis.fr/) framework for documentation. A more practical description of how to implement it is found at [[https://docs.openedx.org/en/open-release-sumac.master/documentors/concepts/content_types.html#open-edx-diataxis-guide]]. + +> [!quote] +> The [Diataxis framework](https://diataxis.fr/) is an approach to quality in technical documentation and creates a systematic organization. Diataxis identifies four modes of documentation: +> - [[https://docs.openedx.org/en/open-release-sumac.master/documentors/concepts/content_types.html#quickstart]]: teach you how to do something +> - [[https://docs.openedx.org/en/open-release-sumac.master/documentors/concepts/content_types.html#id2]]: tell you what to do to solve a problem or complete a task +> - [[https://docs.openedx.org/en/open-release-sumac.master/documentors/concepts/content_types.html#reference]]: factual, static information +> - [[https://docs.openedx.org/en/open-release-sumac.master/documentors/concepts/content_types.html#concept]]: explain the theory, context, purpose, and/or utility of something + +[[Contributing|https://github.com/johannesjo/super-productivity#hearts-contributing]] to Super Productivity \ No newline at end of file diff --git a/docs/wiki/0.00-Meta.md b/docs/wiki/0.00-Meta.md new file mode 100755 index 000000000..b02fe7b24 --- /dev/null +++ b/docs/wiki/0.00-Meta.md @@ -0,0 +1,31 @@ +This Wiki is structured based on the [Diátaxis](https://diataxis.fr/) framework for documentation. A more practical description of how to implement it is found at [[https://docs.openedx.org/en/open-release-sumac.master/documentors/concepts/content_types.html#open-edx-diataxis-guide]]. + + +> The [Diataxis framework](https://diataxis.fr/) is an approach to quality in technical documentation and creates a systematic organization. Diataxis identifies four modes of documentation: +> - [[https://docs.openedx.org/en/open-release-sumac.master/documentors/concepts/content_types.html#quickstart]]: teach you how to do something +> - [[https://docs.openedx.org/en/open-release-sumac.master/documentors/concepts/content_types.html#id2]]: tell you what to do to solve a problem or complete a task +> - [[https://docs.openedx.org/en/open-release-sumac.master/documentors/concepts/content_types.html#reference]]: factual, static information +> - [[https://docs.openedx.org/en/open-release-sumac.master/documentors/concepts/content_types.html#concept]]: explain the theory, context, purpose, and/or utility of something + + +[[Contributing|https://github.com/johannesjo/super-productivity#hearts-contributing]] to Super Productivity + + + +1.-Quickstarts.md + ## Getting-Started.md + Can link to other How_To via anchor links. +2.-How_To.md + Download Instructions + Create Tasks and all other relevant Guides from the dev.to guide + Contribute to the Wiki (describe the basic structure and principles, etc. and then styling) +3. Concepts + - What is a concept? Answers a question. + Make connections to other things. + Provide background and context. + (About) Topic should be implicit. +4. Reference + - Keyboard Shortcuts + - User Data Location + - Known Incompatibilities? + - API \ No newline at end of file diff --git a/docs/wiki/1.-Quickstarts.md b/docs/wiki/1.-Quickstarts.md new file mode 100755 index 000000000..37ea4f6d6 --- /dev/null +++ b/docs/wiki/1.-Quickstarts.md @@ -0,0 +1,66 @@ + +### Getting Started +* Desktop Versus Web Version +* [[Downloading Desktop App|https://github.com/johannesjo/super-productivity#computer-downloads--install]] +* [[Accessing Web Version|https://github.com/johannesjo/super-productivity#globe_with_meridians-web-version]] +* Upgrading +* Uninstalling + +### [[3.-Concepts#Views]] +* The Today Page +* Timeline +* Scheduled Tasks +* Projects +* Tags + +### [[3.-Concepts#Tasks]] + +* Adding New Tasks +* Task Attributes +* Projects and Tags +* Estimating Time +* Subtasks +* Scheduled Tasks +* Repeat Tasks + +### [[3.-Concepts#Time-Tracking]] +* Starting the Task +* How Time is Logged +* Marking Tasks Complete +* Estimated vs Actual Time + +### [[3.-Concepts#Productivity-Helpers]] +* Timers (Pomodoro and Simple) +* Break Reminders +* Idle Time Reminders + +### [[3.-Concepts#Projects]] +* Customizing Project Appearance +* Notes +* Bookmarks +* Hiding Projects + +### [[3.-Concepts#Completing-Your-Day]] +* Reflection +* Metrics +* Task Archiving + +### [[3.-Concepts#Reporting]] +* Quick History +* Worklog +* Metrics + +### [[3.-Concepts#Managing-Your-Data]] +* Importing data +* Exporting +* Syncing +* Backups +* Where Data is Stored + +### [[3.-Concepts#Integrations-with-Other-Apps]] +* Jira +* GitHub +* GitLab +* OpenProject + + diff --git a/docs/wiki/1.00-Quickstarts.md b/docs/wiki/1.00-Quickstarts.md new file mode 100755 index 000000000..120847af1 --- /dev/null +++ b/docs/wiki/1.00-Quickstarts.md @@ -0,0 +1,50 @@ +# Index of `Quickstart` Guides + +## Uncategorized + +### [[1.01-First-Steps]] + +Check out *Super Productivity 101* a.k.a. [[1.01-First-Steps|First Steps]] where we will teach you: +- how to use Super Productivity in the web app. +- how to install the desktop or mobile app. +- how to find other resources once you are done with the basics. + +### [[1.02-Configure-Data-Synchronization]] + +1. [[2.08-Choose-Sync-Backend]] +2. [[2.09-Configure-Sync-Backend]] + 1. WebDAV + 2. Dropbox + 3. Other/Custom +3. Tweak the Settings in [[3.02-Settings-and-Preferences#sync-and-export.Sync-and-Export]] +4. Ensure data safety by knowing how to [[2.02-Restore-Data-From-Backup]] + +### 1.03 Example Workflow 1 +- settings used +- project and/or tag usage and naming +- time tracking and focus mode usage + +### 1.45 Example Workflow 2 +- settings used +- project and/or tag usage and naming +- time tracking and focus mode usage + +### 1.34 Example Workflow 3 +- settings used +- project and/or tag usage and naming +- time tracking and focus mode usage + +# How to Write `Quickstarts` +The `1.XX` sections should strive to follow these [[https://docs.openedx.org/en/open-release-sumac.master/documentors/concepts/content_types.html#technical-guidelines]]. + +By following these recommendations, you will be able to write a good-quality Quickstart: + +- Add the Quickstart to the title to guide the reader. +- Teach by doing. +- Use a friendly and professional tone. +- The learning objective should be apparent from the beginning. Setting expectations from the start allows the learners to see themselves building towards the completed goal as they work. +- Do not omit the “obvious.” Your learners follow the quickstart because they do not know about that topic or product. +- Every step the learner follows should produce an understandable result, however small. +- Your Quickstart should work for all users every time. This means you must consider different types of devices and software and test your Quickstart once a year to ensure it is updated. +- Be specific about actions and outcomes. +- Explain what’s necessary and nothing more. Your guidance must remain focused on achieving the stated learning objective. \ No newline at end of file diff --git a/docs/wiki/1.01-First-Steps.md b/docs/wiki/1.01-First-Steps.md new file mode 100755 index 000000000..55c786f3a --- /dev/null +++ b/docs/wiki/1.01-First-Steps.md @@ -0,0 +1,14 @@ +Welcome! +This series of notes will get you up and running right away so you can see if Super Productivity works for you. + +First, walk through the most basic tasks in the Web-version of the App in [[1.01a-First-Steps_Quick-Tour]]. +What is covered: +- adding tasks +- editing tasks +- deleting tasks +- using the time tracker +- Sync settings and their importance + +If you are ready to move up to the Desktop version take a look at [[1.01b-First-Steps_Download-and-Install]]. + +With the basics sorted out you will likely want to start doing *more*. [[1.01c-First-Steps_Additional-Resources]] will help direct you to solve specific problems or answer questions. \ No newline at end of file diff --git a/docs/wiki/1.01a-First-Steps_Quick-Tour.md b/docs/wiki/1.01a-First-Steps_Quick-Tour.md new file mode 100755 index 000000000..c7e13e5e8 --- /dev/null +++ b/docs/wiki/1.01a-First-Steps_Quick-Tour.md @@ -0,0 +1,59 @@ +### The Basics of 'Super Productivity' + +Open the [Web App](https://app.super-productivity.com/). This doesn't contain all the features or capabilities of the desktop version but it's more than enough to get started. + +There is an interactive tour that will greet you at first. These notes follow this tour closely. +![[assets/1.01-First-Steps-welcome.png]] + +Use the "+" button in the top right or the keyboard shortcut `Shift+A` to do so. + +![[assets/1.01-First-Steps-create-task.png]] + +Add as many tasks as desired. There is a short-hand syntax available that is similar to many other task managers. Press 'Escape' or click outside the task overlay when done. + +![[assets/1.01-First-Steps-finish-task-creation.png]] + +*Super Productivity* integrates time tracking as a core feature. It is easy to remove or add time usage later if the idea of a running stopwatch adds too much pressure. Starting and stopping can be done at anytime no matter where you are in the app. + +![[assets/1.01-First-Steps-start-time-tracking.png]] + +![[assets/1.01-First-Steps-pause-time-tracking.png]] + +For any task in the list, you can open a side panel to edit details any details associated with it. + +![[assets/1.01-First-Steps-task-details.png]] + +![[assets/1.01-First-Steps-task-details-1.png]] + +To delete a task, right click on it to open it up and the "Delete Task" button will be at the bottom. 'Backspace' will accomplish the same thing if the task is selected. + +![[assets/1.01-First-Steps-delete-task.png]] + +Continue with the Quick Tour to see the other areas such as Projects and Issues. Open up Settings. + +![[assets/1.01-First-Steps-settings-sync-1.png]] + +The Web App is limited to your browser on a single computer at first. Later on if you find that Super Productivity works well for you it is very likely you will want to configure "Syncing". Even if you only use a single computer, using "Sync" will ensure that all your data is saved reliably. We can ignore "Sync Settings" for now. + +![[assets/1.01-First-Steps-settings-sync-2.png]] + +--- + +The Quick Tour doesn't cover this next part but it will eventually come up. On the main "Today" view that we have been looking at there is a "Finish Day" button: +![[assets/1.01-First-Steps-finish-day-0.png]] + +This will move your completed tasks to the "Archive" and present you with an End-of-Day report for you to review. The first section sums your time tracked compared to your time estimates. + +![[assets/1.01-First-Steps-finish-day-1.png]] + +The second section is entirely subjective and help track trends of how you feel while working. + +![[assets/1.01-First-Steps-finish-day-2.png]] + + +--- + +That's it! *Super Productivity* is still undergoing rapid development and supports a wide variety of working styles. With flexibility comes complexity... so focus on the basics of adding and managing tasks and learning to work with the time tracker for now. There are many options and ways to configure the app to accommodate you when that time comes. + +See [[1.01b-First-Steps_Download-and-Install]] for more. + diff --git a/docs/wiki/1.01b-First-Steps_Download-and-Install.md b/docs/wiki/1.01b-First-Steps_Download-and-Install.md new file mode 100755 index 000000000..edbdb134c --- /dev/null +++ b/docs/wiki/1.01b-First-Steps_Download-and-Install.md @@ -0,0 +1,13 @@ +See [[1.01a-First-Steps_Quick-Tour]] for the intro that precedes this. + +--- + +### Download and Install + +[[1.01b-First-Steps_Download-and-Install]] + +Include additional guidance here as needed. It's possible to just use the Web app version too. + +--- + +See [[1.01c-First-Steps_Additional-Resources]] for more. \ No newline at end of file diff --git a/docs/wiki/1.01c-First-Steps_Additional-Resources.md b/docs/wiki/1.01c-First-Steps_Additional-Resources.md new file mode 100755 index 000000000..d49d15059 --- /dev/null +++ b/docs/wiki/1.01c-First-Steps_Additional-Resources.md @@ -0,0 +1,9 @@ +If you make any errors, you can restore your data from backups. Refer to [[2.02-Restore-Data-From-Backup]]. + +!TODO: Describe some of these in more detail: +![[assets/1.01c-First-Steps_Additional-Resources-app-help.png]] + +[[1.02-Configure-Data-Synchronization]] + +Example Workflows in the future such as: +[[1.00-Quickstarts#1.03 Example Workflow 1]] \ No newline at end of file diff --git a/docs/wiki/1.02-Configure-Data-Synchronization.md b/docs/wiki/1.02-Configure-Data-Synchronization.md new file mode 100755 index 000000000..e69de29bb diff --git a/docs/wiki/2.-How_To.md b/docs/wiki/2.-How_To.md new file mode 100755 index 000000000..67775a284 --- /dev/null +++ b/docs/wiki/2.-How_To.md @@ -0,0 +1,126 @@ +## Downloads & Install + +### All Platforms + +[[../releases|Install from the releases page]]. + +### Windows + +Due to certification issues it's recommended to download the app from the Microsoft Store: + +English badge + +You can also install the app using [Chocolatey](https://community.chocolatey.org/packages/super-productivity): + +```powershell +choco install super-productivity +``` + +### Linux + +#### Snap - Most distributions + +Install via command-line: + +```bash +# stable +sudo snap install superproductivity + +# edge channel releases +sudo snap install --channel=edge superproductivity + +# it is also recommended to disable updates to the app while it is running: +sudo snap set core experimental.refresh-app-awareness=true +``` + + + Get it from the Snap Store + + +#### Flatpak - Most distributions + +Must install Flatpak first. See [setup instructions for all distributions](https://flathub.org/setup). + +Install via command-line: + +```bash +# install +flatpak install flathub com.super_productivity.SuperProductivity + +# run +flatpak run com.super_productivity.SuperProductivity +``` + + + Get it on Flathub + + +#### Aur - Arch Linux + +```bash +git clone https://aur.archlinux.org/superproductivity-bin.git +cd superproductivity-bin +makepkg -si +``` + +#### AppImage + +If you encounter problems, please have a look here: +https://github.com/super-productivity/super-productivity/issues/3193#issuecomment-2131315513 + +### MacOS + +Install via [homebrew cask](https://github.com/caskroom/homebrew-cask): + +```bash +brew install --cask superproductivity +``` + + + App Store Badge + + +### Android + +A new version of the Android app is now available with **Connectivity-Free Mode**, allowing you to use the app without an internet connection. + +This update offers more flexibility, supporting both fully offline usage and integration with services like WebDAV and Dropbox for syncing. Enjoy a smoother, more reliable experience whether you're online or offline. + +Stay tuned for even more exciting updates! + +You can find the Android app here: + + + App Store Badge + + + F-Droid Badge + + +The sources can be [[../android|found here]]. + + + +###### Restore Data From Backup + +**Standard Method** +The backup path should be shown under settings and then "Automatic Backups". You can then import the backup under "Import / Export". + +**Alternative Method: Pre-Clearing Application** +In case the app does not properly start (e.g. [inconsistent task state](https://github.com/johannesjo/super-productivity/issues/3052)), the data must be cleared first: + +1. locate the backup and possibly make another copy of it (not strictly necessary, but can't hurt :)) +2. start the app +3. hit strg+shift+i to open the dev tools +4. go to application/storage +5. hit clear site data +6. hit strg+r to reload the app +7. within SP you go to settings and import the previously located backup \ No newline at end of file diff --git a/docs/wiki/2.00-How_To.md b/docs/wiki/2.00-How_To.md new file mode 100755 index 000000000..0a68883da --- /dev/null +++ b/docs/wiki/2.00-How_To.md @@ -0,0 +1,62 @@ +# Index of `How To` Guides + +## Setup and Configuration + +### 2.01-Download-and-Install + +- [[2.01a-Download-and-Install_Windows|Windows]] +- [[2.01b-Download-and-Install_Linux|Linux]] +- [[2.01c-Download-and-Install_MacOS|MacOS]] +- [[2.01d-Download-and-Install_Android|Android]] + +For all platforms, you can always install [[../../releases|from the releases page]] if you prefer. + +### [[2.02-Restore-Data-From-Backup]] + +### Adjust Common Settings (?) + +## Tasks + +### [[2.03-Add-Tasks]] +Include all the actions that branch out from this such as subtasks, scheduling, repetition, and integrations via [[4.00-Concepts#Integrations-with-Other-Apps]]. + +### [[2.04-Manage-Subtasks]] + +### [[2.05-Manage-Scheduled-Tasks]] + +### [[2.06-Manage-Repeating-Tasks]] + +Time-Tracking +- Starting the Task +- Marking Tasks Complete +- Estimated vs Actual Time + +Projects and Tags +- Customizing Project Appearance +- Hiding Projects +- Use Tags + +Complete the Day +- How to Complete the Day + +Managing Your Data +- Importing data +- Exporting +- Syncing +- [[2.02-Restore-Data-From-Backup]] + +Integrations +- How to configure for each + +# How to Write a `How To` +The `2.XX` sections should strive to follow these [[https://docs.openedx.org/en/open-release-sumac.master/documentors/concepts/content_types.html#id3]]. + +There is an assumed "How to..." preceding `2.XX` note titles. + +By following these recommendations, you will be able to write good quality how-to guides: + +- Describe a sequence of actions. A how-to guide contains a sequence of actions that have an order. +- Solve a particular task. The problem or task is the concern of a how-to guide: stick to that practical goal. +- Do not explain concepts—link to other documents for further explanation. +- Omit the unnecessary. Practical usability is more helpful than completeness. +- Pay attention to naming. Choose action-based titles that say precisely what the how-to guide shows, such as “Import A Course” or “Copy And Paste Course Content.” \ No newline at end of file diff --git a/docs/wiki/2.01a-Download-and-Install_Windows.md b/docs/wiki/2.01a-Download-and-Install_Windows.md new file mode 100755 index 000000000..47a28be5b --- /dev/null +++ b/docs/wiki/2.01a-Download-and-Install_Windows.md @@ -0,0 +1,9 @@ +Due to certification issues it's recommended to download the app from the Microsoft Store: + +English badge + +You can also install the app using [Chocolatey](https://community.chocolatey.org/packages/super-productivity): + +```powershell +choco install super-productivity +``` \ No newline at end of file diff --git a/docs/wiki/2.01b-Download-and-Install_Linux.md b/docs/wiki/2.01b-Download-and-Install_Linux.md new file mode 100755 index 000000000..9cb01765d --- /dev/null +++ b/docs/wiki/2.01b-Download-and-Install_Linux.md @@ -0,0 +1,49 @@ +#### Snap - Most distributions + +Install via command-line: + +```bash +# stable +sudo snap install superproductivity + +# edge channel releases +sudo snap install --channel=edge superproductivity + +# it is also recommended to disable updates to the app while it is running: +sudo snap set core experimental.refresh-app-awareness=true +``` + + + Get it from the Snap Store + + +#### Flatpak - Most distributions + +Must install Flatpak first. See [setup instructions for all distributions](https://flathub.org/setup). + +Install via command-line: + +```bash +# install +flatpak install flathub com.super_productivity.SuperProductivity + +# run +flatpak run com.super_productivity.SuperProductivity +``` + + + Get it on Flathub + + +#### Aur - Arch Linux + +```bash +git clone https://aur.archlinux.org/superproductivity-bin.git +cd superproductivity-bin +makepkg -si +``` + +#### AppImage + +If you encounter problems, please have a look here: +https://github.com/super-productivity/super-productivity/issues/3193#issuecomment-2131315513 \ No newline at end of file diff --git a/docs/wiki/2.01c-Download-and-Install_MacOS.md b/docs/wiki/2.01c-Download-and-Install_MacOS.md new file mode 100755 index 000000000..8899cc503 --- /dev/null +++ b/docs/wiki/2.01c-Download-and-Install_MacOS.md @@ -0,0 +1,13 @@ +### MacOS + +Install via [homebrew cask](https://github.com/caskroom/homebrew-cask): + +```bash +brew install --cask superproductivity +``` + + + App Store Badge + \ No newline at end of file diff --git a/docs/wiki/2.01d-Download-and-Install_Android.md b/docs/wiki/2.01d-Download-and-Install_Android.md new file mode 100755 index 000000000..63acd2dda --- /dev/null +++ b/docs/wiki/2.01d-Download-and-Install_Android.md @@ -0,0 +1,22 @@ +A new version of the Android app is now available with **Connectivity-Free Mode**, allowing you to use the app without an internet connection. + +This update offers more flexibility, supporting both fully offline usage and integration with services like WebDAV and Dropbox for syncing. Enjoy a smoother, more reliable experience whether you're online or offline. + +Stay tuned for even more exciting updates! + +You can find the Android app here: + + + App Store Badge + + + F-Droid Badge + + +The sources can be [[../../android|found here]]. \ No newline at end of file diff --git a/docs/wiki/2.02-Restore-Data-From-Backup.md b/docs/wiki/2.02-Restore-Data-From-Backup.md new file mode 100755 index 000000000..ab398361f --- /dev/null +++ b/docs/wiki/2.02-Restore-Data-From-Backup.md @@ -0,0 +1,13 @@ +**Standard Method** +The backup path should be shown under settings and then "Automatic Backups". You can then import the backup under "Import / Export". + +**Alternative Method: Pre-Clearing Application** +In case the app does not properly start (e.g. [inconsistent task state](https://github.com/johannesjo/super-productivity/issues/3052)), the data must be cleared first: + +1. locate the backup and possibly make another copy of it (not strictly necessary, but can't hurt :)) +2. start the app +3. hit strg+shift+i to open the dev tools +4. go to application/storage +5. hit clear site data +6. hit strg+r to reload the app +7. within SP you go to settings and import the previously located backup \ No newline at end of file diff --git a/docs/wiki/2.03-Add-Tasks.md b/docs/wiki/2.03-Add-Tasks.md new file mode 100755 index 000000000..e7ae639b3 --- /dev/null +++ b/docs/wiki/2.03-Add-Tasks.md @@ -0,0 +1,6 @@ + + +[[2.04-Manage-Subtasks]] +[[2.05-Manage-Scheduled-Tasks]] +[[2.06-Manage-Repeating-Tasks]] +[[2.07-Manage-Task-Integrations]] \ No newline at end of file diff --git a/docs/wiki/2.04-Manage-Subtasks.md b/docs/wiki/2.04-Manage-Subtasks.md new file mode 100755 index 000000000..e69de29bb diff --git a/docs/wiki/2.05-Manage-Scheduled-Tasks.md b/docs/wiki/2.05-Manage-Scheduled-Tasks.md new file mode 100755 index 000000000..e69de29bb diff --git a/docs/wiki/2.06-Manage-Repeating-Tasks.md b/docs/wiki/2.06-Manage-Repeating-Tasks.md new file mode 100755 index 000000000..e69de29bb diff --git a/docs/wiki/2.07-Manage-Task-Integrations.md b/docs/wiki/2.07-Manage-Task-Integrations.md new file mode 100755 index 000000000..e69de29bb diff --git a/docs/wiki/2.08-Choose-Sync-Backend.md b/docs/wiki/2.08-Choose-Sync-Backend.md new file mode 100755 index 000000000..c08ef2a85 --- /dev/null +++ b/docs/wiki/2.08-Choose-Sync-Backend.md @@ -0,0 +1 @@ +Stub. \ No newline at end of file diff --git a/docs/wiki/2.09-Configure-Sync-Backend.md b/docs/wiki/2.09-Configure-Sync-Backend.md new file mode 100755 index 000000000..8a7d30186 --- /dev/null +++ b/docs/wiki/2.09-Configure-Sync-Backend.md @@ -0,0 +1,3 @@ +- 2.09a: WebDAV +- 2.09b: Dropbox +- 2.09c: Other/Custom \ No newline at end of file diff --git a/docs/wiki/3.-Concepts.md b/docs/wiki/3.-Concepts.md new file mode 100755 index 000000000..6fb551c55 --- /dev/null +++ b/docs/wiki/3.-Concepts.md @@ -0,0 +1,67 @@ + + + + +### Views +* The Today Page +* Timeline +* Scheduled Tasks +* Projects +* Tags + +### Tasks +* Adding New Tasks +* Task Attributes +* Projects and Tags +* Estimating Time +* Subtasks +* Scheduled Tasks +* Repeat Tasks + +### Time-Tracking +* Starting the Task +* How Time is Logged +* Marking Tasks Complete +* Estimated vs Actual Time + +### Productivity-Helpers +* Timers (Pomodoro and Simple) +* Break Reminders +* Idle Time Reminders + +### Projects +* Customizing Project Appearance +* Notes +* Bookmarks +* Hiding Projects + +### Completing-Your-Day +* Reflection +* Metrics +* Task Archiving + +### Reporting +* Quick History +* Worklog +* Metrics + +### Managing-Your-Data +* Importing data +* Exporting +* Syncing +* Backups +* Where Data is Stored + +### Integrations-with-Other-Apps +* Jira +* GitHub +* GitLab +* OpenProject + +### Miscellaneous +* [[Settings and Preferences]] +* [[Keyboard Shortcuts]] +* [[Upgrading]] +* [[Uninstalling]] +* [[JSON / Models]] + diff --git a/docs/wiki/3.00-Reference.md b/docs/wiki/3.00-Reference.md new file mode 100755 index 000000000..f222ae746 --- /dev/null +++ b/docs/wiki/3.00-Reference.md @@ -0,0 +1,24 @@ +# Index of `Reference Material` + +## Uncategorized + +[[3.01-API]] +[[3.02-Settings-and-Preferences]] +[[3.03-Keyboard-Shortcuts]] +[[3.04-Short-Syntax]] + +# How to Write `Reference Material` +The `3.XX` sections should strive to follow these [[https://docs.openedx.org/en/open-release-sumac.master/documentors/concepts/content_types.html#id5]]. + +- Do nothing but describe. References have one job: **to explain** and do that **accurately and comprehensively**. +- **Be accurate.** These descriptions must be accurate and kept up-to-date. +- **Provide examples.** It is a valuable way of providing illustrations that help readers understand the references without becoming distracted from the job of describing them. +- **The documentation structure should mirror the product’s structure** so the user can work their way through it simultaneously. It doesn’t mean forcing the documentation into an unnatural structure. What’s important is that the documentation should help make sense of the product. +- **Be consistent** in structure, language, terminology, and tone. + + + + + + + diff --git a/docs/wiki/3.01-API.md b/docs/wiki/3.01-API.md new file mode 100755 index 000000000..e7ce31477 --- /dev/null +++ b/docs/wiki/3.01-API.md @@ -0,0 +1 @@ +Undocumented. \ No newline at end of file diff --git a/docs/wiki/3.02-Settings-and-Preferences.md b/docs/wiki/3.02-Settings-and-Preferences.md new file mode 100755 index 000000000..189cc2358 --- /dev/null +++ b/docs/wiki/3.02-Settings-and-Preferences.md @@ -0,0 +1,47 @@ +Note: All settings will be shown with the default values. +Note: Differences between the Web app and the Desktop app will be specified. + +### Global Settings + +#### global-settings.Localization +#### global-settings.App-Features +#### global-settings.Misc-Settings +#### global-settings.Short-Syntax +#### global-settings.Idle-Handling +#### global-settings.Keyboard-Shortcuts + +See [[3.03-Keyboard-Shortcuts]] for full list. + +#### global-settings.Time-Tracking +#### global-settings.Reminders +#### global-settings.Schedule +#### global-settings.Sound + + +### Plugins + +#### plugins.Plugins + + + +### Productivity Helper + +#### productivity-helper.Focus-Mode + +#### productivity-helper.Break-Reminder + +#### productivity-helper.Evaluation-and-Metrics + +#### productivity-helper.Simple-Counters-and-Habit-Tracking + +#### productivity-helper.Domina-Mode + + +### Sync & Export + +#### sync-and-export.Sync + +#### sync-and-export.Sync-and-Export + +#### sync-and-export.Sync-Safety-Backups + diff --git a/docs/wiki/3.03-Keyboard-Shortcuts.md b/docs/wiki/3.03-Keyboard-Shortcuts.md new file mode 100755 index 000000000..f2fcc3b74 --- /dev/null +++ b/docs/wiki/3.03-Keyboard-Shortcuts.md @@ -0,0 +1,52 @@ + +### Global Shortcuts +These work everywhere in the app. + +- `Shift`+`A`: Open add task bar +- `Shift`+`P`: Open create project dialog +- `N`: Add new note +- `Shift+D`: Focus Sidenav +- `Shift+N`: Show/Hide Notes +- `C`: Toggle Filter/Group/Sort Panel +- `P`: Show/Hide Issue Panel +- `Shift`+`F`: Show search bar +- `B`: Show/Hide Task Backlog +- `W`: Go to Work View and focus first task +- `F`: Enter Focus Mode +- `Shift`+`T`: Go to Schedule +- `Shift`+`S`: Go to scheduled Tasks +- ``: Go to Settings +- `Ctrl`+`=`: Zoom in (Desktop/Firefox/Chrome) +- `Ctrl`+`-`: Zoom in (Desktop/Firefox/Chrome) +- `Ctrl`+`0` (zero): Zoom default (Desktop/Firefox/Chrome) +- `Ctrl`+`S`: Trigger sync (if configured) + +### Tasks +The following shortcuts apply for the currently selected task (selected via tab or mouse). + +- ``: Edit Title +- `I`: Show/Hide additional task info +- `T`: Edit estimation / time spent +- `S`: Open schedule dialog for currently focused task +- `D`: Mark currently focused task as done +- `A`: Add subtask to currently focused task +- `L`: Attach file or link +- `Enter`: Edit currently focused task title +- `Backspace`: Delete currently focused task +- `E`: Open move task to project menu +- `Q`: Open task context menu +- `K`: Select previous Task +- `J`: Select next Task +- `Ctrl`+`Shift`+`ArrowUp`: Move currently focused task up in list +- `Ctrl`+`Shift`+`ArrowDown`: Move currently focused task down in list +- `Ctrl`+`Alt`+`ArrowUp`: Move currently focused task to the top +- `Ctrl`+`Alt`+`ArrowDown`: Move currently focused task down to the bottom +- `Shift`+`B`: Move Task to Task Backlog +- `Shift`+`T`: Move Task to Today's Task List +- ``: Expand Sub Tasks +- ``: Collapse Sub Tasks +- `Y`: Toggle tracking time to currently focused task + +**Unconfigurable** +- `Arrow keys`: Navigate around task list +- `ArrowRight`: Open additional info panel for currently focused task \ No newline at end of file diff --git a/docs/wiki/3.04-Short-Syntax.md b/docs/wiki/3.04-Short-Syntax.md new file mode 100755 index 000000000..fca64c9ef --- /dev/null +++ b/docs/wiki/3.04-Short-Syntax.md @@ -0,0 +1,11 @@ +Can be used when adding a task. Each of these can be disabled in [[3.02-Settings-and-Preferences#global-settings.Short-Syntax]]. + +- `# `: add a tag to the task + (`"task-description #tag1"`) +- `m` or `h`: set time-estimate for the task + (`"task-description 10m"` or `"task-description 5h"`) +- `@