The Bitcoin Unlimited website, hosted at https://bitcoinunlimited.info
This is a node.js project requiring the npm package manager.
The following will install and build the project.
git clone git@github.com:BitcoinUnlimited/BitcoinUnlimitedWeb.git
cd BitcoinUnlimitedWeb
npm install
npm run build
This build targets NodeJS versions 6 and 8. Use n
and npm
to switch between NodeJS versions. npm install -g n
.
More info can be found at https://www.npmjs.com/package/n
.
To automatically rebuild and restart the server upon changes to src
, use both npm run watch
and npm run nodemon
.
Open http://localhost:8080
to view your website.
npm setup
: Install, build and start the server.npm start
: Start the servernpm run build
: Build the project into the.dist
folder and adds public downloads.npm run downloads
: Build or update the BitcoinUnlimitedWebDownloads.npm run watch
: Watch thesrc
directory for changes, and rebuild when changednpm run nodemon
: Use nodemon to run the server and restart when.dist
is changed
To add a page to the website:
- Create a react component such as
your-new-page.jsx
in thesrc/public/views/pages
directory. Seesrc/public/views/pages/index.jsx
for an example. - Add your react component to the react-router in
src/public/views/main.jsx
.
npm install bitcoin-unlimited-web --save
var BitcoinUnlimitedWeb = require('bitcoin-unlimited-web');
Once installed, the administrative dashboard can be used to create blog posts, override static alert banners, manage administrators and store backups of the current database snapshot.
A database revert feature is also available to choose between different database snapshot backups.
For security purposes update your version .env
file:
JWT_SECRET=[yourSecretPassphrase] (required)
DB_NAME=[mainDatabaseName].realm (optional)
DB_AUTH_NAME=[authDatabaseName].realm (optional, but should be changed)
DB_ADMIN_PUBKEY=The pubkey(s) with super admin privileges. The "super" admin can add other pubkeys via the dashboard interface. Separate pubkeys with commas and exclude spaces.
AUTH_EXPIRE=[seconds] (JavaScript Web Token expiration time)
DEBUG=[true or TRUE] (sets the login challenge to 'hello, world')