Skip to content

Commit

Permalink
Proposition for criteria and first selection of content authoring too…
Browse files Browse the repository at this point in the history
…ls. Supports #5
  • Loading branch information
jmatsushita committed Feb 11, 2016
1 parent 83bd07c commit 5bcbf12
Showing 1 changed file with 88 additions and 0 deletions.
88 changes: 88 additions & 0 deletions technology/authoring.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
---
title: Authoring
---

> [Contribute your ideas and follow the discussion about the choice of authoring environment](https://github.com/iilab/contentascode/issues/5)
* TOC
{:toc}

## Criteria

The authoring environment should be:

- **Open source**
- Running in the **browser**

6 potential candidate software are considered with these additional criteria:

- **Markdown support**
- **Git support**
- **Inplace editing**
- **Actively maintained**
- **Extensible**, it should be easy to add functionalities. See [Analysis below](#analysis)

---

| | Markdown | Git | Inplace | Active |
| -------------------------------------------------------- | -------- | ------ | ------- | ------ |
| [Prose](https://prose.io) | Yes | github | No | No |
| [Gitbook](https://www.gitbook.com/editor) | Yes | git | No | Yes |
| [Dillinger](https://github.com/joemccann/dillinger) | Yes | github | No | |
| [Aloha](http://www.alohaeditor.org/demo/aloha-ui/) | | | Yes | |
| [Pen Editor](http://sofish.github.io/pen/) | Yes | No | Yes | Yes |
| [ContentEditable](http://html5demos.com/contenteditable) | No | No | Yes | Yes |

## Feature Gaps

Based on the [design goals](../../approach#design-goals) the following features should be implemented:

### Non negotiables

- **Media**: Prose for instance manages media if in a single folder. Should have some library features.
- **Links**: Are too easy to break, or complicated to create. Should be checked client side.
- **Metadata**: Even if content is made of several blocks (including reused blocks), they should be invisible and be previewable as a whole, carry invisible metadata and allow various degrees of structure to be enforced.

### Nice to haves / Possible Easy Wins

- **Iconography**: Having an icon library like glyphicons or font-awesome would be... not bad.
- **Forms**: After all that's what GFM ```- [ ]``` are.
- **Diagrams**: Mermaid is where it's at.
- **Offline**: Work offline or with an unhosted approach (remote storage git layer?)

### Unicorns

Let's say goodbye to google docs.

- **Realtime collaboration**: Substance where have you gone... OT over Git please.
- **Spreadsheet editing**: Quip style of course. There are a number of good looking spreadsheet.js approaches.

## Analysis

| | Offline | Desktop | PDF | Dropbox | G Drive | Distraction free |
| --------------- | ------- | ------- | --- | ------- | ------- | ---------------- |
| Prose | | | | | No | Yes |
| Gitbook | | Yes | Yes | | Yes | |
| Dillinger | Yes | | Yes | Yes | Yes | Yes |
| Aloha | | | | | | |
| Pen Edit | | | | | Yes | |
| ContentEditable | | | | | Yes | |


### Prose

### Dillinger

AngularJS - HTML enhanced for web apps!
Ace Editor - awesome web-based text editor
Marked - a super fast port of Markdown to JavaScript
Twitter Bootstrap - great UI boilerplate for modern web apps
node.js - evented I/O for the backend
Express - fast node.js network app framework @tjholowaychuk
Gulp - the streaming build system
keymaster.js - awesome keyboard handler lib by @thomasfuchs
jQuery - duh

### Aloha

### ...

0 comments on commit 5bcbf12

Please sign in to comment.