dmo v1.1.4
Features
- Pure function driven ๐ฃ
- Support multiple modes ๐
- Minimalist Responsive Design ๐
- Detecting language ๐ง
- Power from vue and TypeScript โค
Getting Started
Let's use dmo to make a simple Babel REPL, first, write a simple html file, then inject the following necessary dependencies:
<script src="https://unpkg.com/dmo"></script>
<script src="https://unpkg.com/@babel/standalone@7.0.0-beta.38/babel.min.js"></script>Next, initialize it:
window.dmo({
title: 'Babel REPL',
transformers: {
es2015: function (input) {
return Babel.transform(input, { presets: ['es2015'] }).code;
}
}
})Open the browser, then you can get a usable Babel REPL (Check out the online DEMO):
Install
The recommendation is to use the unpkg directly, of course, you can also use npm/yarn to download it:
npm i dmo --save
# yarn add dmoAPI
dmo(options)
options
- Type:
Object Required:
truefields of options are as follows
input
- Type:
string Required:
trueREPL's input initial value. it also supports reading Github files as input, such as:
'https://github.com/vuejs/vue/blob/dev/src/core/index.js' // Full path '$github/vuejs/vue/dev/src/core/index.js' // Short cut
title
- Type:
string Required:
trueREPL's title.
username
- Type:
string Required:
trueuser name.
name
- Type:
string Required:
falseProject's name.
placeholder
- Type:
string - Required:
false Default:
Please enter your inputplaceholder of the input area.
transformers
- Type:
{ [mode: string]: transformFn } Required:
trueAn plain object, the key is the name of the mode, the value is the transform function corresponding to the mode, note that the transform accepts a string of the current input area as input, and the return value will display in the preview area.
detectLanguage
- Type:
boolean - Required:
false Default:
falseWhether to enable language detection with program-language-detector, From
v1.1.2, it will automatically highlight theinput / ouputby the detecting result, due to the real-time language detection will consume more performance, by default isfalse.
Projects Using Dmo
- markdown-catalogue-parser: ๐ Git the category via raw markdown file.
- html-css-transformer: ๐ Get css from html.
- Feel free to add yours here :)
Prior art
dmo wouldn't exist if it wasn't for excellent prior art, dmo is inspired by these projects:
Contributing
- Fork it!
- Create your feature branch:
git checkout -b my-new-feature - Commit your changes:
git commit -am 'Add some feature' - Push to the branch:
git push origin my-new-feature - Submit a pull request :D
Author
dmo ยฉ ulivz, Released under the MIT License. Authored and maintained by ulivz with help from contributors (list).
github.com/ulivz ยท GitHub @ulivz