Skip to content

Path to Shiba 2.0

Linda_pp edited this page Apr 6, 2016 · 9 revisions

Refactoring view with React.js

With writing tests for each component using shallow rendering.

because currently Shiba re-renders whole preview when the document is updated. If introducint rework-react, the document will be compiled to React component and Virtual DOM's differential rendering is available.

As the second reason, rework provides plugin architecture where it is possible to modify markdown's AST. I can replace ':foo:' emojis with images, add saerch highlights and make outline (remark-toc may be useful).

At last, auto scrolling feature may be possible. Shiba might be able to know where the document is modified by Virtual DOM's differential update.

Refactoring directories/files watcher

When there are many targets to watch, process may use the CPU harder. So watching paths is performed in main process not to prevent renderer. Currently Shiba can only one path at once, but it should watch multiple paths at once for tabs UI.

Add Tab UI

Use proof reading linter instead of markdown linter

  • proselint
  • redpen
  • textlint (it supports HTML. it means that we can check generated HTML directly)
  • Should it allow multiple linters? (e.g. using markdown linter, proof reading linter at the same time)

Web API

  • Send a document to update preview without saving a file
    • Whole document
    • Diff format
  • Quit app from other applications
  • Change a path to watch

Read from stdin