An Expressive CMS built on Express and Node.js
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.idea
bin
private
public
routes
schemas
test
views
.bowerrc
.gitignore
.nodemonignore
.travis.yml
Expressive.iml
LICENSE
README.md
actions.js
app.js
bower.json
config.js
data.js
extend.js
package.json

README.md

Expressive

Build Status Dependency Status devDependency Status Coverage Status

Expressive is a beautiful CMS for Express and Node.js. Expressive is awesome, extendable, themeable, testable and growing.

Expressive is in a very unstable alpha state

Getting Started

Expressive is not ready for production use, but here is how you can start contributing to Expressive.

$ npm install

The rest of the installation should be hooked into the postinstall process (bower install, etc), and should complete successfully.

To run Expressive, you have a number of options. My favorite is using Nodemon to watch for changes. Expressive even includes .nodemonignore to make sure Nodemon watches the right files and ignores ones that don't matter (usually). You also need to make sure you have MongoDB available somewhere. The Expressive installer should guide you through connecting the database and setting up your first user.

$ DEBUG=expressive:* node ./bin/www
$ DEBUG=expressive:* npm start
$ DEBUG=expressive:* nodemon

Once Expressive is running, open http://localhost:3000/ and follow the setup guide. You'll need to have a MongoDB instance running. Once you're in, you can sign into the administration pages at http://localhost:3000/admin. Most unfinished areas of Expressive will give you a 404 error.

Extensions

An example extension is included with Expressive, showing how awesome the extendability of Expressive is. Extensions are usually entirely separate Express apps with access to the parent app for hooking in their features.

Much of Expressive's extendability is unfinished, and continuously changing

TODO: Write better documentation.

Contributing

Checkout the Expressive GitHub Wiki for more information about the development cycle.

To make contributions to Expressive, follow the steps below to get your changes in the CMS. My mission with Expressive is to build a largely extendable CMS, so try to write code that allows for some awesome extensions around it.

  1. Fork the hnryjms/Expressive repo
  2. Commit changes to your fork
  3. Create a pull request back into the original
  4. Win

Make sure to run & write tests for your cool things.

Testing

We use the mocha testing framework. To run tests, first install the module with development dependencies.

$ npm install

You can run tests through npm or through mocha. Both will have the same result.

$ npm test
$ mocha test

License

Expressive is available under the GNU GPL v3.0 License.

See the LICENSE for the more information about the GNU licence legal terms.