Ruby HTML CSS JavaScript Other
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
app Dark outline buttons should have white icons on focus as well Aug 21, 2018
bin Upgrade rails to 5.2.0 (#573) Apr 10, 2018
config Gracefully handle rate limit related errors (#810) Aug 19, 2018
db Enable pg_stat_statements postgres extension (#807) Aug 19, 2018
docs Document runtime-dyno-metadata setting in heroku setup Aug 21, 2018
lib Add rake task to sync repositories Aug 17, 2018
log Hello World Dec 16, 2016
openshift Some minor typo fixes on OPENSHIFT_INSTALLATION.MD Jun 4, 2018
public Add rel="noopener" to all links that have target='_blank' Aug 17, 2018
test Mark notifications as read when archiving (#826) Aug 21, 2018
tmp Hello World Dec 16, 2016
vendor/assets remove toggle-shortcuts Dec 19, 2016
.codeclimate.yml Add codeclimate config Dec 19, 2016
.dockerignore Ignore dev files when deploying to heroku to reduce the slug size (#655) Jun 18, 2018
.env.example Add bugsnag js notifier (#704) Jul 27, 2018
.eslintignore Add codeclimate config Dec 19, 2016
.eslintrc Add codeclimate config Dec 19, 2016
.gitignore Add sidekiq scheduler for notification jobs (#589) Apr 11, 2018
.rubocop.yml Fix up some warnings/errors in rubocop config Aug 16, 2018
.ruby-version Update ruby to 2.5.1 (#583) Apr 3, 2018
.slugignore Ignore dev files when deploying to heroku to reduce the slug size (#655) Jun 18, 2018
.travis.yml Test against postgres 9.6 on travis Aug 10, 2018
Dockerfile Update ruby to 2.5.1 (#583) Apr 3, 2018
Gemfile Bump attr_encrypted from 3.0.3 to 3.1.0 (#767) Aug 10, 2018
Gemfile.lock Bump turbolinks from 5.1.1 to 5.2.0 (#822) Aug 20, 2018
LICENSE.txt Hello World Dec 16, 2016
Procfile Automatically run migrations on heroku deploys (#657) Jun 18, 2018
README.md Auto-refresh is now available on octobox.io Aug 10, 2018
Rakefile Generate api docs during asset build to enable api docs on heroku (#656) Jun 18, 2018
app.json Encrypt access tokens (#619) Aug 9, 2018
config.ru Add rack-canonical-host for redirecting to herokuapp subdomain to oct… Aug 9, 2018
docker-compose-dev.yml Add redis to docker-compose configs Mar 18, 2018
docker-compose.yml Add redis to docker-compose configs Mar 18, 2018

README.md

Octobox 📮

📮 The best way to manage your GitHub Notifications.

Screenshot of  Octobox

Build Status View Performance Data on Skylight Docker Gitter OpenCollective OpenCollective Open Source Helpers license

Why is this a thing?

If you manage more than one active project on GitHub, you probably find GitHub Notifications pretty lacking.

Notifications are marked as read and disappear from the list as soon as you load the page or view the email of the notification. This makes it very hard to keep on top of which notifications you still need to follow up on. Most open source maintainers and GitHub staff end up using a complex combination of filters and labels in Gmail to manage their notifications from their inbox. If, like me, you try to avoid email, then you might want something else.

Octobox adds an extra "archived" state to each notification so you can mark it as "done". If new activity happens on the thread/issue/pr, the next time you sync the app the relevant item will be unarchived and moved back into your inbox.

Table of Contents

Getting Started

Octobox.io

You can use Octobox right now at octobox.io, a shared instance hosted by the Octobox team.

Note: octobox.io has a few features intentionally disabled:

  • Subject syncing (includes authorship and open/closed/merged status information) (#411)
  • Personal Access Tokens (#185)

Features are disabled for various reasons, such as not wanting to store users' tokens at this time. Some features might never be enabled, and some just might have other prerequisite work pending completion.

Install

You can also host Octobox yourself! See the installation guide for installation instructions and details regarding deployment to Heroku, Docker, and more.

Desktop usage

You can run Octobox locally as a desktop app too if you'd like, using Nativefier:

npm install -g nativefier
nativefier "https://octobox.io" # Or your own self-hosted URL

This will build a local application (.exe, .app, etc) and put it in your current folder, ready to use.

Web extension

You can also install the cross-browser Octobox Web Extension. It is available for Google Chrome and Mozilla Firefox, but you can also use it with other browsers that support web extensions.

Requirements

Web notifications must be enabled in your GitHub settings for Octobox to work.

Notifications settings screen

Keyboard shortcuts

You can use keyboard shortcuts to navigate and perform certain actions:

  • a - Select/deselect all
  • r or . - Refresh list
  • j - Move down the list
  • k - Move up the list
  • s - Star current notification
  • x - Mark/unmark current notification
  • y or e - Archive current/marked notification(s)
  • m - Mute current/marked notification(s)
  • d - Mark current/marked notification(s) as read here and on GitHub
  • o or Enter - Open current notification in a new window

Press ? for the help menu.

Backers

Thank you to all our backers! 🙏 [Become a backer]

Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]

Contribute

Please do! The source code is hosted at GitHub. If you want something, open an issue or a pull request.

If you need want to contribute but don't know where to start, take a look at the issues tagged as "Help Wanted".

You can also help triage issues. This can include reproducing bug reports, or asking for vital information such as version numbers or reproduction instructions. If you would like to start triaging issues, one easy way to get started is to subscribe to Octobox on CodeTriage.

Finally, this is an open source project. If you would like to become a maintainer, we will consider adding you if you contribute frequently to the project. Feel free to ask.

For other updates, follow the project on Twitter: @octoboxio.

Note on Patches/Pull Requests

  • Fork the project.
  • Make your feature addition or bug fix.
  • Add tests for it. This is important so we don't break it in a future version unintentionally.
  • Send a pull request. Bonus points for topic branches.

Code of Conduct

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.

Copyright

GNU Affero License © 2018 Andrew Nesbitt.