Skip to content

Getting started ​

Work in progress

ValkyrieID is under active development. This page describes what works today.

Requirements ​

  • .NET 10 SDK to build from source
  • SQLite (built in) or PostgreSQL

Run from source ​

sh
git clone https://github.com/ValkyrieID/valkyrieid.git
cd valkyrieid
dotnet run --project src/ValkyrieID.Server

In the Development environment, a development-only master key is preconfigured and the database is a SQLite file at data/valkyrieid.db.

Check that the server is up:

sh
curl http://localhost:5102/health/ready

Publish ​

sh
dotnet publish src/ValkyrieID.Server -c Release -o publish

Before running the published output, generate a master encryption key and set the public issuer URL:

sh
export MasterKey__Current="$(openssl rand -base64 32)"   # store this somewhere safe!
export Issuer__Url="https://id.example.com"
./publish/valkyrieid

ValkyrieID refuses to start without a valid master key and issuer URL.

By default the server uses SQLite at data/valkyrieid.db relative to the working directory and applies database migrations on startup. See the configuration reference to use PostgreSQL.

Next, open /setup to create the first administrator, or protect an API with ValkyrieID access tokens.

Released under the MIT License.