Skip to content
The world's #1 JavaScript library for rich text editing. Available for React, Vue and Angular
Branch: master
Clone or download
Pull request Compare This branch is 3 commits ahead, 9229 commits behind tinymce:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github
src
tools
.editorconfig
.gitattributes
.gitignore
Gruntfile.js
Jenkinsfile
LICENSE.TXT
changelog.txt
package.json
readme.md
translations.txt
tsconfig.json
tsconfig.plugin.json
tsconfig.theme.json
tslint.json

readme.md

TinyMCE - JavaScript Library for Rich Text Editing

TX flow

  • Start with "Building TinyMCE" section
  • When you need to contribute, use grunt start and use the demos to develop and test features
  • Use grunt bundle --plugins=noneditable,paste in the root tinymce folder
  • Copy tinymce/js/tinymce/tinymce.full.min.js to the folder we keep our editor

Building TinyMCE

Install Node.js on your system. Clone this repository on your system

$ git clone https://github.com/tinymce/tinymce.git

Open a console and go to the project directory.

$ cd tinymce/

Install grunt command line tool globally.

$ npm i -g grunt-cli

Install all package dependencies.

$ npm install

Now, build TinyMCE by using grunt.

$ grunt

Build tasks

grunt Lints, compiles, minifies and creates release packages for TinyMCE. This will produce the production ready packages.

grunt start Starts a webpack-dev-server that compiles the core, themes, plugins and all demos. Go to localhost:3000 for a list of links to all the demo pages.

grunt dev Runs tsc, webpack and less. This will only produce the bare essentials for a development build and is a lot faster.

grunt test Runs all tests on PhantomJS.

grunt bedrock-manual Runs all tests manually in a browser.

grunt bedrock-auto:<browser> Runs all tests through selenium browsers supported are chrome, firefox, ie, MicrosoftEdge, chrome-headless and phantomjs.

grunt webpack:core Builds the demo js files for the core part of tinymce this is required to get the core demos working.

grunt webpack:plugins Builds the demo js files for the plugins part of tinymce this is required to get the plugins demos working.

grunt webpack:themes Builds the demo js files for the themes part of tinymce this is required to get the themes demos working.

grunt webpack:<name>-plugin Builds the demo js files for the specific plugin.

grunt webpack:<name>-theme Builds the demo js files for the specific theme.

grunt --help Displays the various build tasks.

Bundle themes and plugins into a single file

grunt bundle --themes=silver --plugins=table,paste

Minifies the core, adds the silver theme and adds the table and paste plugin into tinymce.min.js.

Contributing to the TinyMCE project

TinyMCE is an open source software project and we encourage developers to contribute patches and code to be included in the main package of TinyMCE.

Basic Rules

  • Contributed code will be licensed under the LGPL license but not limited to LGPL
  • Copyright notices will be changed to Ephox Corporation, contributors will get credit for their work
  • All third party code will be reviewed, tested and possibly modified before being released
  • All contributors will have to have signed the Contributor License Agreement

These basic rules ensures that the contributed code remains open source and under the LGPL license.

How to Contribute to the Code

The TinyMCE source code is hosted on Github. Through Github you can submit pull requests and log new bugs and feature requests.

When you submit a pull request, you will get a notice about signing the Contributors License Agreement (CLA). You should have a valid email address on your GitHub account, and you will be sent a key to verify your identity and digitally sign the agreement.

After you signed your pull request will automatically be ready for review & merge.

How to Contribute to the Docs

Docs are hosted on Github in the tinymce-docs repo.

How to contribute to the docs, including a style guide, can be found on the TinyMCE website.

Documentation

Log feedback

You can’t perform that action at this time.