---
title: "Using the TinyMCE .zip package with the Ruby on Rails framework"
description: "A guide on integrating a .zip version of TinyMCE into the Ruby on Rails framework."
canonical_url: "https://www.tiny.cloud/docs/tinymce/latest/rails-zip/"
md_url: "https://www.tiny.cloud/docs/tinymce/6/rails-zip/index.md"
version: "6"
last_updated: "2022-03-31T00:32:33Z"
tokens: 581
---
Important This page documents TinyMCE 6. For new projects, Tiny recommends using the latest, most up-to-date version. [See TinyMCE 8 documentation](../../latest/rails-zip/).
# Using the TinyMCE .zip package with the Ruby on Rails framework

Self-hosted instances of TinyMCE can be integrated into Ruby on Rails projects. This procedure creates a [basic Ruby on Rails application](https://guides.rubyonrails.org/getting_started.html) containing a TinyMCE editor.

## Prerequisites

This procedure requires the following programs:

- [Node.js](https://nodejs.org/)
- [Yarn](https://yarnpkg.com/)
- [Ruby](https://www.ruby-lang.org/)
- [SQLite 3+](https://sqlite.org/index.html)
- [Ruby on Rails](https://rubyonrails.org/)

## Procedure

On a command line or command prompt:

1. Create a new Ruby on Rails project.

```sh
rails new myTinySite
```
2. Navigate into the project directory.

```sh
cd myTinySite/
```
3. Create a new Rails controller, such as:

```sh
rails generate controller Welcome index
```
This creates a controller named `Welcome` with an action named `index`.
4. Set the project home page to `index`.

  1. Using a text editor, open `config/routes.rb`, such as:

```sh
nano config/routes.rb
```
  2. Add `root 'welcome#index'` to set `index` as the project home page. For example:

```ruby
Rails.application.routes.draw do
  get 'welcome/index'

  root 'welcome#index'
end
```
5. Add the following lines within the `<head>` element of `app/views/layouts/application.html.erb` to automatically include TinyMCE on pages using the `application` layout:

```html
<script src="/path/to/tinymce.min.js"></script>
<script>
  tinymce.init({
    selector: '.tinymce',
    plugins: 'lists link image table code help wordcount'
  });
</script>
```
6. Create a `<textarea>` with the initial content `Hello, World!` for TinyMCE by adding the following lines to `app/views/welcome/index.html.erb`:

```erb
<%= text_area_tag :content, "Hello, World!", :class => "tinymce" %>
```
7. On a command line, from the project’s root directory, start the Ruby on Rails server.

```sh
rails server
```
The page containing the TinyMCE will be accessible at `http://localhost:<port>/` (default: [http://localhost:3000/](http://localhost:3000/)).
