keyoxide-web/README.md

3.3 KiB

Keyoxide

Drone (self-hosted) with branch License Docker Image Version (latest semver) Docker Pulls Mastodon Follow Liberapay receiving

Keyoxide is a modern, secure and decentralized platform to prove your online identity.

Self-hosting

Self-hosting Keyoxide is an important aspect of the project. Users need to trust the Keyoxide instance they're using to reliably verify identities. Making Keyoxide itself decentralized means no one needs to trust a central server. If a friend or family member is hosting a Keyoxide instance, it becomes much easier to trust the instance!

Docker

The Docker container allows you to easily self-host the Keyoxide project. To get started, simply run:

docker run -d -p 3000:3000 keyoxide/keyoxide:stable

Keyoxide will now be available by visiting http://localhost:3000.

More information available in the documentation.

Contributing

Anyone can contribute if they'd like! No need to be a programmer or technically-oriented for that matter.

Contributing to Keyoxide can happen in many forms:

  • Finding and reporting bugs
  • Suggesting new features
  • Improving documentation
  • Writing code to fix bugs and features
  • Promoting decentralized identity and web3.0

Please note that this project has a Code of Conduct that all contributors agree to abide when participating.

Local development

To run Keyoxide locally on your machine for development:

  1. Install Node using nvm: nvm install --lts
  2. Swap over to LTS: nvm use --lts
  3. Ensure that yarn is installed: npm install -g yarn
  4. Install node dependencies: yarn
  5. Run the server locally a la SCHEME='http' DOMAIN='localhost:3000' MATRIX_ACCESS_TOKEN='XXXXXXyourTokenXXXXXX' MATRIX_INSTANCE='abc.yourmatrixdomain.tld' yarn dev

Keyoxide will now be available at http://localhost:3000

For vscode/vscodium development, a launcher.json is provided. Ensure that the first four steps have been performed at least once so that the proper node and yarn binaries are available to vscode, then load the project. The launcher provides a "Launch via yarn" debug option that will start the project with the appropriate version and environment variables set. The project will then be available in a browser.

There is also a shell.nix file to install Node and yarn (steps one through three above).