Locomotive is an Open Source Content Management System that makes it super easy to develop and design  exactly what your clients need.

Locomotive Free CMS Software

Self Hosted Multisite CMS With Liquid Templating for Scalable Applications. 

Locomotive is an Open Source Content Management System that makes it super easy to develop, design and publish exactly what your clients need. 

 

Overview

Locomotive, the Ruby on Rails application, also named Engine, is an open source platform to create, publish and edit sites (CMS). It is designed to save time, uses mongodb and liquid templates and help you focus on what matters: front-end technology, standard development process and a very low learning curve for your clients. Locomotive CMS uses the exact same template engine as for Shopify, one of the best hosted e-commerce solution. All you do is write your content and its instantly published.

Locomotive slick back-office editor makes managing site content easy for users and Wagon development tool makes coding these sites faster and more fun than ever for developers. Sites are deployed to the platform (engine) with use of internal API. A back-office for the end-users is automatically generated based on the custom models and editable regions described by the developers. If you are looking for a open source content management platform for high performance, scalability, and simplicity. Then, LocomotiveCMS will help you develop faster websites that your clients will love to use. This brief tutorial is going to show new users how to install LocomotiveCMS on Ubuntu systems.

System Requirements

LocomotiveCMS features like permalinks, categories, pages, posts, and custom layouts are all top content and SEO friendly. Locomotive CMS depends on below technologies.

  • Ruby 2.5 (or higher)
  • Ruby on Rails 5.2.4.1
  • ImageMagick
  • MongoDB 3.4
  • NodeJS
  • Liquid
  • Linux 64-bit distributions supporting APT, like Ubuntu or Debian.

Features

LocomotiveCMS offers features that may not be available to other PHP based CMS, like WordPress Joomla or Drupal. You will have out of the box. 

  • Multi sites: manage multiple websites with one application instance
  • Flexible content types
  • Front-end inline editing (Aloha editor)
  • Content localization
  • Restful API to manage every site
  • Support for Webpack, SASS, HAML and Coffee Script (Wagon)
  • Liquid clean templating langage
  • A very nice User Interface
  • Installation Instructions
  • Install Locomotive on Linux (Debian-based)
  • Locomotive below instructions only work for 64 bit Debian-based Linux distributions such as Ubuntu, Mint etc.

Installation Instructions

Install LocomotiveCMS on Linux (Debian-based)

Locomotive following instructions only work for 64 bit Debian-based Linux distributions such as Ubuntu, Mint etc.

Create a new Ruby on Rails application:

rails new locomotiveapp --skip-bundle --skip-active-record
cd locomotiveapp

Make sure you delete the robots.txt file from public/ otherwise any future sites' robots.txt setting won't be picked up. Add the Mongoid and Devise gems in your Gemfile.

gem 'devise', '~> 4.7.1'
gem 'mongoid', '~> 6.4.0'

Install them and run their setup tasks

bundle install
bundle exec rails generate mongoid:config
bundle exec rails generate devise:install

Update the Gemfile of the Rails application by adding the locomotivecms gem.

gem 'locomotivecms', '~> 4.0.1'

Run the Locomotive installation generator

bundle update
bundle exec rails generate locomotive:install

The installation adds the puma gem to the Rails application's Gemfile. An additional bundle install is required:

bundle install

Finally, run the Rails server

rails server

That’s it! Now, open your browser at http://localhost:3000/locomotive. You should see the Locomotive Sign in page. Click on "Do not have an account?" link at the bottom page and fill in the Sign up form in order to create your first account. Now you can push a site template by installing Wagon and deploying your site to the Engine.

Congratulations! You have successfully installed Locomotive CMS platform.