Nouwell is a free (both as in beer and as in speech) content management system. It features a user friendly admin interface, as well as a powerful plugin system and theme support. As opposed to the majority of content management systems out there, Nouwell doesn't regenerate the page at every request; instead, it generates the entire directory structure of the website, with plain .html files, after you've made changes in the admin interface.
Nouwell has the following dependencies:
* PHP 5 (including the JSON module)
* Node.js
* Some web server (Apache, NGINX, etc.)
-
Clone this repository into a directory (henceforth referred to as
installDir) that is not accessible from the web server:cd installDir git clone https://github.com/mortie/nouwell.git -
Edit the configuration file (
installDir/conf.json}, and setadminPasswordto the desired administration password. -
Set your web server's web root to
installDir/public/. I suggest using Apache VirtualHost or similar if you want to host more websites than one Nouwell instance on the same physical server. Just make sureinstallDir/public/is a web root, and thatinstallDiris not accessible from the outside. -
Go to
{your website or IP}/admin/in your browser, and log in with the password you set in step 2. Go to theBuildtab, and pressBuild. With some luck, it will tell you that it generates a new page calledHome, and then finish without errors.
Because Nouwell generates a directory structure with static HTML files, it can be made to work with even the most limited of web hosts.
-
Set up Nouwell on a computer (be it your personal one or a VPS or physical server you have access to) according to the "On a private server" instructions.
-
Make the desired changes.
-
Copy
installDir/public/to your web host's web root.
Repeat step 3 every time you make any changes. It may be a good idea to make a script to automate that.
Please note that your web support will likely need to support PHP (with the JSON module) in order to support plugins. Even if your web host supports PHP, you may encounter some plugins which don't work.
All the files in this repository, with a few exceptions, are copyrighted by me, Martin Dørum Nygaard, and licensed under the GNU GPL V2.
The exceptions are:
* Everything in the directory node_modules/
* Everything in the directory admin/lib/ (and public/admin/lib/)