Skip to content

Quickstart

This page is the shortest path from source to a running instance on a development machine. Each step links to the fuller treatment.

Terminal window
dotnet build Docsentry.slnx --configuration Release

TreatWarningsAsErrors is set for the whole solution, so any compiler warning fails the build. A clean build is the expected outcome, not an aspiration.

Connect to master with a privileged account, set the @DatabaseName value inside Database/deploy/000_provision_database.sql, and run it.

Then apply the Identity migration, which owns the AspNet* tables:

Terminal window
dotnet ef database update --project src/Docsentry.Infrastructure --startup-project src/Docsentry.Web

Then apply the numbered DMS scripts in Database/deploy/ in numeric order, starting with 001_schema_versions.sql. Full detail, including the checksum ledger and the two-principal model, is in Database deployment.

Finish by running Database/verification/900_schema_contract.sql to confirm the schema matches its contract.

At minimum, provide a connection string. In development, user secrets are the convenient route:

Terminal window
dotnet user-secrets set "ConnectionStrings:DefaultConnection" "Server=(localdb)\MSSQLLocalDB;Database=Docsentry;Integrated Security=True;Encrypt=True;TrustServerCertificate=True" --project src/Docsentry.Web

No account exists yet. Supply both bootstrap keys and the application creates the administrator on startup:

Terminal window
dotnet user-secrets set "Bootstrap:AdminEmail" "admin@example.com" --project src/Docsentry.Web
dotnet user-secrets set "Bootstrap:AdminPassword" "<a strong password>" --project src/Docsentry.Web

The password must be at least eight characters with upper case, lower case, and a digit.

Terminal window
dotnet run --project src/Docsentry.Web/Docsentry.Web.csproj

Open the application, sign in with the bootstrap credentials, and you land on the dashboard.

Terminal window
curl http://localhost:5109/api/v1/health

Then, in the browser: create a folder under Folders, upload a file into it, and confirm the document appears with a preview. That exercises storage, the upload allowlist, the scanner, and preview generation in one pass.

Terminal window
dotnet test Docsentry.slnx --configuration Release