A modern, secure and privacy-friendly platform to establish your decentralized online identity
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
avalos dfe5fafecf Merge branch 'dev' into dev 1 year ago
content Update Mastodon guide 1 year ago
routes Fix missing env variable 1 year ago
server Remove newlines before checking equality 1 year ago
static Merge branch 'dev' into dev 1 year ago
views Migrate to different QR library 1 year ago
.drone.yml Fix drone 1 year ago
.gitignore Additional changes to accommodate the Node.js migration 1 year ago
.licenseignore Add Dockerfile to licenseignore 1 year ago
CHANGELOG.md Release 2.2.8 1 year ago
CODE_OF_CONDUCT.md Fix contact method 1 year ago
Dockerfile Add Dockerfile 1 year ago
LICENSE Update LICENSE 1 year ago
README.md Change NPM script calls 1 year ago
favicon.svg Update favicon 1 year ago
index.js Add Onion URL to footer if it is defined 1 year ago
license-checker-config.json Update PHP comment style 1 year ago
package-lock.json Release 2.2.8 1 year ago
package.json Release 2.2.8 1 year ago
template.env Fix template DOMAIN name 1 year ago



Build Status License Docker Image Version (latest semver) Docker Pulls Mastodon Follow

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


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!


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.

To add support for Twitter account verification, make a developer account, obtain a Bearer token and run:

docker run -d -p 3000:3000 -e "TWITTER_API_AUTH=XXXXXXXXXXXXXXXXXX" keyoxide/keyoxide:stable


To run Keyoxide using docker-compose, add the following snippet to your docker-compose.yml:

  image: keyoxide/keyoxide:stable
    - 3000:3000


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 NodeJS
    • directly from their website, or
    • using nvm: nvm install --lts; nvm use --lts
  • run the server with npm run dev

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