Skip to main content

Get desktop notifications from programming websites like GitHub, Stack Overflow and the likes :)

Project description


Toasts is an app that shows desktop notifications from various websites like GitHub, StackExchange, BitBucket, and the likes. It just runs in the background and shows you a notification when there is one from sites you have enabled. Authentication to your user account on a particular website is done through a Personal Access Token or Oauth.

Please do note that this project is still a work in progress, even though it works.

Supported Sites

  • Github

If you would like a new site to be supported, please open an issue, and let's see what we can do :)

Getting Started


Toasts is written in Python3 and the package is available on PyPI.

The app has been tested only on Linux, as of now. It should work fine on a Mac, but Windows is not supportd at the moment (I'm working on it).


Open a terminal and:

$ pip install --user toasts

For updating the app:

$ pip install --user -U toasts


Before running the app, we should first enable available clients in the config file. The user config file is ~/.config/toasts/config.yaml on Linux and ~/Library/Application Support/toasts/config.yaml on Mac.

Only Github is implemented for now, so you can enable it in the config file like so:

# Config file for toasts

        # List of sites to enable; comma seperated list
        # Default: []
        clients: [github]

Toasts gets Github notifications using a Personal Access Token. Go to Developer Settings and create one with permission to access your notifications. Then set the environment variables GH_UNAME to your Github username and GH_TOKEN to the access token you just created (it is possible to authenticate using your Github password; just set GH_TOKEN to your password).

You're all set !

Open a terminal and and run the toasts command:

$ toasts

You should see your notifications pop up, if you have an update from the enabled sites.

I'm so happy right now :)

The Config File

The file is in YAML format:

# Config file for toasts

        # List of sites to enable; comma seperated list
        # Default: []
        clients: []
        # Connection timeout, in seconds
        # Default: 7 ; Minimum value: 1
        conn_timeout: 7
        # Check for notifications every ___ minutes
        # Default: 3 ; Minimum value: 2
        check_every: 3
        # Show notification for ___ seconds
        # Default: 7 ; Minimum value: 2
        notif_timeout: 7
        # Maximum number of notifications to show at a time, of individual clients.
        # Default: 2
        # Note: Value of -1 will show all notifications; it may clutter your workspace.
        notif_max_show: 2

                # *Environment variable* which holds your github username
                # Default: GH_UNAME
                username: GH_UNAME
                # *Environment variable* which holds a personal access token for authentication
                # Default: GH_TOKEN
                token: GH_TOKEN

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

toasts-0.1.2.tar.gz (13.7 kB view hashes)

Uploaded source

Built Distribution

toasts-0.1.2-py3-none-any.whl (26.4 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page