QuickDID is a high-performance AT Protocol identity resolution service written in Rust. It provides handle-to-DID resolution with Redis-back
README.md

QuickDID Static Files Directory #

This directory contains static files that are served by QuickDID. By default, QuickDID serves files from the www directory, but this can be configured using the STATIC_FILES_DIR environment variable.

Directory Structure #

www/
├── .well-known/
│   ├── atproto-did     # AT Protocol DID identifier
│   └── did.json        # DID document
├── index.html          # Landing page
└── README.md          # This file

Files #

.well-known/atproto-did #

Contains the service's DID identifier (e.g., did:web:example.com). This file is used by AT Protocol clients to discover the service's DID.

.well-known/did.json #

Contains the DID document with verification methods and service endpoints. This is a JSON-LD document following the W3C DID specification.

index.html #

The landing page shown when users visit the root URL. This provides information about the service and available endpoints.

Customization #

Using the Generation Script #

You can generate the .well-known files for your deployment using the provided script:

HTTP_EXTERNAL=your-domain.com ./generate-wellknown.sh

This will create the appropriate files based on your domain.

Manual Customization #

  1. Update .well-known/atproto-did: Replace with your service's DID
  2. Update .well-known/did.json: Add your public key to the verificationMethod array if needed
  3. Customize index.html: Modify the landing page to match your branding

Docker Deployment #

When using Docker, you can mount custom static files:

volumes:
  - ./custom-www:/app/www:ro

Or just override specific files:

volumes:
  - ./custom-index.html:/app/www/index.html:ro
  - ./custom-wellknown:/app/www/.well-known:ro

Environment Variable #

You can change the static files directory using:

STATIC_FILES_DIR=/path/to/custom/www

Security Notes #

  • Static files are served with automatic MIME type detection
  • The .well-known files are crucial for AT Protocol compatibility
  • Ensure proper permissions on mounted volumes in production