From 8d4f9d1fc65e977a66f5c3d8e015b00b84439d5d Mon Sep 17 00:00:00 2001 From: Piotr Oleszczyk Date: Thu, 26 Feb 2026 20:51:13 +0100 Subject: [PATCH] fix: load .env via python-dotenv; SQLite default for local dev --- .gitignore | 8 ++++++++ backend/.env.example | 5 +++++ backend/main.py | 4 ++++ backend/pyproject.toml | 1 + backend/uv.lock | 2 ++ 5 files changed, 20 insertions(+) create mode 100644 backend/.env.example diff --git a/.gitignore b/.gitignore index 9e800ff..b99b682 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,11 @@ wheels/ # macOS .DS_Store + +# Env files (contain local secrets/URLs) +.env +*.env +!.env.example + +# SQLite dev database +*.db diff --git a/backend/.env.example b/backend/.env.example new file mode 100644 index 0000000..7dd2239 --- /dev/null +++ b/backend/.env.example @@ -0,0 +1,5 @@ +# Local dev — SQLite (no server required) +DATABASE_URL=sqlite:///./innercontext.db + +# Production — PostgreSQL (set this in your deployment environment) +# DATABASE_URL=postgresql+psycopg://user:password@host:5432/innercontext diff --git a/backend/main.py b/backend/main.py index 64fd5ce..1a21b95 100644 --- a/backend/main.py +++ b/backend/main.py @@ -1,5 +1,9 @@ from contextlib import asynccontextmanager +from dotenv import load_dotenv + +load_dotenv() # load .env before db.py reads DATABASE_URL + from fastapi import FastAPI from fastapi.middleware.cors import CORSMiddleware diff --git a/backend/pyproject.toml b/backend/pyproject.toml index 2d065dd..9f6edfd 100644 --- a/backend/pyproject.toml +++ b/backend/pyproject.toml @@ -7,6 +7,7 @@ requires-python = ">=3.12" dependencies = [ "fastapi>=0.132.0", "psycopg>=3.3.3", + "python-dotenv>=1.2.1", "sqlmodel>=0.0.37", "uvicorn[standard]>=0.34.0", ] diff --git a/backend/uv.lock b/backend/uv.lock index 4a59533..425db78 100644 --- a/backend/uv.lock +++ b/backend/uv.lock @@ -241,6 +241,7 @@ source = { virtual = "." } dependencies = [ { name = "fastapi" }, { name = "psycopg" }, + { name = "python-dotenv" }, { name = "sqlmodel" }, { name = "uvicorn", extra = ["standard"] }, ] @@ -259,6 +260,7 @@ dev = [ requires-dist = [ { name = "fastapi", specifier = ">=0.132.0" }, { name = "psycopg", specifier = ">=3.3.3" }, + { name = "python-dotenv", specifier = ">=1.2.1" }, { name = "sqlmodel", specifier = ">=0.0.37" }, { name = "uvicorn", extras = ["standard"], specifier = ">=0.34.0" }, ]