iloveitaly / clean-browser

Collect all browser URLs, output to terminal, and archive to todoist. Useful for cleaning up your workspace at the end of the day, without loosing important urls.

Home Page:https://github.com/iloveitaly/clean-browser

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Release Notes Downloads License: MIT

Clean Workspace: Archive Web Browser Tabs

I love experimenting with productivity. One glitch I've found in my mind is I can easily get distracted by open tabs on my browser, especially if I'm trying to write or read something which I want to give my full attention to. I've found that if I close all my tabs (similar idea to shrinking context size), I can focus better on the task at hand. However, I don't want to lose any interesting tabs so I never actually do that.

This is utility to fix this issue. It closes all your tabs (in both Safari & Chrome), sends them to todoist with a specified project + label, and outputs the list to the terminal (mostly for debugging).

This has seemed to really help my mind and make it easy for me to find interesting things I've run into in the past.

Installation

pip install clean-workspace
  • TODOIST_API_KEY has to exist in your shell environment for the tool to run. I recommend using direnv to do this. Add your todoist token to .envrc and direnv allow .
  • Customize the url and domain blacklist

Usage

❯ clean-workspace --help
Usage: clean-workspace [OPTIONS]

Options:
  --blacklist-domains PATH
  --blacklist-urls PATH
  --tab-description TEXT    Description for tab
  --todoist-label TEXT      label in todoist for all created tasks  [default:
                            web-archive]
  --todoist-project TEXT    project in todoist for all created tasks
                            [default: Learning]
  --help                    Show this message and exit.

Development

poetry install
poetry run clean-workspace

Regex Entries

You can use regex matches in both the url and domain blacklist files. For example, if you want to blacklist all Zoom domains, you can use the following:

echo "/.*zoom\.us/" >> ~/.config/clean-workspace/blacklist-domains.txt

A regex entry starts & ends with /, like sed.

Collecting Tab Description Via AppleScript

Here's a quick script you can use to collect a description of what you were working on via applescript:

dialogResult=$(
osascript <<EOT
set dialogResult to display dialog "What were you working on yesterday?" buttons {"OK"} default button "OK" giving up after 300 default answer ""
return text returned of dialogResult
EOT
)

Here's a full example of using this with hyper-focus.

Inspiration

TODO

  • Indicate in python config that this is macOS only in poetry config?
  • move blacklist files into example area of repo
  • look at previous tasks and see if links are contained there before including them again
  • support google chrome canary

About

Collect all browser URLs, output to terminal, and archive to todoist. Useful for cleaning up your workspace at the end of the day, without loosing important urls.

https://github.com/iloveitaly/clean-browser

License:MIT License


Languages

Language:Python 100.0%