diff --git a/.gitignore b/.gitignore index 794cf9ee5..f6c8d5da1 100644 --- a/.gitignore +++ b/.gitignore @@ -15,4 +15,9 @@ tmp/ backups/ *.pid *.log -*.sqlite \ No newline at end of file +*.sqlite + +# ignore config files +config.json +public/js/common.js +.sequelizerc diff --git a/.sequelizerc b/.sequelizerc.example similarity index 100% rename from .sequelizerc rename to .sequelizerc.example diff --git a/README.md b/README.md index 7e7b1f809..3443e1d5a 100644 --- a/README.md +++ b/README.md @@ -43,7 +43,7 @@ Get started --- 1. Download a release and unzip or clone into a directory -2. Enter the directory and type `npm install && bower install`, which will install all the dependencies +2. Enter the directory and type `bin/setup`, which will install npm/bower dependencies and create configs. The setup script is written in Bash, you would need bash as a prerequisite. 3. Setup the configs, see more below 4. Setup environment variables which will overwrite the configs 5. Run the server as you like (node, forever, pm2) diff --git a/bin/setup b/bin/setup new file mode 100755 index 000000000..66279e816 --- /dev/null +++ b/bin/setup @@ -0,0 +1,52 @@ +#!/bin/bash + +# run command at repo root +CURRENT_PATH=$PWD +cd $(git rev-parse --show-toplevel) + +if ! type npm > /dev/null +then + cat << EOF +npm is not installed, please install Node.js and npm. +Read more on Node.js official website: https://nodejs.org +Setup will not be run +EOF + exit 0 +fi + +if ! type bower > /dev/null +then + echo "bower is not installed, install via npm" + npm install -g bower +fi + +echo "copy config files" +if [ ! -f config.json ]; then + cp config.json.example config.json +fi + +if [ ! -f publis/js/common.js ]; then + cp public/js/common.js.example public/js/common.js +fi + +if [ ! -f .sequelizerc ]; then + cp .sequelizerc.example .sequelizerc +fi + +echo "install npm and bower packages" +npm install && bower install + +cat << EOF + + +Edit the following config file to setup hackmd server and client. +Read more info at https://github.com/hackmdio/hackmd#configuration-files + +* config.json -- server config +* public/js/common.js -- client config +* .sequelizerc -- db config + +EOF + +# change directory back +cd $CURRENT_PATH diff --git a/config.json b/config.json.example similarity index 99% rename from config.json rename to config.json.example index 35efcd251..22fd5c920 100644 --- a/config.json +++ b/config.json.example @@ -49,4 +49,4 @@ "clientID": "change this" } } -} \ No newline at end of file +} diff --git a/public/js/common.js b/public/js/common.js.example similarity index 100% rename from public/js/common.js rename to public/js/common.js.example