This monorepo contains a few key packages that the User Experience team at Blockstack maintains:
app
: An application for authenticating into Blockstack apps. Available as a web app and a browser extension.@stacks/connect
: A developer tool for building excellent user experiences in Blockstack apps@stacks/ui
: Blockstack's internal design system and React component library@stacks/keychain
: A library for Blockstack identity managementtest-app
: A simple React app for testing out Connect and the App.ui-docs
: A documentation site for@blockstack/ui
.
The first time you setup a development environment for this repository, follow these steps:
git clone https://github.com/blockstack/ux
cd ux
yarn
yarn bootstrap
- Clone this package.
- Run
yarn
to install dependencies - Run
yarn bootstrap
to link dependencies within this repository
In the command line, run yarn dev
which will run two apps:
packages/test-app
which runs at localhost:3000 and implements an example of connectpackages/app
which is the auth app, running at localhost:8080
For development instructions of specific packages, see the README
in each package folder.
- From the root of this repository, in the command line, run
sh build-ext.sh
- The extension will be packaged as
connect-extension.zip
inside this folder.
-
Build the docker image locally:
docker build . -t ux
-
Copy the built extensions to your local machine:
docker run -d --name ux ux && docker cp ux:connect-extension.zip . && docker rm -f ux
First, unzip the connect-extension.zip
file that was generated in the previous step.
If installing for Chrome or Brave:
- Go to: chrome://extensions
- Toggle: "developer mode" on.
- Click on: "Load unpacked"
- Select the new folder that was unzipped from
connect-extension.zip
.
If installing for Firefox:
- Go to: about:debugging
- Click on "This Firefox"
- Click on: "Load Temporary Add-on…"
- Inside the new folder that was unzipped from
connect-extension.zip
, select themanifest.json
file.