csycms

2.0.6 • Public • Published

csycms CLI

CSYCMS, acronym for Csyber Systems Content Management System is a:

  1. Markdown powered (blog aware) static site generator,
  2. markdown powered knowledge-base,
  3. Flat-file CMS, and
  4. API server for node.js

If we had known about Jekyll in 2018 (3 years ago) when we began this project, we would probably have chosen to use it for building our sites. But now three years down the line we been able to add features that Jekyll does not have and it would be more expensive for us to switch over to it than to keep patching things up here an adding new features that we need along the way.
— Brian Onang'o, csycms developer.

Table of Contents

Inspiration

We received much inspiration for this project from php's User Frosting and node's Raneto

back home

Features

  • Static Site Generation - You can build your site and with one command generate a static site to be hosted for instance on github pages.
  • Static Site server - You can also choose not to build run your site and server it using csycms.
  • API server - You can also choose to have csycms server the API for your site, but have the front end hosted elsewhere or also from csycms.
  • Multiple sites - You can build and server multiple sites using csycms

Visit http://learn.csycms.csymapp.com to see a demo and get started!

The underlying architecture of CSYCMS is designed to use well-established and best-in-class technologies. Some of these key technologies include:

  • Markdown: for easy content creation
  • Hogan Templating: for powerful control of the user interface
  • Microservices to make deployments of multiple sites more stable

Welcome to the world of CSECO and Csyber Systems where every other words begins with cs, pronouced psy. So that csycms is pronounced psy cms

back home

Comparison with Other Systems

Jekyll

  1. csycms is built with node, Jekyll with Ruby.
  2. csycms has an api server, Jekyll seems not to have one.
  3. both generate sites which can be hosted on github pages

Grav

  1. Grav is php, csycms is node.
  2. Grav is a CPU gazzler especially when performing a search. csycms tries not to be.

Raneto

  1. csycms has an api server, Raneto seems not to have one.
  2. csycms can host several sites.

Therefore, while the other systems (listed above and more) are older and more stable, in our own little world here, csycms seems to have features that they lack.

back home

Requirements

  • OS: linux
  • Node v12+

If you intend to use csycms to server your sites, then you'll need to install nginx to set up a reverse proxy.

back home

QuickStart

npm install -g csycms
sudo csycms init
sudo csycms site --create -n "$SITENAME" -p "$PORT"

Edit site configurations in /etc/csycms/sites-available/$SITENAME

Once you have editted the configurations, you can restart the subprocess serving the site using csycms site --restart -n $SITENAME

Configuration

Set configurations in /etc/projectname/config/system.yml with:

sshKey: ~/.ssh/id_rsa # ssh key
PORT: 2121 # port for communication between csycms and sites
update: 86400 # system update interval in seconds

todo

  • [ ] Contact Page on site template & co.
  • [ ] Custom Error Pages.
  • [ ] Protected Content.
  • [ ] Search.
  • [ ] http -> https on github pages
  • [ ] Built with csycms
  • [ ] sync site without message

Readme

Keywords

none

Package Sidebar

Install

npm i csycms

Weekly Downloads

1

Version

2.0.6

License

none

Unpacked Size

114 kB

Total Files

52

Last publish

Collaborators

  • surgbc