Note taking made easy

View the Project on GitHub


Build Status codecov Join the chat at License: MIT

ashaw-notes was created to allow for quick and easy note taking and retrieval of information and personal context. With a keen focus on speed of entry and filtering, ashaw-notes allows quick overviews of the previous day, month, and year for time tracking or simple daily standup updates.

Rewritten completely in python 3 (originally a php application), this application supports:


Clone or download the ashaw-notes github project.

You can easily downlaod the repository as a zip file here. Once downloaded, extract it to a local directory.

Make sure you have Python 3 installed on your system, if you don’t download the latest version here.

Install the requirements

$ pip3 install .

Note to Windows users: uses readline to allow for entry suggestions, it is not possible to install this from the requirements file but instead must be compiled on your local machine.

Configure ashaw-notes

Copy notes.config to notes-local.config and begin editing, decide if you want to use a redis backend or a local file. There are benefits to both.

Redis offers:

Local files offers:

For running ashaw-notes on Redis, you can either run your own Redis container/service or use a free Redislabs account as notes are very small in size. Notes taken from 4 years of use requires about 12MB of memory. The system attempts to use a little memory as possible, resulting in many sets being ziplists.

Running ashaw-notes

After configuring the application execute ashaw-notes quicknote. You will be presented with an input box to add in your first note. After pressing “Enter” your note will be saved and the command will terminate.

Migrating Notes

If you’re wanting to sample multiple backends (or if you have a local notes file you’d like to import into Redis) you can use ashaw-notes migrate. Simply execute the script with the modules you want to use as parameters. For example,

$ ashaw-notes migrate local_notes redis_notes

will migrate the notes in your local system file to redis while

$ ashaw-notes migrate redis_notes local_notes

will migrate all the notes stored on an external redis server to your local machine.

Running the notes GUI client

ashaw notes is a two-staged application. ashaw-notes quicknote allows for data entry and the QT GUI lets the user view and filter notes stored.

To run the GUI client, you must first have QT installed on your local system. Once the prerequisites are met you can run the GUI by executing

ashaw-notes gui

A UI will popup with a basic notes interface and a filter box at the bottom of the window. Typing in this filter box will allow you to quickly search your notes.


For development, you can run pip install in so-called editable mode using the -e flag (

pip install -e .