Giter VIP home page Giter VIP logo

pulsarcms's Introduction

Pulsar

Pulsar is an advanced content management system. Its main goals are to offer the best online content creation tools atop a completely decentralized social network. It exists as a dedicated JSON data-on-wire API service and an AngularJS single-page application front end. The AngularJS client is to be regarded as the reference client. It shows you how to implement every available feature of the Pulsar API.

By adhering to a rigid set of rules guaranteeing an appropriate separation of concerns, domain owners can simply "theme" the reference client or build an entire client of their own. If, for example, you need a search engine optimized version of Pulsar that presents on the server, have at it! A supported use of Pulsar would be to build a Web application that calls the Pulsar API, presents its data and returns presented HTML.

Another supported use of the Pulsar platform is as the backing store for mobile apps. A very wide array of mobile applications can be entirely implemented with the Pulsar API as their online service.

Installation

git clone https://github.com/robcolbert/pulsarcms.git

Usage

MongoDB and Memcache

The Pulsar API server requires MongoDB and memcached. To help automate the proper startup of these components, the ./data directory is provided.

It contains a script "start" that will Kill all running mongod and memcached processes, then start a new pair with the configuration found in the ./data directory. If you choose not to run MongoDB as root (advised), then you must kill any existing mongod and memcached services that are started by the system at boot or by the administrator as permission to kill them will be denied otherwise.

cd pulsarcms/data
  ./start

Pulsar API Server

The Pulsar API server is what "does" everything in Pulsar. It is where pulses, user accounts and everything else in Pulsar are stored and processed.

To start the API server:

cd pulsarcms/api
  ./start

Grunt can also be used to start the server and is useful for live-hacking (but absolutely not acceptable for production service):

cd pulsarcms/api
  grunt

Notes

  • If you run the API server under Grunt and perform a "git pull origin master" on your box, you probably just restarted your API server. Hope everyone's okay with that!
  • The API server's Winston log file needs manually rotated. cron is your friend.
  • API client sessions are managed with signed cookies in memcached.
  • If a single request to http://api.yourserver.com:10010/sessions, for example, takes about 30 seconds and then logs "ECONNREFUSED" or similar - you need to start memcached. It is not optional, and is expected to be running on 127.0.0.1:11211 (not 0.0.0.0).

HTML5 SPA Front End

cd pulsarcms/frontend
  grunt build

Grunt builds the HTML5 SPA client to pulsarcms/frontend/dist. It is a cache-busted, packed and optimized build of the default client. Simply point an httpd at that directory as the web root exposed publicly as TCP/80, and it's online.

pulsarcms's People

Contributors

blakelapierre avatar christianbundy avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.