Conceived by Andrew Sprinz. Maintained by Chris Bell & Andrew Walker.
The recomended way to install Sir Trevor in your project is using npm. This will install all the files required in the build
directory for the module.
npm install sir-trevor
Note: Sir Trevor is distributed combined with its dependencies. If you wish to modify Sir Trevor you will want to clone the repository and use the Compiling instructions below.
HTML
<form><textarea class="js-st-instance"></textarea></form>
Javascript
import SirTrevor from "sir-trevor";
const editor = new SirTrevor.Editor({
el: document.querySelector(".js-st-instance"),
defaultType: "Text",
iconUrl: "build/sir-trevor-icons.svg",
iconPlusUrl: "build/icon-plus.png",
});
[http://madebymany.github.io/sir-trevor-js/docs.html]
- Download the latest release
- ...or clone the repo:
git clone git://github.com/madebymany/sir-trevor-js.git
- Sir Trevor Rails
- Umbraco 7, Umbraco 6
- CakePHP
- Wordpress, Wordpress
- Laravel
- Django
- Yii Framework
- Symfony2
We are keeping a list of custom block repos here. See the documentation to find out more about adding your own block types.
Sir Trevor is only tested on the following modern browsers:
- IE11+ (https://github.com/madebymany/sir-trevor-js/tree/ie-support)
- Chrome 51+
- Safari 9+
- Firefox 47+
ECMAScript 6 shims are bundled in by default; if the platform you wish to run on doesn't support ECMAScript 5 APIs you'll need to shim those yourself.
Sir Trevor uses The Guardian's scribe for rich text editing. Double check their browser support if your application relies on full RTE support.
See the roadmap and read a little about the philosophy guiding development.
We use Sass for our styles, if you'd like to change the default styling please fork the repository and make changes to the Sass before recompiling.
Block Types can also easily be added to the SirTrevor.Blocks
object. You can also override the default block types (Text, Image, Tweet, Video, Quote, Heading & List) at any time. See the documentation to find out more about adding your own block types.
Tests are run as part of compilation process, which require chromedriver
to be installed on
the machine where you are running the compilation. If you're running Homebrew on OSX this can
be installed via brew install chromedriver
.
You'll need Node v10 for this to work:
$ nvm install 10
$ nvm use 10
Before getting started please be sure to install the necessary dependencies via npm:
$ npm install
When completed, we have a couple of preset scripts:
$ npm run dev
This compiles for development, and watches source files to recompile when you change something.
$ npm test
Runs the linter and test suite, just like the CI server does.
$ npm run dist
Concatenates scripts, compiles the Sass, runs the Jasmine tests and minifies the project.
Please ensure any pull requests have relevant Jasmine tests (where applicable).
matrix:
- BROWSER_NAME='chrome' BROWSER_VERSION='51' PLATFORM='OSX 10.10'
- BROWSER_NAME='chrome' BROWSER_VERSION='51' PLATFORM='Windows 7'
- BROWSER_NAME='firefox' BROWSER_VERSION='46' PLATFORM='OSX 10.10'
- BROWSER_NAME='firefox' BROWSER_VERSION='46' PLATFORM='Windows 7'
cd website
npm install
bundle exec rake publish PROJECT_ROOT=./ ALLOW_DIRTY=true
Sir Trevor is released under the MIT license: opensource.org/licenses/MIT