-wheic
-=====
+Peach HTML5 Editor
+==================
-This project is to build a HTML5 parser, then use that to build a WYSIWYG html
-editor for the browser.
-
-The code is written in CoffeeScript for modern browsers. The HTML5 parser can
-also run under node.js.
+This is a WYSIWYG HTML5 editor for the browser.
Status
------
-HTML5 parser: all (1581) tests pass. Works in the browser and node.js
+Early development stages.
+
+The HTML5 parser component passes the full test suite (1581 tests).
+
+The interface is starting to exist.
+
+
+Technologies
+------------
+
+Programming language: CoffeeScript (compiles to javascript)
+
+Interface: Implemented using the DOM api. No ``contenteditable`` or jquery.
-WYSIWYG editor: planning stages
Quick Start Guide
-----------------
-1. Open ``test.html`` in your browser.
+1. Open ``parser_tests_coffee.html`` in your browser.
2. Open the console (right-click, inspect this element, console)
4. Try running the parser in the console, example:
- window.wheic.parse_html("<p>foo</p>", {fragment: "body"})
+ window.peach_parser.parse("<p>foo</p>", {fragment: "body"})
+
+5. Open ``editor_tests_coffee.html`` in your browser
For further reading, see "Running Under node.js" below.
Running Under node.js
---------------------
-Dependancies: node.js, coffeescript
+With node.js and Coffeescript, you can compile the coffeescript so you can use
+the faster test pages, and you can test the html parser without a browser.
+
+Dependencies: node.js, CoffeeScript
+
+1. Install node.js https://nodejs.org/en/
+
+2. Install CoffeeScript. Try:
+
+ apt-get install coffeescript
+ or
+
+ npm install -g coffee-script
+
+4. Compile to javascript:
+
+ make
+
+Now you can do any of these things in any order:
+
+* Run the tests directly from CoffeeScript:
+
+ coffee parser_tests.coffee
+
+* Test the compiled (javascript) parser in your favorite browser by opening
+ up ``parser_tests.html`` and looking at the console.
-You can get CoffeeScript with a command such as this:
+* Run tests via compiled code:
- apt-get install coffeescript
+ nodejs parser_tests.js
-or
+* Try using the parser in your own javascript node.js project:
- npm install -g coffee-script
+ var html5 = require('./parser.js');
+ var dom = html5.parse("<p>hi</p>", {fragment: 'body'});
+ ...
-Now you can run the test suite like this:
+* Try using the parser in your own CoffeeScript node.js project:
- coffee test.coffee
+ html5 = require './parser.js'
+ dom = html5.parse "<p>hi</p>", fragment: 'body'
+ ...
-Or use the parser from your own code:
+ Note: the CoffeeScript compile time is significant, so you'll want to use
+ the compiled javascript even though you could use the ``.coffee`` version.
- wheic = require './parse-html.coffee'
- dom = wheic.parse_html "foo <b>bar"
+* Hack editor.coffee more quickly, by testing in editor_tests.html which uses
+ the compiled version of the parser, thus speeding up load time
+ considerably.
Feedback, Questions, Etc