selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

LocomotiveCMS Engine logo

Self-host LocomotiveCMS Engine

v4.1.1

Open-source CMS with local dev workflow and auto back-office

ReleaseOpen SourceOther
Updated15 hours ago
LanguageRuby
Setup difficultyAdvanced
Stars
2 321
Port
3000 (Rails server (Engine))
Requires
MongoDB, Node.js
Install with Docker Compose
LocomotiveCMS back-office editing interfaceQuick start tutorial preview site with Bulma styling

What is LocomotiveCMS Engine?

LocomotiveCMS Engine is the server-side Ruby on Rails application of the LocomotiveCMS platform. Developers create sites locally using the companion CLI tool Wagon (supporting Liquid, SASS, HAML, Webpack), then deploy to an Engine instance which automatically generates a back-office interface for non-technical editors based on the defined content types and editable regions. The Engine supports multi-site management, full content localization, a RESTful API for programmatic access, and custom sections for reusable UI components. It runs on Ruby 3+, Rails 7, and MongoDB 6 via Mongoid. Self-hosting options include Docker Compose (with MongoDB), Heroku with MongoDB add-ons and S3 for assets, or a manual Rails installation on any server. The project is MIT-licensed and maintained by NoCoffee.

Should you self-host LocomotiveCMS Engine?

LocomotiveCMS Engine scores 58/100 on selfhost.directory (how scoring works) and ranks #9 of 18 in Content Management. It has 2 321 GitHub stars.

There was no stable release in the past 12 months, so check the repository's recent activity before you rely on it.

Setup is advanced: plan for several services and some ongoing maintenance. It is Other-licensed and written mostly in Ruby.

Its closest alternative on selfhost.directory is EmDash (67/100, 14 030 stars). It scores higher overall, so compare the two before you pick. See LocomotiveCMS Engine vs EmDash side by side.

Features

  • Auto-generated back-office
  • Content relationships
  • CSV Import
  • Custom content types
  • Custom sections
  • Full localization
  • Liquid Templating
  • Local development with Wagon
  • Multi-Site Management
  • RESTful API

LocomotiveCMS Engine README

How to install LocomotiveCMS Engine

Install LocomotiveCMS Engine with Docker Compose

Docker, Docker Compose
Environment variables
MONGO_INITDB_ROOT_USERNAME, MONGO_INITDB_ROOT_PASSWORD, MONGO_INITDB_DATABASE

services: mongodb: image: mongo:6.0 container_name: locomotive_mongodb restart: unless-stopped environment: MONGO_INITDB_ROOT_USERNAME: admin MONGO_INITDB_ROOT_PASSWORD: password MONGO_INITDB_DATABASE: locomotive_engine_dev ports: - "27017:27017" volumes: - ./mongodb_data:/data/db - ./docker/mongo-init:/docker-entrypoint-initdb.d networks: - locomotive_network command: mongod --auth --bind_ip_all

Optional: MongoDB Express for web-based admin interface

mongo-express: image: mongo-express:latest container_name: locomotive_mongo_express restart: unless-stopped environment: ME_CONFIG_MONGODB_ADMINUSERNAME: admin ME_CONFIG_MONGODB_ADMINPASSWORD: password ME_CONFIG_MONGODB_URL: mongodb://admin:password@mongodb:27017/ ME_CONFIG_BASICAUTH_USERNAME: admin ME_CONFIG_BASICAUTH_PASSWORD: password ports: - "8081:8081" depends_on: - mongodb networks: - locomotive_network

volumes: mongodb_data: driver: local

networks: locomotive_network: driver: bridge

Docker Compose file provides MongoDB and optional MongoDB Express; Engine app image not included in this compose file

More in Content Management

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…