From c9c1fa18a2712f7aee55fd64fb9d5d829d4a73ce Mon Sep 17 00:00:00 2001 From: Ryan Kegel Date: Mon, 27 Jul 2026 15:04:23 -0400 Subject: [PATCH] feat: load environment variables from .env file and update .gitignore --- .gitignore | 1 + .vscode/launch.json | 11 +---------- backend/main.py | 6 +++++- backend/requirements.txt | Bin 1096 -> 877 bytes 4 files changed, 7 insertions(+), 11 deletions(-) diff --git a/.gitignore b/.gitignore index fb22a3f..f44f3a9 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,4 @@ backend/test-results/ frontend/cert.pem frontend/key.pem tmp/ +backend/.env* diff --git a/.vscode/launch.json b/.vscode/launch.json index 73c5e11..27c513a 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -7,16 +7,7 @@ "request": "launch", "module": "flask", "python": "${command:python.interpreterPath}", - "env": { - "FLASK_APP": "backend/main.py", - "FLASK_DEBUG": "1", - "SECRET_KEY": "dev-secret-key-change-in-production", - "REFRESH_TOKEN_EXPIRY_DAYS": "90", - "DIGEST_TOKEN_SECRET": "dev-digest-token", - "VAPID_PUBLIC_KEY": "BNKkHdq45uLigohSG7c1TwlAo7ETncoRVLQK02LxHgu2P1DgSJD9njRMfbbzUsaTQGllvLBz7An1WiWsNYQhvKE", - "VAPID_PRIVATE_KEY": "jNiZJT0UO4H861KmnCt874Fg6p5jDAyYKS4V2MZf8bQ", - "FRONTEND_URL": "https://macbook:5173" - }, + "envFile": "${workspaceFolder}/backend/.env", "args": [ "run", "--host=0.0.0.0", diff --git a/backend/main.py b/backend/main.py index 52d4f1e..a8e887e 100644 --- a/backend/main.py +++ b/backend/main.py @@ -2,7 +2,9 @@ import logging import sys import os +from dotenv import load_dotenv from flask import Flask, request, jsonify +from pymongo import MongoClient from api.admin_api import admin_api from api.auth_api import auth_api @@ -34,6 +36,9 @@ from utils.chore_expiry_notification_scheduler import start_chore_expiry_notific from utils.digest_scheduler import start_digest_scheduler from utils.state_expiry_scheduler import start_state_expiry_scheduler + +# Load environment variables +load_dotenv() # Configure logging once at application startup logging.basicConfig( level=logging.INFO, @@ -143,7 +148,6 @@ def start_background_threads(): broadcaster.daemon = True broadcaster.start() -# TODO: implement users initializeImages() createDefaultTasks() createDefaultRewards() diff --git a/backend/requirements.txt b/backend/requirements.txt index 9029b89f66de3db86e0bca74e66a9060d5a4f766..1cf34ad0ef5cc761278bb6f8f6cb978c4ca89447 100644 GIT binary patch literal 877 zcmXw2!EW0y487}LEJSwVqz4^#*`Yvz03FcdpvbhNMV2&KPOE(V9-Z#yCz6lkd$e)! zYEr6H>0-QJv~FcDl`wcOC28GB)yV_n#ZAF@t(Dx%o%nHnw^tfgPkBpHvK3~j!8XOs z6xX8lLGGBTl+3hXMcKu>aN`msUjQxT;zoz?4hgMn55kTcMlHfulNTyYh7<+5q!+wiFx(K4bEbMULMgP8GAF63(N|aL~`E8PqYUcL%&WFlv6kbpd6Dm zF#9Pls%vvM$qk(FBKN>Hu}^Rn4tC;Pry2Wizc>iJxO|4@5ynV$Wd2%+ zwZlCi_vukH#6scz6oel?>5|sv`d@`ie^(T3EjqTXxKM`+bDls_;_UgTwo5HFVbkCA z1;zz-qX?aO?eZ8*fzmj>17s=>A1z-v04Ue&y}NWw(_VYD8us;s5+(it1$qbC literal 1096 zcmYk5K~KU^5QO(^;!lB4M56}}UObSPkZ9t$R4G*~O(`1q@#;6beU!XBO1iVNJG0xr z-v?XRvlX_scYCwFZFshJ&$+U(Wt_21?b0qRx5~EQI!<$j5boL$OR_7g?eoN;>^ttn z)o8HWzG>DmFWBC)>KqCQ}l<<%xkEJcaO`>z^Kxosl@5p z6-!s$vqU`UmXq>i%TunEJ?fmNf_=x_axm(u1-<7@bR}JhZ4N_iA0Ve5P0GVTscrFO zkBiUzU%@4g)KPfX5YdcsYKbj%B=zA;!~2a->&Nr6zJnpYp+?Dx>1aPsTNZmN%-mk>#XFD#F}s+JYK)j(PMr$pR3UBY%%>;B4;7Xm z*pU|LE5y={X0;9>ABivZG9-{?C3M?=rSCb5RuE_ zg5vrj3gWS$5tCBYex