This guide walks you through everything needed to run PharmaVault on your local development machine — from creating the PostgreSQL database and applying the schema to wiring up your connection string with .NET User Secrets and launching the Blazor application. By the end you will have a fully functional instance of PharmaVault accessible atDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/JReyna217/PharmaVault/llms.txt
Use this file to discover all available pages before exploring further.
http://localhost:5136.
Prerequisites
Before you begin, make sure the following are installed and available on your machine:- .NET 10 SDK or higher
- PostgreSQL — running locally or via Docker
- An IDE — Visual Studio, VS Code, or JetBrains Rider
Create the Database
Connect to your PostgreSQL instance and run the database creation script. This creates the
pharmavault_db database that all subsequent scripts and the application will target.sql/00-CreateDataBase.sql
- psql CLI
- psql Interactive
Initialize the Schema
With the database created, connect to The script creates the following tables:
pharmavault_db and execute the schema initialization script. This creates all five tables the application depends on.sql/01-InitSchema.sql
- psql CLI
- psql Interactive
| Table | Purpose |
|---|---|
users | Registered user accounts with hashed passwords |
medicine_catalog | Master catalog of drug names, forms, and dosages |
inventory | Per-user medication stock with quantities and expiration dates |
system_responses | Bilingual response codes for application messages |
error_logs | Structured error records with UUID-based incident tracking |
Configure User Secrets
The connection string is intentionally excluded from source control. PharmaVault reads it at runtime from .NET’s Secret Manager. Run these two commands from the repository root:The secret is stored in your OS user profile and never written to the project directory, so it cannot be accidentally committed to version control.
Build and Run
From the repository root, build the solution and then start the web application.You should see output similar to:
Hot Reload — For a faster development loop with automatic browser refresh on file saves, use
dotnet watch instead of dotnet run: