NEXUS
/

CMS

Setup a Nexus powered website under 1 minute.

Overview

Features

Create and edit Nexus instances, with the reader app and theme of your choice.
The web pages and Nexus .json source files are automatically built and deployed.

Additionnally create and edit custom web pages, with any kind of content.
Rich text editor and markdown mode. Support for all markdown/class-less themes.

Free, open source, and extensible.

Under the hood, Nexus CMS makes use of 11ty to generate files, and Netlify CMS for a user-friendly backend.

Screenshots

Nexus Cms Backend Nexus Cms Backend - Markdown Pages

Installation

Some steps can not be automated, but it’s super easy and should take less than 1min.

Deploy to Netlify

I’m an old dog

Step-by-step please

If you’re unfamiliar with GitHub or Netlify, the Third Parties section is there for you.

One-click Deploy

Configure Netlify

Setup Nexus Cms

User Guide

Options

Settings > Nexus
Currently available apps, themes and languages.
You’re very much welcome to contribute!

Reader apps

Themes

Languages

It’s very optional, as currently only used by NxIO on-the-go editor app.

Live Preview

For each collections, Settings, Nexus and Pages, you’ll have a form a the left side, and a live preview on the right.

Front page

If you’ve just published some changes, then reloaded or left the /admin page, the Settings > Site preview might not be immediately up-to-date. In which case, you can simply wait a dozen of seconds, then click the eye icon to toggle off then on again the preview panel.

You can find more info on the build process in the 11ty section.

Nexus instances

If a Nexus instance preview is displaying – /–:

Please note that if “official” Nexus apps do support Nexus CMS live preview feature, that may not be the case if you use a custom Nexus app.

If you plan to build a custom app, check Make it yours.

Favicons

If you wish to change your website favicons, you can do in Settings > Site.
Just make sure the new files names and dimensions are exactly as specified in the form.

Urls

In the admin section, urls are displayed at the top of the preview panel.

Specific pages

Default pages

Markdown

Static pages content can be written either in plain Markdown, or using the Rich Text editor.
You can toggle between the two modes on the content widget.

Markdown is a simple and easy-to-learn markup language used to format content.
Cheat sheet: markdownguide.org/cheat-sheet

You can easily create a menu listing your Static pages or Nexus instances:

To have both lists, simply add another Collection index block.

For a more custom menu, or to add a single link, you can use the Nexus instance link and Static page link blocks.

Advanced Tips

Switch to Private

By default the created repository will be public.
You can change it to private.

Your website will still be publicly accessible.

You will then need to regenerate your Netlify token.

Run Locally

Setup

Serve

Host anywhere

If you use Nexus CMS locally, you’re not bound to Netlify hosting services.
Run $ npm run build.
All built files are in the _site/ folder.
Drop the content of this folder anywhere you want.

If you plan to host the built files on an Apache server: required .htaccess files are already prepared.
Open .eleventy.js and simply uncomment the two indicated lines at the beginning of the config.

Make it yours

You can augment your 11ty site; add custom widgets to Netlify CMS; build your own Nexus app.

For a Nexus reader app to be compatible with the Nexus CMS live preview feature, it must:

Third Parties

GitHub

Git is a free and open source version control system.
It maintains a history of all changes made to a set a files, usually called a repository.

GitHub is a repository hosting service that provides a web-based graphical interface.
Their free tier is extremely generous with unlimited public and private repositories.

This is where your source files will be stored.

Storage limitations

You are still free to store your media files on another server or platform, as long as you can provide a working direct access url.
Nexus apps also support YouTube, Vimeo and Soundcloud urls.

Netlify

Netlify is a web hosting and automation platform.
Their free tier is perfectly fine for a Nexus CMS website.

How it works

A Content Delivery Network is a geographically distributed network of proxy servers.
Your website will be served from the closest server to each visitor.

How it meshes with Nexus

Since the whole principle of Nexus is to connect your content to other live, self-hosted Nexus instances, the Nexus part of the page is still built on-the-fly, and not pre-rendered. The focus of Nexus CMS is more on the self-hosted matter. This solution offers a simple, seamless way to create, edit and auto-deploy Nexus instances.

For efficiency, Nexus apps that take care of this on-the-fly rendering are also hosted on a Content Delivery Network.

Netlify CMS

Netlify CMS is a Git-based open source content management system.
It handles the core functionalities of the /admin section of your website.

Nexus CMS pre-configures and augments Netlify CMS to suit the project requirements.
Live previews are custom, as well as several widgets.
The theme is also tweaked a little bit.

11ty

Eleventy, or 11ty, is an open source static site generator.

It transforms templates into static files that, once built, will not require server-side processing.
It allows for faster, safer websites, that can be hosted anywhere.

11ty is the part of Nexus CMS responsible for building your html pages and Nexus .json files.
Each time you will save a change, either to settings, a Nexus instance or a page, a new build will be triggered.

Build time

On average, an 11ty build running on a Netlify free plan takes about 2 minutes.
Nexus CMS has been designed for a faster process: it should only take 15 to 20 seconds.
If you have a lot of data though, it might be a bit longer.

Repository

github.com/I-is-as-I-does/Nexus-CMS