Heads Down Application for Mac OSX

Overview

Heads Down

A Mac app that lives in your ribbon—with a click of the mouse, temporarily block distracting websites and applications to encourage "heads down" time.

Report Bug · Request Feature

Table of Contents

  1. About The Project
  2. Getting Started
  3. Usage
  4. Troubleshooting
  5. Roadmap
  6. Contributing
  7. License
  8. Contact

About The Project

This project was inspired by a tweet.

The person in question had a simple request: how can I block distracting apps and websites when I'm trying to work?

With Heads Down, you can easily block and unblock websites and apps with a click of the mouse.

Built With

Getting Started

To get a local copy up and running follow these simple steps.

Prerequisites

  • git
  • pip
  • python

Installation

  1. Clone the repo
    git clone https://github.com/EconoBen/headsdown.git
  2. Change the directory
    cd headsdown/
  3. Install the required libraries
    pip install -r requirements.txt
  4. Install Heads Down
    python setup.py py2app --iconfile images/icon.icns
  5. Move the Heads Down app to your Applications folder
    mv dist/headsdown.app /Applications

Usage

Heads down comes with a list of predefined social media websites to block (see block_sites.csv). To add to the block list, simply select the "block sites" button and a popup window in which to add websites will appear.

To begin a work session, simply cick on the "Heads Down" button. When you're done, select "Heads Up". It's that easy.

Troubleshooting

  1. setup.py returns an error like (libpython3.8.dylib does not exist). Try running:
    ln -s PATH/TO/FILE/libpython3.8m.dylib PATH/TO/FILE/libpython3.8.dylib

Roadmap

See the open issues for a list of proposed features (and known issues).

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the GPL-3.0 License. See LICENSE for more information.

Contact

Benjamin Labaschin - @econoben - [email protected]

Project Link: https://github.com/EconoBen/headsdown

You might also like...
A passive recon suite designed for fetching the information about web application
A passive recon suite designed for fetching the information about web application

FREAK Suite designed for passive recon Usage: python3 setup.py python3 freak.py warning This tool will throw error if you doesn't provide valid api ke

Automation of VASP DFT workflows with ASE - application scripts

This repo contains a library that aims at automatizing some Density Functional Theory (DFT) workflows in VASP by using the ASE toolkit.

A simple desktop application to scan and export Genshin Impact Artifacts.
A simple desktop application to scan and export Genshin Impact Artifacts.

