diff --git a/.gitignore b/.gitignore index e43b0f9..c9b3aca 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,6 @@ .DS_Store +.venv/ +__pycache__/ +*.pyc +.env +node_modules/ \ No newline at end of file diff --git a/backend/package-lock.json b/backend/package-lock.json new file mode 100644 index 0000000..857dbd7 --- /dev/null +++ b/backend/package-lock.json @@ -0,0 +1,24 @@ +{ + "name": "backend", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "dependencies": { + "dotenv": "^17.2.3" + } + }, + "node_modules/dotenv": { + "version": "17.2.3", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-17.2.3.tgz", + "integrity": "sha512-JVUnt+DUIzu87TABbhPmNfVdBDt18BLOWjMUFJMSi/Qqg7NTYtabbvSNJGOJ7afbRuv9D/lngizHtP7QyLQ+9w==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + } + } +} diff --git a/backend/package.json b/backend/package.json new file mode 100644 index 0000000..800c2fd --- /dev/null +++ b/backend/package.json @@ -0,0 +1,5 @@ +{ + "dependencies": { + "dotenv": "^17.2.3" + } +} diff --git a/db/create-schema.sh b/db/create-schema.sh index 3a2db62..49d29c7 100755 --- a/db/create-schema.sh +++ b/db/create-schema.sh @@ -1,14 +1,38 @@ #!/bin/bash - set -euo pipefail +# Get the directory of this script SCRIPT_DIR="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" &> /dev/null && pwd)" -source "$SCRIPT_DIR/../backend/.env" +# Load environment variables from backend/.env +if [ -f "$SCRIPT_DIR/../backend/.env" ]; then + source "$SCRIPT_DIR/../backend/.env" +else + echo "❌ .env file not found in backend/" + exit 1 +fi + +# Function to run psql (local or Docker) +run_psql() { + if [[ "${POSTGRES_HOST:-127.0.0.1}" == "localhost" ]] || [[ "${POSTGRES_HOST:-127.0.0.1}" == "127.0.0.1" ]]; then + # Use local psql + echo "Using local psql..." + PGPASSWORD="$POSTGRES_PASSWORD" psql \ + --dbname "${POSTGRES_DB:-postgres}" \ + --file "${SCRIPT_DIR}/schema.sql" \ + --host "${POSTGRES_HOST:-127.0.0.1}" \ + --port "${POSTGRES_PORT:-5432}" \ + --username "${POSTGRES_USER:-postgres}" + else + # Assume POSTGRES_HOST is a Docker container name + echo "Using Docker container '${POSTGRES_HOST}'..." + docker exec -i "$POSTGRES_HOST" psql \ + -U "${POSTGRES_USER:-postgres}" \ + -d "${POSTGRES_DB:-postgres}" < "${SCRIPT_DIR}/schema.sql" + fi +} + +# Run it +run_psql -PGPASSWORD="$POSTGRES_PASSWORD" psql \ - --dbname "${POSTGRES_DB:-postgres}" \ - --file "${SCRIPT_DIR}/schema.sql" \ - --host "${POSTGRES_HOST:-127.0.0.1}" \ - --port "${POSTGRES_PORT:-5432}" \ - --username "${POSTGRES_USER:-postgres}" +echo "✅ Schema applied successfully!" \ No newline at end of file diff --git a/front-end/lib/api.mjs b/front-end/lib/api.mjs index f4b5339..99540c0 100644 --- a/front-end/lib/api.mjs +++ b/front-end/lib/api.mjs @@ -138,6 +138,7 @@ async function signup(username, password) { function logout() { state.destroyState(); + window.location.href = "index.html"; // Added a redirect to home page after logout return {success: true}; }