.gitea | ||
.vscode | ||
content | ||
src | ||
static-src | ||
test | ||
views | ||
.envrc | ||
.gitignore | ||
.licenseignore | ||
.woodpecker.yml | ||
CHANGELOG.md | ||
CODE_OF_CONDUCT.md | ||
docker-compose.yaml | ||
Dockerfile | ||
LICENSE | ||
license-checker-config.json | ||
LICENSE.HEADER | ||
nodemon.json | ||
package.json | ||
README.md | ||
shell.nix | ||
template.env | ||
webpack.config.js | ||
yarn.lock |
Keyoxide
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:
- Install Node using nvm:
nvm install --lts
- Swap over to LTS:
nvm use --lts
- Ensure that yarn is installed:
npm install -g yarn
- Install node dependencies:
yarn
- 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).