All Projects → marmelab → Zerodollarhomepage

marmelab / Zerodollarhomepage

Licence: mit
A decentralized ad server running on the blockchain

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Zerodollarhomepage

Smart Contracts Example
Simple example of token market. Based on blockchain technology using Ethereum platform.
Stars: ✭ 37 (-13.95%)
Mutual labels:  blockchain, ethereum
Eth Hodler
A simple DApp & ERC20 token written in Solidity running on the Ethereum blockchain www.hdao.org
Stars: ✭ 31 (-27.91%)
Mutual labels:  blockchain, ethereum
Go Ethereum
Official Go implementation of the Ethereum protocol
Stars: ✭ 34,169 (+79362.79%)
Mutual labels:  blockchain, ethereum
Weiwallet Android
Wei Wallet is an open source Ethereum wallet for Android
Stars: ✭ 20 (-53.49%)
Mutual labels:  blockchain, ethereum
Etherkit
Stars: ✭ 36 (-16.28%)
Mutual labels:  blockchain, ethereum
Ethereumdb
Stars: ✭ 21 (-51.16%)
Mutual labels:  blockchain, ethereum
Blockchain
区块链、交易所、币种、自媒体、高频交易策略
Stars: ✭ 37 (-13.95%)
Mutual labels:  blockchain, ethereum
Token Core Ios
a blockchain private key management library on iOS
Stars: ✭ 850 (+1876.74%)
Mutual labels:  blockchain, ethereum
Toy Block Explorer
A blockchain explorer written in Go to learn about building server-side applications that work with the Ethereum blockchain.
Stars: ✭ 36 (-16.28%)
Mutual labels:  blockchain, ethereum
Loyalty Points Evm Fabric
Sample use of Ethereum smart contract in Hyperledger Fabric
Stars: ✭ 35 (-18.6%)
Mutual labels:  blockchain, ethereum
Ethereum book
精通以太坊 (中文版)
Stars: ✭ 875 (+1934.88%)
Mutual labels:  blockchain, ethereum
Ette
EVM-based Blockchain Indexer, with historical data query & real-time notification support 😎
Stars: ✭ 37 (-13.95%)
Mutual labels:  blockchain, ethereum
Stromdao Businessobject
Abstract BusinessObject for StromDAO Energy Blockchain. Abstraction layer between blockchain technology and business logic providing energy market related entities and use cases.
Stars: ✭ 10 (-76.74%)
Mutual labels:  blockchain, ethereum
Blockscout
Blockchain explorer for Ethereum based network and a tool for inspecting and analyzing EVM based blockchains.
Stars: ✭ 913 (+2023.26%)
Mutual labels:  blockchain, ethereum
Burrow
https://wiki.hyperledger.org/display/burrow
Stars: ✭ 851 (+1879.07%)
Mutual labels:  blockchain, ethereum
Privatekeyvault
Make Instructions: Airgapped raspberry pi computer for working with blockchains featuring LUKS full disk encryption and using qr-codes to pass encrypted files and offline transaction instructions across the airgap.
Stars: ✭ 29 (-32.56%)
Mutual labels:  blockchain, ethereum
Multy Back
Back-end of the Multy - mobile multy-blockchain wallet.
Stars: ✭ 26 (-39.53%)
Mutual labels:  blockchain, ethereum
Awesome Blockchain
⚡️Curated list of resources for the development and applications of blockchain.
Stars: ✭ 937 (+2079.07%)
Mutual labels:  blockchain, ethereum
Blockchain Anchor
A Node.js library for anchoring data onto the Bitcoin blockchain and confirming anchored data on Bitcoin and Ethereum.
Stars: ✭ 32 (-25.58%)
Mutual labels:  blockchain, ethereum
Disperse
React/Redux dApp (decentralized app) boilerplate using Ethereum's blockchain
Stars: ✭ 36 (-16.28%)
Mutual labels:  blockchain, ethereum
publication Archived Repository
The code of this repository was written to illustrate the blog post The Blockchain Explained to Web Developers, Part 2: In Practice
This code is not intended to be used in production, and is not maintained.

ZeroDollarHomePage

Install

Requirements:

# install npm dependencies and Selenium (for tests)
make install

Configuration

Github oAuth

You'll need to create a Github application at https://github.com/settings/developers then copy/paste the Client Id and Client Secret into your configuration file (development.js or production.js):

oauth: {
    githubClientId: 'Your Client ID',
    githubClientSecret: 'Your Client Secret',
},

Github API

For the application to have access to the Github API, you'll need to provide a way to authenticate with Github in the configuration file (development.js or production.js).

This can be:

  • A login/password to an account which can access the repositories on which you configured the hooks
  • An access token (Follow the instructions to create one) created from an account with access to the repositories on which you configured the hooks

Github hooks

You'll need to setup the Github hooks for the repositories you want to be watched by the application.

  • Go to your repository settings, Webhooks & services
  • Add a new webhook by entering [API_URL]:3420/github/callback in the Payload URL field (Port 3420 is important!)
  • Leave the secret field empty (verification is not implemented yet. PR are welcome !)
  • Select the Just the push event. option

That's it. Repeat for every repositories you want to bind.

### Ethereum

Create a file named .ethereum and put your default ethereum account address in it.

Starts a private ethereum network for development by running:

make start-ethereum

A miner must be running on this network to allow contracts deployment and blockchain operations through those contracts. Starts the miner by running:

make run-ethereum-miner

Deploying the contract is done by running:

make deploy-contracts-ethereum

Develop

# start servers (node and webpack via pm2)
make run-dev
# both servers will run in the background
# the Node server uses nodemon and will restart on code change
# the frontend is served by webpack dev server with hot reload

# you can restart either the api or the frontend by hand
make restart-api
make restart-frontend

Browse the app:

# stop servers (node and webpack)
make stop-dev

Note: for stability purposes, it's a good practice to not upgrade your project dependencies using major updates. It's why you should locally run npm set prefix='~' and not add dependencies prefixed with a carret ^ without good reason.

Test

# tests run in the "test" environment and don't empty the "development" database
make test

# alternately, you can run any of the individual test suites:
make test-api-unit
make test-api-functional
make test-frontend-unit
make test-frontend-functional
make test-isomorphic-unit
make test-ethereum

API (and common lib) unit tests using:

API functional tests using:

Frontend unit tests using:

Frontend fonctional tests using:

Deployment

See deployment instructions.

Managing servers with PM2

dev and tests servers are managed with PM2. So, It's possible to :

# display the 'front dev' server's logs
make log-frontend-dev
# display the 'api dev' server's logs
make log-api-dev

# display the list of all servers
make servers-list
# display the monitoring for all servers
make servers-monitoring
# stop all servers
make servers-stop-all
# stop all servers, delete them, and clear their logs.
make servers-clear-all
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].