HAX with a lightweight CMS backend to manage your microsite universe
Branch: master
Clone or download
Latest commit a0c2180 Feb 15, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
.ddev don't block these files nginx! Feb 11, 2019
.docksal updated routing and ssh git setup Jan 28, 2019
assets #92 #88 #53 Feb 12, 2019
babel #93 gitignore fix Feb 12, 2019
build more ux updates in text Feb 14, 2019
dist unnessecary Feb 12, 2019
scripts build for optimization and cleaning up some lighthouse score stuff Feb 11, 2019
system updated published versions to match Feb 12, 2019
vendor Update all dependencies Jan 21, 2019
.gitignore #93 gitignore fix Feb 12, 2019
.htaccess initial commit, needs love Jul 19, 2018
.lando.yml updated routing and ssh git setup Jan 28, 2019
LICENSE.md initial commit, needs love Jul 19, 2018
README.md #23 surge documentation added Aug 15, 2018
Vagrantfile updated routing and ssh git setup Jan 28, 2019
browserconfig.xml more clean up Aug 14, 2018
composer.json github publishing and key gen workflows working Jan 18, 2019
composer.lock github publishing and key gen workflows working Jan 18, 2019
dev.html dev script to work on top level Jan 18, 2019
favicon.ico wiring to work w/ rawgit, temporary solution for testing Aug 14, 2018
haxcms-jwt.php ESM branch at least starting to stand up Nov 26, 2018
index.php #92 #88 #53 Feb 12, 2019
manifest.json #93 gitignore fix Feb 12, 2019
package.json Merge branch 'master' of github.com:elmsln/haxcms Jan 21, 2019
polymer.json build for optimization and cleaning up some lighthouse score stuff Feb 11, 2019
renovate.json renovate preferences Jan 10, 2019
service-worker.js initial work to get things moved over to es modules Nov 19, 2018



HAX CMS seeks to be the smallest possible back-end CMS to make HAX work and be able to build websites with it. Leveraging JSON Outline Schema, HAX is able to author multiple pages, which it then writes onto the file system.

Install and win the future, NOW!

  • Clone this repo: git clone https://github.com/elmsln/haxcms.git
  • install docker
  • install ddev or install docksal or install lando or install vagrant (We support 'em all!)
  • open a terminal window, go to the directory and type ddev start (for ddev) or fin init (for docksal) or lando start && lando magic (for lando) or vagrant up (for vagrant)
  • go to the link any of them give you in a browser
  • username/password is admin/admin to get building out static sites locally that you can push up anywhere!
  • Click the icon in the top right and you're off and running!

Setup surge

If using ddev (the others need some clean up) you can automate the publishing of HAXCMS sites to surge.sh. The install routine for docker / local development tries to automate this but its difficult (and generic). So, if you want to use surge.sh for actually publishing your sites, go to the project directory and login ddev ssh (or equivalent though ddev is the only one working right now). Then type surge login and create / enter your username / password. Now you'll be able to publish the micro-sites direct to domains you define in the ui!


Generate .html files which have only "content" in them. Meaning the contents of the page in question. A simple method of adding new pages and managing the organization of those pages into a simple hierarchy (outline). Support for multiple mini web sites so that you can write a lot about different topics. HAXCMS is only intended to be a micro-site generator and play nicely with the rest of the HAX ecosystem without needing a monster CMS in order to utilize it.


  • All of HAX without needing a bloated CMS to power it
  • Incredibly simple, readable file structure of flat HTML files and lightning fast, high scale micro-sites
  • No database (simple .json files help manage the data)
  • Files you can reach out and touch, fork, and theme with ease!
  • Support for multiple sites
  • BUILT IN surge.sh PUBLISHING!!!!!


Download, checkout and get this package on a server (this is a PHP based implementation so your server should have PHP and Apache or Nginx at minimum). Go to the project root and type bash haxtheweb.sh which will step you through configuration.


Go to {{yoursite.com}} and login with the username and password you entered in the config.php by clicking on the login icon


Apache 2.0