--- # Scope: # * Guide developers through the basic API to achieve their very first results with CKEditor. title: Basic API category: builds-integration order: 20 --- ## Creators Each CKEditor 5 build provides a class that handles the creation of editor instances ininfo a page. For this reason they are called "creators". Every creator comes with a static `create()` method. The following are creator class names for each build: * Classic editor – {@link module:editor-classic/classiceditor~ClassicEditor} * Inline editor – {@link module:editor-inline/inlineeditor~InlineEditor} * Editor with balloon toolbar (Medium-like) – {@link module:editor-balloon-toolbar/balloontoolbareditor~BalloonToolbarEditor} Most of the examples in the documentation use the `ClassicEditor` class, but things should work in a similar way with other creator classes. Because builds are distributed as [UMD modules](https://github.com/umdjs/umd), these classes can be retrieved: * by a [CommonJS](http://wiki.commonjs.org/wiki/CommonJS)-compatible loader (e.g. [Webpack](https://webpack.js.org) or [Browserify](http://browserify.org/)), * by [RequireJS](http://requirejs.org/) (or any other AMD library), * from the global namespace if none of the above loaders is available. For example: ```js // In CommonJS environment. const ClassicEditor = require( '@ckeditor/ckeditor5-build-classic/build/ckeditor.js' ); ClassicEditor.create; // [Function] // If AMD is present, you can do this. require( '/(ckeditor path)/build/ckeditor.js', ClassicEditor => { ClassicEditor.create; // [Function] } ); // As a global. ClassicEditor.create; // [Function] ``` Depending on which build you are using, creating an editor in the page is then a breeze: In the HTML code: ```html ``` In the script: ```js ClassicEditor .create( document.querySelector( '#text-editor' ) ) .then( editor => { console.log( editor ); } ) .catch( error => { console.error( error ); } ); ``` In the above case, the `