diff --git a/VigilCareClinicalAPI/Data/AppDbContextFactory.cs b/VigilCareClinicalAPI/Data/AppDbContextFactory.cs
new file mode 100644
index 0000000..25deaca
--- /dev/null
+++ b/VigilCareClinicalAPI/Data/AppDbContextFactory.cs
@@ -0,0 +1,23 @@
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Design;
+
+///
+/// Creates for EF tools and migration bundles without
+/// running Program.cs (JWT and other runtime config are not available there).
+/// ./migrate-api --connection still overrides the connection at apply time.
+///
+public sealed class AppDbContextFactory : IDesignTimeDbContextFactory
+{
+ public AppDbContext CreateDbContext(string[] args)
+ {
+ var connectionString =
+ Environment.GetEnvironmentVariable("ConnectionStrings__DefaultConnection")
+ ?? "Host=127.0.0.1;Database=vigilcare;Username=postgres;Password=postgres";
+
+ var options = new DbContextOptionsBuilder()
+ .UseNpgsql(connectionString)
+ .Options;
+
+ return new AppDbContext(options);
+ }
+}
diff --git a/VigilCareClinicalAPI/VigilCareClinicalAPI.csproj b/VigilCareClinicalAPI/VigilCareClinicalAPI.csproj
index fd16237..777f711 100644
--- a/VigilCareClinicalAPI/VigilCareClinicalAPI.csproj
+++ b/VigilCareClinicalAPI/VigilCareClinicalAPI.csproj
@@ -24,6 +24,10 @@
+
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+ all
+
runtime; build; native; contentfiles; analyzers; buildtransitive
all