To learn how to build websites with PencilBlue, read our tutorials.
The first open source content management system to meet all the needs of a modern website:
- Full blogging capabilities, out of the box
- Relational data creation and management, through the admin interface
- An expansive plugin framework that allows for modification of even core platform functionality
- Designed for the cloud, with built in support for server clustering and high availability websites
- Built in support for some of the latest and most popular web technologies, including MongoDB, Redis, Bootstrap, AngularJS, and jQueryUI
- 100% mobile ready through responsive web design
- Touch friendly, drag and drop website management experience that's easy for non-technical users to learn
The instructions below assume that Node.js and MongoDB are installed on your machine. If they are not then please visit http://nodejs.org and http://www.mongodb.org to install them.
- Install the pencilblue-cli module:
sudo npm install -g pencilblue-cli
- Run
pencilblue install [directory]
where [directory] is the directory you want PencilBlue to be installed to. - Follow the install instructions
- After the installation is done,
cd
into the folder where you installed PencilBlue - Run
pencilblue start
- Clone the PencilBlue repository
cd
into the cloned repository's folder- Run
npm install
to retrieve PencilBlue's dependencies. Depending on your system access privileges, you may have to runsudo npm install
- (Optional) Install Redis for caching
- (Optional) Create a custom configuration file using the provided
sample.config.json
. The file can reside in two places: within the root folder of your installation asconfig.json
or at/etc/pencilblue/config.json
. The installation root takes precedence. If running all services locally, no configuration file is needed, but a configuration file is necessary for overriding specific settings. - Start PencilBlue. You can simply run
node pencilblue
, but we recommend using nodemon for development and forever for production. Nodemon will restart PencilBlue on file changes and forever will ensure that PencilBlue is always running.
# development
nodemon pencilblue
OR
# production
sudo forever start pencilblue.js
- Navigate to the site root you specified in a configuration file or http://localhost:8080 by default.