Mil Edit

Markdown List Editor

Mil Edit is a small javascript markdown list editor which supports basic text attributes (bold, italic), has undo/redo capabilities, and drag-and-drop.

The story goes that after realizing that most browser-based markdown editors are document editors, and not list editors, I set out to make my own browser-based markdown list editor! I decided my editor would exclusively operate on a single markdown list and support text attributes in hackerish-style1.

Here's a demo of mil-edit embedded so you can get a feel for how it operates:

The first version of mil-edit I implemented as a very simple 500-some-line javascript singleton which featured simple importing and exporting of a single markdown list using its load and dump functions. However, I quickly became un-satisfied with the un-maintainable and monolithic architecture of mil-edit.

As such, I set out to make mil-edit-2. The driving force behind it's development was a cleaner internal architecture. I separated out functionality into small modules, wrote my own markdown library2, and cleaned up the source a lot. Additionally, I added undo/redo and drag-and-drop capabilities to the feature set.

Mil Edit featured in Linux Pro Magazine Mil Edit was featured in Linux Pro Magazine's May 2013 issue! That was several months after it's conception and release.

Unfortunately, regardless of the modularity I worked into mil-edit-2, my architecture was flawed. I wrote tests after the fact3 and eventually the startup which was the driving force behind the development of mil-edit failed4.

If I were to continue on mil-edit nowawadays, I would like to re-implement, start from scratch, writing browserify modules and embrace TDD from day one. Oh yeah, I'd put focus on mobile-first.

  1. In mil-edit, you edit one line at a time. The line your editing shows markdown attributes like, **star bolding** _underline italicizing_ and converts it styled after you navigate to a different line.
  2. My markdown library, dubbed mil-markdown, cut dependencies on 2 markdown libraries from the original mil-edit, by soley handling the import and exporting of a single markdown list.
  3. This a painful mistake in application development and one I had to learn the hard way.
  4. Ask me to show you a demo of my failed startup which wraps Mmvp.js and my Mil Edit 2 abondware!