Instructions for Installing a Steemit.com Instance (For Developers Interested in Working on Changes to Steemit.com)

If you are interested in making changes to the Steemit.com website, you will need to setup a local instance of the website to work on. Here are the instructions to do so!

The steps below are basically the instructions from the Steemit.com GitHub Repository, with some minor variations / updates based on some hurdles that I ran into and overcame when I was following the steps.

I have run these multiple times on a clean Ubuntu 16.04 system, and they should work exactly "as-is" on Ubuntu 16.04. There are also variations in the GitHub Repo for OS X, and Debian based Linux.

Clone Steemit.com from GitHub

git clone https://github.com/steemit/steemit.com

Create a "tmp" directory

cd steemit.com
mkdir tmp

Download and Load NVM

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.32.1/install.sh | bash

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"

Verify NVM is running

command -v nvm # verify

(It should output nvm)

Install Dependencies

nvm install v6
npm install
npm install -g babel-cli

Create Config File

cd config
cp steem-example.json steem-dev.json

Generate a Secret String

node
> crypto.randomBytes(32).toString('base64') 
> .exit

(Copy the string that was output.)
(It will look something like this: MQd4aPyBhnHhjeEoqKb7m1QFVuTTYZFtWyGkfejgSbo=)

Save your secret string to the config file

nano steem-dev.json
  1. Choose and enter a MySQL root password (you will use this later)
  2. Paste the secret string in for 'server_session_secret'

INSTALL SQL

cd ..
sudo apt-get update
sudo apt-get install mysql-server
(Enter the MySQL root PW that you used above when prompted)

Run MySQL

mysql -u root -p
(enter password)

Create the "steemit_dev" database

> create database steemit_dev;
> quit

Install sequelize-cli globally

npm install -g sequelize sequelize-cli pm2 mysql

Configure the MySQL Password in the config file

cd db
cd config
nano config.json
(enter pw)

Run sequelize db:migrate in db/ directory

cd ..
sequelize db:migrate

Launch Steemit.com

cd ..
npm start

Wait until it shows "Application started on port 3002".

Connect to your local steemit.com instance!

http://123.456.789.001:3002/

(Use the IP address of your system)

That's it!

If you have any questions, let me know and I will do my best to help :-)

H2
H3
H4
3 columns
2 columns
1 column
20 Comments