Skip to content

Quick Start

Get EUDIPLO running in under 2 minutes! This guide gets you from zero to issuing your first credential.

New to EUDIPLO?

This is the fastest path to see EUDIPLO working. For production setup and advanced configuration, see the Architecture and API sections.


What You'll Need

  • Docker installed
  • 2 minutes of your time ⏱️

Step 1: Choose Your Setup

Choose how you want to run EUDIPLO:

For users who want the web interface:

# Start the backend
docker run -d \
  --name eudiplo \      
  -p 3000:3000 \
  ghcr.io/openwallet-foundation-labs/eudiplo:latest

# Start the web client
docker run -d \
  --name eudiplo-client \      
  -p 4200:80 \      
  ghcr.io/openwallet-foundation-labs/eudiplo-client:latest

For users who only need the API:

# Run EUDIPLO backend only
docker run -d \
  --name eudiplo \
  -p 3000:3000 \
  ghcr.io/openwallet-foundation-labs/eudiplo:latest

Step 2: Verify It's Working

After starting the container, check that EUDIPLO is healthy by querying its health endpoint:

curl http://localhost:3000/health

Expected response from EUDIPLO:

{
    "status": "ok",
    "info": {
        "database": { "status": "up" }
    },
    "errors": {}
}

Step 3: Choose Your Interface

EUDIPLO provides two ways to interact with the system:

Open the Web Interface:

  • If you used Full Setup: http://localhost:4200
  • If you used API-Only Setup: Not available (web client not started)

The web client provides a user-friendly interface for:

  • 📋 Managing credential templates
  • 🎫 Issuing credentials to wallets
  • ✅ Verifying credential presentations
  • 📊 Viewing system status

Perfect for first-time users

The web client is the easiest way to understand EUDIPLO's capabilities without needing API knowledge.

Web Client Requires Full Setup

To use the web client, make sure you chose the "Full Setup" option in Step 1.

Open the API Documentation: http://localhost:3000/api

The Swagger UI provides direct API access for:

  • 🔌 Integration testing
  • 📖 API documentation exploration
  • ⚡ Advanced automation workflows
  • 🧪 Direct endpoint testing

Step 4: Get Started

Choose your preferred approach:

  1. Open: http://localhost:4200 (if you used Full Setup)
  2. Log in with the default credentials:
    • EUDIPLO Instance: http://localhost:3000
    • Authentication Server: http://localhost:3000
    • Client ID: root
    • Client Secret: root
  3. Explore the dashboard to see:
    • Available credential templates
    • Quick action buttons for common tasks

Learn More

For detailed web client features and workflows, see the Web Client Guide.

Authenticate via Swagger UI

  1. Open the API Documentation: http://localhost:3000/api
  2. Click the "Authorize" button (🔓 lock icon) in the top-right
  3. Enter your credentials:
    • Client ID: root
    • Client Secret: root
  4. Click "Authorize" and then "Close"

You're now authenticated! The 🔓 icon should change to 🔒 (locked).

Test Your First API Call

  1. Find the "Issuer Management" section in Swagger UI
  2. Expand /issuer-management/credentialsGET
  3. Click "Try it out""Execute"

You should see a successful response with available credential templates!


Success

EUDIPLO is now running and ready for credential issuance and verification.

What's Next?

  • 🎫 Issue Your First Credential - Use the web interface to create and send credentials to wallets
  • 🔍 Verify Credentials - Set up verification flows through the web UI
  • 📋 Manage Templates - Create custom credential templates for your use case
  • 📊 Monitor Activity - Track credential issuance and verification through the dashboard

Common Next Steps

Clean Up

When you're done experimenting:

For Full Setup users:

docker stop eudiplo eudiplo-client
docker rm eudiplo eudiplo-client

For API-Only Setup users:

docker stop eudiplo && docker rm eudiplo