「天目」 -- Amenoma 简体中文 | English 「天目流的诀窍就是滴水穿石的耐心和全力以赴的意志」 扫描背包中的圣遗物,并导出至 json 格式。之后可导入圣遗物分析工具( 莫娜占卜铺 、 MingyuLab 、 Genshin Optimizer 进行计算与规划等。 已支持 原神2.

Skip spotify ads by automatically restarting application when ad comes

SpotiByeAds No one likes interruptions! Don't you hate it when you're listening to your favorite jazz track or your EDM playlist and an ad for Old Spi

🎴 LearnQuick is a flashcard application that you can study with decks and cards.
🎴 LearnQuick is a flashcard application that you can study with decks and cards.

🎴 LearnQuick is a flashcard application that you can study with decks and cards. The main function of the application is to show the front sides of the created cards to the user and ask them to guess the back of the card. As a result of self-assessment of user's ability to guess the back sides of the displayed cards, the cards that user weak against are shown more often, and the cards that user strong against are shown less frequently.

Easily map device and application controls to a midi controller

pymidicontroller Introduction Easily map device and application controls to a midi controller

The only purpose of a byte-sized application is to help you create .desktop entry files for downloaded applications.
The only purpose of a byte-sized application is to help you create .desktop entry files for downloaded applications.

Turtle 🐢 The only purpose of a byte-sized application is to help you create .desktop entry files for downloaded applications. As of usual with elemen

Comics/doujinshi reader application. Web-based, will work on desktop and tablet devices with swipe interface.
Comics/doujinshi reader application. Web-based, will work on desktop and tablet devices with swipe interface.

Yomiko Comics/doujinshi reader application. Web-based, will work on desktop and tablet devices with swipe interface. Scans one or more directories of

⏰ Shutdown Timer is an application that you can shutdown, restart, logoff, and hibernate your computer with a timer.
⏰ Shutdown Timer is an application that you can shutdown, restart, logoff, and hibernate your computer with a timer.

Shutdown Timer is a an application that you can shutdown, restart, logoff, and hibernate your computer with a timer. After choosing an action from the

Comments
  • Requires xcrun

    Requires xcrun

    opened by tdhopper 2
  • libpython3.8.dylib does not exist

    libpython3.8.dylib does not exist

    I got this error on the setup.py command. I have Python installed with pyenv. It appears that you have to install the python version with PYTHON_CONFIGURE_OPTS="--enable-framework" for this to work.

      File "setup.py", line 21, in <module>
        setup(
      File "/Users/tim.hopper/repos/headsdown/.direnv/python-3.8.7/lib/python3.8/site-packages/setuptools/__init__.py", line 165, in setup
        return distutils.core.setup(**attrs)
      File "/Users/tim.hopper/.pyenv/versions/3.8.7/lib/python3.8/distutils/core.py", line 148, in setup
        dist.run_commands()
      File "/Users/tim.hopper/.pyenv/versions/3.8.7/lib/python3.8/distutils/dist.py", line 966, in run_commands
        self.run_command(cmd)
      File "/Users/tim.hopper/.pyenv/versions/3.8.7/lib/python3.8/distutils/dist.py", line 985, in run_command
        cmd_obj.run()
      File "/Users/tim.hopper/repos/headsdown/.direnv/python-3.8.7/lib/python3.8/site-packages/py2app/build_app.py", line 925, in run
        self._run()
      File "/Users/tim.hopper/repos/headsdown/.direnv/python-3.8.7/lib/python3.8/site-packages/py2app/build_app.py", line 1147, in _run
        self.run_normal()
      File "/Users/tim.hopper/repos/headsdown/.direnv/python-3.8.7/lib/python3.8/site-packages/py2app/build_app.py", line 1260, in run_normal
        self.create_binaries(py_files, pkgdirs, extensions, loader_files)
      File "/Users/tim.hopper/repos/headsdown/.direnv/python-3.8.7/lib/python3.8/site-packages/py2app/build_app.py", line 1644, in create_binaries
        mm.mm.run_file(runtime)
      File "/Users/tim.hopper/repos/headsdown/.direnv/python-3.8.7/lib/python3.8/site-packages/macholib/MachOGraph.py", line 89, in run_file
        raise ValueError("%r does not exist" % (pathname,))
    ValueError: '/Users/tim.hopper/.pyenv/versions/3.8.7/lib/libpython3.8.dylib' does not exist```
    opened by tdhopper 1
  • Adding app open and close optionality

    Adding app open and close optionality

    I'm planning on adding optionality to opening and closing apps at Heads Down and Heads Up.

    e.g. When a one selects Heads Down, the apps you have designated will close and others (like a code editor) will open, and the opposite at the selection of Heads Up

    opened by EconoBen 0
Owner
Data Scientist
null
Repo Home WPDrawBot - (Repo, Home, WP) A powerful programmatic 2D drawing application for MacOS X which generates graphics from Python scripts. (graphics, dev, mac)

DrawBot DrawBot is a powerful, free application for macOS that invites you to write Python scripts to generate two-dimensional graphics. The built-in

Frederik Berlaen 342 Dec 27, 2022
Drop-down terminal for GNOME

Guake 3 README Introduction Guake is a python based dropdown terminal made for the GNOME desktop environment. Guake's style of window is based on an F

Guake 4.1k Dec 25, 2022
A dead-simple service that notifies you when something goes down.

Totmannschalter Totmannschalter (German for dead man's switch) is a simple service that notifies you when it has not received any message from a servi

null 1 Dec 20, 2021
You can change your mac address with this program.

1 - Warning! You can use this program with Kali Linux. Therefore if you don't install the Kali Linux. Firstly you need to install Kali Linux. 2 - Star

Mustafa Bahadır Doğrusöz 1 Jun 10, 2022
💻 Algo-Phantoms-Backend is an Application that provides pathways and quizzes along with a code editor to help you towards your DSA journey.📰🔥 This repository contains the REST APIs of the application.✨

Algo-Phantom-Backend ?? Algo-Phantoms-Backend is an Application that provides pathways and quizzes along with a code editor to help you towards your D

Algo Phantoms 44 Nov 15, 2022
ArinjoyTheDev 1 Jul 17, 2022
Backend/API for the Mumble.dev, an open source social media application.

Welcome to the Mumble Api Repository Getting Started If you are trying to use this project for the first time, you can get up and running by following

Dennis Ivy 189 Dec 27, 2022
An application for automation of the mining function in the game Alienworlds.IO

alienautomation A Python script made to automate the tidious job of mining on AlienWorlds This script: Automatically opens the browser Automatically l

anonieXdev 42 Dec 3, 2022
A step-by-step tutorial for how to work with some of the most basic features of Nav2 using a Jupyter Notebook in a warehouse environment to create a basic application.

This project has a step-by-step tutorial for how to work with some of the most basic features of Nav2 using a Jupyter Notebook in a warehouse environment to create a basic application.

Steve Macenski 49 Dec 22, 2022
A Python Web Application for Checking vaccine slots by pincodes and auto slot booking.

The Dashboard is developed using Bokeh and python 3.5+. This dashboard is useful for you if you are looking for something which will help you to book the vaccine slot once slots become available. Other Vaccine Finders will notify you once slots become available but you will still need to login to the portal and book the slot manually. This dashboard will look for slot availability continuously and will send the OTP itself once slots become available.

Suraj Deshmukh 10 Jan 23, 2022