Cody CMS
Fork me on GitHub

Installeer Cody

 

Using npm

  

  • Install nodejs and mysql
  • Create a new directory for your cms and navigate to it (in unix):

      $ mkdir codysites
      $ cd codysites
    
  • Install cody and its dependencies

      $ npm install cody
    
  • Set up a new web site using the guided scaffolding

      $ node ./node_modules/cody/bin/create_site.js 
    
    Creating project in  /Users/johan/codysites/
    
    
    
    1) Enter projectname: firstApp
    Note: also using firstApp as database name.
    
    Note: by default the mysql root user has no password so you can just hit enter, if you forgot the root password http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html
    
    2) Enter root password for mysql so we can create a new database and user: xxxxx
    
    3) Enter site database user: firstUser
    
    4) Enter site database password: firstPW
    
    5) Enter hostname for site: first
    
    6) Enter a location for storing documents: /usr/local/data/first
      [ windows users could use something like C:\documents\first ]
      [ *nix users without write permission in /usr/local for example: /home/billgates/cody/data ] 
    
    mkdir /Users/johan/codysites/firstApp/static
    mkdir /Users/johan/codysites/firstApp/static/css
    mkdir /Users/johan/codysites/firstApp/static/images
    mkdir /Users/johan/codysites/firstApp/static/js
    mkdir /Users/johan/codysites/firstApp/views
    
    created /usr/local/data/first/
    created /usr/local/data/first/images
    created /usr/local/data/first/files
    
    ---
    Site 'firstApp' has been prepared.
    
    Please create DNS entries, or add to /etc/hosts:
    127.0.0.1     first
    Also check index.js and config.json to fine-tune extra parameters, encryption key, ...
    ---
    
    Start your site using:
    $ forever start firstApp.js
        or
    $ node firstApp.js
    
    
  • Go to "http://firstApp:3001" to see your current site and go to "http://firstApp:3001/en/dashboard" to see the CMS of the site.

    the default users are: 'super', 'admin', 'test' and 'user' which all have password 'empty'


 

Installing from source [outdated - use git clone]

 

- unpack zip

# download the zipfile from our homepage containing our latest release
unzip cody.zip
cd cody

 

substitute the name of your project/website for "mysite" in the rest of the page.

- create database + load initial content 

#
# create a database and user for your wesite (feel free to use a different user)
#
mysql -e "create database mysite default charset utf8"
mysql -e "grant all on mysite.* to 'cody'@'%' identified by 'ydoc'"
mysql -e "grant all on mysite.* to 'cody'@'localhost' identified by ydoc"
#
# now load all the initial content
#
mysql -u cody -p ydoc mysite < setup.sql

 

- install node.js

# download the latest version from http://nodejs.org
# follow the instructions

 

- install needed packages

# in the directory where you installed cody
# normally the node_modules are present in the release file

npm install express
npm install ejs
npm install mime
npm install mysql
npm install simplesmtp
npm install nodemailer
npm install forever -g

 

- create a dns name to use

# add to your /etc/hosts (or other) file an entry as below

127.0.0.1       mysite.local

# or create an A or CNAME record for test.mysite.com on the dns server of mysite.com with the IP address of the machine where you are installing the instance of Cody

 

- startup script parameters + forever start index.js

# personalise and run the startup script: edit index.js
#
# change the database user and password if wanted.
# if you don't have access to your own domain + dns server # add "local.mysql" to your /etc/hosts file pointing to 127.0.0.1 # cody.startWebApp(cody.server, { # "name": "mysite", # "version": "v1.0a1", # "defaultlanguage": "en", # "hostnames" : "www.mysite.com,mysite.com,local.mysite", # "dbuser": "cody", # "dbpassword": "ydoc", # "dbhost": "localhost", # "datapath": "/usr/local/data/mysite", # "db": mysite, # "controllers": require("./mysite/controllers/") # }, ...); forever start index.js

In the users table of the created database / cms, we've created 3 users: rsuper, radmin and rtest, each with the password "ydoc", you can use these to create new users and to test the different user levels.