Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/booktree/alternatives

Alternatives to this project.
https://github.com/booktree/alternatives

Last synced: 5 days ago
JSON representation

Alternatives to this project.

Awesome Lists containing this project

README

        

---
layout: default
title: Booktree Alternatives
---

You can drag columns around on the header to reposition them.

| | GitHub | GitLab | Penflip | O'Reilly Atlas | GitBook | ShareLaTeX | WriteLaTeX | Authorea | Beegit | Draft | Inkling Habitat | Leanpub | Connexions | Wiki Books | Google Docs | Boundless |
|--------------------------------|-------------------------------|-------------------------------|----------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------|-----------------------|------------|------------------------------------------------------|----------------------------------------------------|-------|-----------------------------------------------------------------------------|---------|------------|------------|---------------------------------|--------------------------|
| Open source | | X | | | (23) | X | | | | | | | X | X | | |
| Technology stack (13) | Git, Rails, Redcarpet, Gollum | Git, Rails, Redcarpet, Gollum | [GitLab](https://twitter.com/madebyloren/status/468917323588698112), Prose | GitLab, [HTMLBook](https://github.com/oreillymedia/HTMLBook), [CKEditor](https://github.com/ckeditor/ckeditor-dev), [Docker](https://github.com/odewahn/docker-at-oreilly) | Node.js, Marked fork, Calibre | Node.js, Ace | CodeMirror | [Git](https://www.authorea.com/aboutus), Rails | NodeGit, Express, (15) | ? | ? | ? | Python | PHP | ? | ? |
| Looks good (30) | X | l | X | X | X | X | X | l | ? | ? | ? | ? | ? | ? | ? | ? |
| Full feature public (4) | X | X (11) | X | 30 day trial | X | | ? | X | X | X | ? | ? | ? | ? | X | ? |
| Supports all browsers (1) | X | X | X | X | X | X | ? | X | X | X | | ? | ? | ? | X | Only Chrome for editing. |
| Public access (25) | X | X | X | | X | X | ? | X | X | (3) | ? | ? | ? | ? | X | ? |
| Meaningful URLs (2) | X | X | X | X | X | ? | ? | | | | (6) | ? | ? | ? | ? | ? |
| Project metrics (17) | X | ? | X | ? | X | | ? | ? | | ? | ? | ? | ? | ? | | ? |
| User metrics (18) | | ? | | ? | | | ? | ? | | ? | ? | ? | ? | ? | | ? |
| Output sale | | | | ? | X | | | | | | ? | X | | | | ? |
| Math support | ? | ? | ? | ? | ? | ? | ? | X | ? | ? | ? | ? | ? | ? | limited | ? |
| Anyone can create content (19) | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | Request needed. |
| **Compilation** | | | | | | | | | | | | | | | | ? |
| Markdown | X | X | X | X | X | | | X | X | X | X | ? | ? | ? | | ? |
| LaTeX | | | | | | X | X | X | | | | ? | ? | ? | | ? |
| Subdirectories (10) | X | | X | ? | X | X | ? | X | X | ? | ? | ? | ? | ? | X | ? |
| Multi file input (7) | (19) | | X | X | X | X | ? | X | | | | ? | ? | ? | select on by one, no auto build | ? |
| PDF output | | ? | X | X | X | | ? | X | | ? | ? | ? | ? | ? | X | ? |
| **Versioning** | | | | | | | | | | | | | | | | ? |
| Issue tracker | X | X | X | ? | | ? | ? | Comments, but no real tracker. | | ? | ? | ? | ? | ? | | ? |
| Version diff | X | X | X | ? | | ? | ? | X | only previous | ? | ? | ? | ? | ? | | ? |
| Merge request with diff | X | X | X | X | | ? | ? | [W](https://www.authorea.com/issues/18) | ? | ? | | ? | ? | ? | inline | ? |
| Rendered HTML diff (26) | X | | X | X | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? |
| Resolve merge conflicts | | [a][gl-resolve] | X | ? | | ? | ? | | ? | ? | | ? | ? | ? | | ? |
| Reset to version | X | X | ? | ? | | ? | ? | X | | X | X | ? | ? | ? | X | ? |
| Commit message | X | | X | | | ? | ? | X (but well hidden) | X | | ? | ? | ? | ? | | ? |
| Branches | X | X | (5) | l | | | ? | | | ? | ? | ? | ? | ? | | ? |
| **Web editor** | | | | | (local) | | | | | | | | | | | ? |
| No WYSIWYG (14) | X | ? | X | | X | X | ? | ? | X | ? | ? | ? | ? | ? | | ? |
| Side by side editor preview | | [a][gl-side] | | | X | X | X | [W](https://www.authorea.com/issues/270) | ? | ? | ? | ? | ? | ? | ? | ? |
| HTML preview as you type | | | | | X | ? | ? | | X | | ? | ? | ? | ? | ? | ? |
| Forward search | | | | | X | ? | ? | ? | X Limited accuracy | ? | ? | ? | ? | ? | ? | ? |
| Backwards search | | | | | X | ? | ? | ? | X Limited accuracy | ? | ? | ? | ? | ? | ? | ? |
| Git diff in editor | ? | X (12) | X (8) | | | ? | ? | | | ? | | ? | ? | ? | ? | ? |
| Multi file commit (21) | | | | | ? | ? | ? | | X (16) | ? | ? | ? | ? | ? | ? | ? |
| Drag and drop chapter order | | ? | X | | X | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? |
| **Spell checking** | ? | ? | ? | | ? | X | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? |
| Add words to dictionary | ? | ? | ? | browser | ? | X | ? | | ? | ? | ? | ? | ? | ? | ? | ? |
| Syntax aware (22) | ? | ? | ? | | ? | X | ? | | ? | ? | ? | ? | ? | ? | ? | ? |
| **Local** | | | | | | | | | | | | | | | | ? |
| No local install required (24) | X | X | X | X | | X | X | X | X | X | X | X | X | X | X | ? |
| Git access | X | X | X | X | X | ? | ? | [W](https://www.authorea.com/issues/266) (9) | ? | | | ? | ? | ? | | ? |
| Local compilation | | | | PDF compiler closed source | X | X | ? | ? In theory yes, in practice versions not specified. | ? | ? | | ? | ? | ? | | ? |
| **Meta** | | | | | | | | | | | | | | | | ? |
| Developers | 230 employees | 5 | 1 | >= 3 (27) | ? | 2 | ? | [3](https://www.authorea.com/contact) | [2](http://www.crunchbase.com/organization/beegit) | 1 | [9](http://www.crunchbase.com/organization/inkling-inc) (multiple projects) | ? | ? | ? | ? | 3 |
| Investments | 100M | ? | ? | ? | ? | ? | ? | 650k | | ? | ? | ? | ? | ? | ? | 8M |
| Users signed up | 3M | ~ 1k on SaaS (9) | ? | ? | ? | >= 250 (public email) | >=80k | ? | ? | ? | ? | ? | ? | ? | ? | 1M |
| Project's issue tracker (29) | ? | [GitLab Issues][] | [Penflip Issues][] | [Atlas Issues][] | ? | ? | ? | [Authorea Issues][] | ? | ? | ? | ? | ? | ? | ? | ? |
{:#table .data-table}

Legend:

- empty box: no, 0
- `X`: yes
- `l`: limited: not really no, but not really yes either
- `?`: not yet determined
- `w`: WONTFIX
- `a`: accepted by developers
- (number): see note below

Notes:

- (1) All major browsers: Firefox, Chrome, IE, Safari, Opera.

- (2) Like on GitHub: `user/project`, no random IDs.

- (3) Author must explicitly share a random URL. Inconvenient.

- (4) Similar business model to GitHub:
if the project is public you get all features for free.
Only applies to services, not open source libraries
- (5) Only keeps one Git repo per project:
forks are dealt into branches named with the username of their authors.

- (6) Possibly unpredictable URLs of form: `name_123`,
where the numeric ID is only used if its not the first time a name is used.

- (7) Generate a single output file form multiple markdown LaTeX files.

- (8) When pressing the save button.

- (9) Possible to export the Git repository, but no clone or push.

- (10) Possible to put source files in subdirectories from web interface.

- (11) Paid features only affect local installations.

- (12) Except for... Markdown, but it does not matter as that should be done from the viewer!

- (13) Inferred if closed source.

- (14) Negation because it is an anti-feature =)

- (15) Can someone infer the compiler? Is it Marked, Showdown or markdown-js?
Deducing from [collaborator's GitHub stars](https://github.com/stars/kciccarello),
Node.js based through [NodeGit](https://github.com/nodegit/nodegit).
and builtwith.com says Express which is coherent with the Node.js hypothesis.

- (16) Looks possible, but I didn't manage it, maybe due to minor bug?

- (17) Like GitHub Stars.

- (18) Like Stack Overflow rep.

- (19) Kind of if you count GH pages.

- (20) Some websites only allow certain people to contribute content, e.g., teachers of known universities,
in an attempt to have only good material. This is a huge entry bottleneck,
and the curation it provides can be achieved by upvote metrics instead.

- (21) A commit that changes multiple files.
Having `merge --squash` is almost a full workaround for this for merge request based work flows.

- (22) Spell checking that only checks in syntax blocks that need to be checked, e.g.,
not inside Markdown code blocks, nor LaTeX macro names. Currently not trivial.
Request on ACE: .

- (23) TODO: only compiler and editor, but not web interface?

- (24) You don't need to install anything to get it working: it is all done on the browser.

- (25) Signed out users can view outputs and source code.

- (26) Like GitHub and Atlas

- (27) Hard to estimate since they are a big organization with multiple projects.

But the following people are strongly involved in coding:

- @sandersk: O'Reilly publishing CTO,
- @runemadsen:
- @sklise:

And the following are also admins on the forum:

- Andrew Odewahn:
- Adam Zaremba:
- Sarah:

- (28) Issues only appear on the tracker after being reviewed.

- (29) Many projects strategically treat issues privately to give less information to competition.
Security disclosures are probably a secondary though since users capable of finding them
know better than to publish those openly.

- (30) *Slightly* subjective... but very important.

## Beegit

Screenshots at:

Has started hacking marked / preprocessing things with the addition of custom attributes as `# header {#id .class}`.

## GitBook

Uses GitHub for web interface.

Provides two completely separate utilities:

- local editor node-webkit editor able to upload input
- and sales / viewer front-end that also compiles the input

Can communicate with GitHub to:

- link to GitHub repo
- show star / watcher count
- build book on push hook

Has forked Marked into , because marked is too slow to accept MRs,
and they want to be closer to Kramdown syntax.

## Google Docs

Uses hidden internal format and converters:

AKA vendor lock-in.

Exports to Word, PDF and HTML.

Imports from Word, but you need a Chrome plugin to edit it.

Limited merge request functionality through editing:
you make suggestions and they appear rendered with a comment.
Once accepted or decline, the comment is gone.

## O'Reilly Atlas

Their editor is a highly specialized and advanced WYSIWYG front-end for HTMLBook!
It implements WYSIWYG nesting, IDs and references.

Screenshots at:

### Pull requests

Each user works on a single branch at a time:

Once you submit a pull request with a branch, the branch disappears from the UI, and you can no longer edit it.

Multiple pull requests can be made like this: create branch, submit, create branch, etc.

But you can't create branch, create branch.

Pull request revision is hardcore: you can accept each of the diff hunks individually,
edit the entire file on a single UI, and jump to the next hunk with a button.

There are no merge conflicts. Add add is always proposed and the user has to deal with it by jumping through hunks.

By examining the branches on a `git clone` of the repository, we see that the following branch scheme is used:

- `master`: the master branch

- `-at`: each time user creates a branch

- `-atmr`: after submitting the merge requests

So all users use branches in the same repository.
This means that any user with write access can overwrite the branches of other users if he wants.

## Authorea

Impressive feature: LaTeX HTML preview on editor. But I wonder how robust that can be.

Offers a `.tex` and a `.git` download, but no automatic way to convert
the `.git` inputs into the generated `.tex` which depends on how you exported it.
So strictly speaking no local compile support, although it is easy to figure out the missing steps.

## Reviewers

We should watch the author of this blog and his comments on Markdown editors:

[authorea issues]: https://www.authorea.com/issues
[atlas issues]: http://forum.atlas.oreilly.com/
[gitlab issues]: http://feedback.gitlab.com
[gl-side]: http://feedback.gitlab.com/forums/176466-general/suggestions/5799911-preview-as-you-type-for-markdown-blob-file-edit
[gl-resolve]: http://feedback.gitlab.com/forums/176466-general/suggestions/5590496-resolve-any-merge-request-conflict-from-the-web-in
[penflip issues]: https://www.penflip.com/Penflip/help/discussions