Skip to content

swkidd/unlock

 
 

Repository files navigation

Unlock


This repository includes all the code deployed by Unlock, including smart contracts and the web app running at https://unlock-protocol.com.

Unlock is an access control protocol built on a blockchain. It enables creators to monetize their content or software without relying on a middleman. It lets consumers manage all of their subscriptions in a consistent way, as well as earn discounts when they share the best content and applications they use.

Read more about why we're building Unlock.

License: MIT Build Status Greenkeeper badge

Demo

We recorded a screencast to show how Unlock works for a paywall. (Note: this video is a few months old and outdated but still shows the "user flow" pretty accurately.)

Demo Unlock

We are building this in the open, which mean you can run the code locally (see instructions below). You could also try out the staging version - which runs the latest, in-progress code - at https:://staging.unlock-protocol.com.

Contributing

Thanks for your interest in contributing to Unlock! We're excited you're here. There are a variety of ways to contribute to the project. Please read more about contributing in our contributor guide. Please also check our code of conduct for all participants in our community.

Getting started

  1. Ensure your dev environment is correct

unlock requires node version 8.11.4, and the latest npm in order to build. You can ensure that npm is the latest version with:

$ npm i -g npm

To manage node versions, there are several options. If you are using nvm, note that the default version of npm installed with node version 8.11.4 is outdated, and will result in several node-gyp errors. Upgrading npm will fix these errors.

  1. Check out the code from this repository
git clone https://github.com/unlock-protocol/unlock
cd unlock
  1. Install all deps

This will install all dependencies required for all the Unlock components (smart contracts and react app).

$ npm install
  1. Run the app (this should also compile and deploy the smart contract to a local truffle node)
cd unlock-app && npm run dev

Running tests/ci

We deploy with docker/docker-compose:

docker-compose -f docker/docker-compose.ci.yml build
docker-compose -f docker/docker-compose.ci.yml up --abort-on-container-exit

About

Unlock is the web's new business model

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 99.9%
  • Other 0.1%