magpie

https://dl.dropboxusercontent.com/u/402325/dontdelete/magpie.jpg

magpie: [ma]rkdown, [g]it, [pie]thon

Git-backed Evernote replacement

Quickstart

Pre-requisites

(outside of PyPI):

  • Python 2.7
  • Pip/Easy Install
  • Git
  • libmagic (OS X specific issue; it’s already installed on most Linux distros)
  • cygwin (Windows only requirement; see issue #4)

Installing magpie

If you’re a Python person, and you are using virtual environments, just:

pip install magpie

If you don’t know what Python virtual environments are:

sudo pip install magpie

Setup Git Repo

git init

Locally:

mkdir -p /path/to/notes/repo/
cd /path/to/notes/repo/
git init

On Github

On Bitbucket

git config

Depending on what your environment is like, you may get a nasty error the first time you try to do something useful. This happened to me when I setup magpie to work with supervisor. In order to resolve this, I had to set the user.name and user.email fields in git config. The error message on the magpie page will tell you the syntax.

Launch magpie

In a Python virtualenv:

magpie

If you installed magpie with sudo:

sudo magpie

Connect

In browser, go to http://localhost:8080

Configure

On the main page, there should be a link to configure magpie. (Alternatively, http://localhost:8080/config)

Enter as much info here as you want. Username / Password are not required, but recommended. The only required field is repo. The path from “Init Git Repo” above should be entered here.

Home Dir Config

As of version 0.0.4, if you have a ”.magpie” directory in your home directory, you can store config files there, instead of the default path. You’ll need to make this directory after installing magpie and before running it. Alternatively, you can create the directory and move the config files there manually.

What is magpie?

I love Evernote, but I no longer trust my data to cloud providers. Magpie is an attempt to make a reasonably sufficient Evernote replacement where the users control their data.

Basically, magpie is just a web tool for managing text files in a git repo. In it, you can create notebooks (which are just folders); create, edit, and delete notes (which are just files). That’s pretty much it. However, when you make any of these changes, they are automatically committed to git.

Demo

A demo of magpie is available here

(If you make changes and they disappear, it’s because the demo resets itself every 15 minutes.)

What isn’t magpie?

  • Complete (see contributing)
  • Secure (magpie is only as safe as you make it. If your git repo is hosted on a public server, people will be able to read your notes. If you run it on an open network, people may be able to access your notes. Etc.)
  • Shiny (This is a side project written and maintained - so far - by a single person. It’s never going to be as good or as useable as Evernote.)

Features

  • Markdown & HTML notes are rendered on the page

  • Uses git as a backend

    • Easy backups (if you know git): clone once, then push/pull to backup notes
    • track history, etc, just like with git (using git, not via magpie’s web interface ... yet?)
  • Render “[ ]” and “[x]” as check boxes. Clicking them changes and saves the note.

  • Email yourself notes (see emailing notes)

  • Scrape PDFs to make them searchable in magpie (see pdf_scraper)