tdp-ah-cms

2.4.2 • Public • Published

TDPAHCMS

DO NOT USE! IN HEAVY DEVELOPMENT

Version

Master: v2.4.2
Travis CI build status icon Coverage Status Dependency Status

Semver

This project aims to maintain the semver version numbering scheme.

Changelog

See the changelog file

Overview

A CMS/website framework based on the actionhero API framework and a suite of plugins to provide core functionality.

NOTE: This module installs only the server-side of the system. This module is agnostic of the front-end stack and the intention is that "people" will create various reference front-ends which may be based on any type/number of technologies.

Features

  • NodeJS 0.10+ and IOJS 1.x+ compatible
  • An API-based CMS/website framework (server-side)
  • Client/server operation - business logic happens on the server-side, presentation logic happens on the client (web browser)
  • Websockets and/or XHR transports available (XHR should work well with HTTP2)
  • Data exchange is via JSON
  • Several plugins provide core CMS/website features, for example:
    • An RBAC (Role-Based Access Control) ACL (Access Control List) to define which user roles are allowed to use each (server-side) API method. This includes (defined) inheritance from parent roles.
    • An authentication layer. This is fast and light, backed by Mongo DB and incorporating strong encryption and various other security controls.
    • A (server-side) session module to maintain private session data for users. This is backed by Redis and is super-simple to use (just set properties of a session object)
    • A simple content-item plugin which is based on markdown (with optional automatic conversion to HTML). A content item can be anything you like, a single word or phrase to an entire page of text.

Requirements

Production requirements

Development/test requirements

Installation

Installation is very simple and is simplest using npm:

# Install the NPM package. This essentially just copies an installer onto your computer/server 
npm install tdp-ah-cms
 
# Now run the local installer. This does the actual installation (including plugins etc.) 
npm run-script installer
 
# This is the point at which you'd likely install the front-end you want 
 
# Now you can start your instance: 
npm start
 

Configuration

As per the actiohero convention, configuration files all live inside /config (that path being relative to your project root) with plugin configs being in /config/plugins - one file per plugin, named for the plugin. See plugin docs for their configuration options and actionhero's for its.

Tests

Tests currently run automatically in travis and use mocha and should.

License

TDPAHCMS is issued under a Creative Commons attribution share-alike license. This means you can share and adapt the code provided you attribute the original aclor(s) and you share your resulting source code. If, for some specific reason you need to use this library under a different license then please contact me and i'll see what I can do - though I should mention that I am committed to all my code being open-source so closed licenses will almost certainly not be possible.

Package Sidebar

Install

npm i tdp-ah-cms

Weekly Downloads

0

Version

2.4.2

License

CC-BY-SA-3.0

Last publish

Collaborators

  • tdp_org