aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--README.md16
-rw-r--r--backend/go.mod3
2 files changed, 11 insertions, 8 deletions
diff --git a/README.md b/README.md
index 04515c4..99f15b0 100644
--- a/README.md
+++ b/README.md
@@ -16,21 +16,21 @@ An application designed to help manage personal finances, including income (like
## Tech Stack
* **Backend:** Go (Golang)
- * API Framework: Gin Gonic / Echo (to be decided)
- * Database ORM: GORM / sqlx (to be decided)
+ * API Framework: Gin Gonic (`github.com/gin-gonic/gin`)
+ * Database ORM: GORM (`gorm.io/gorm`) with PostgreSQL Driver (`gorm.io/driver/postgres`)
* Notifications: Go routine scheduler + Email/Push Notification service
* **Frontend:** React / Next.js with TypeScript
* UI Components: shadcn/ui (using Tailwind CSS)
* State Management: Zustand / Redux Toolkit (to be decided)
* Data Fetching: React Query / SWR
-* **Database:** PostgreSQL / SQLite (to be decided based on scale)
-* **Deployment:** Docker, Cloud Provider (e.g., AWS, GCP, DigitalOcean - to be decided)
+* **Database:** PostgreSQL
+* **Deployment:** Self-hosted (OpenBSD), potentially using Docker
## High-Level Architecture
1. **Frontend (React/Next.js + shadcn/ui):** Interacts with the user, displays financial information and goals, and communicates with the backend API.
2. **Backend API (Go):** Handles business logic, data persistence, user authentication, and communication with the database and notification services.
-3. **Database (PostgreSQL/SQLite):** Stores user data, transactions, loans, goals, etc.
+3. **Database (PostgreSQL):** Stores user data, transactions, loans, goals, etc.
4. **Notification Service (Go Routine/External):** Periodically checks for required notifications (daily summaries, goal updates) and sends them out.
## Project Structure
@@ -80,9 +80,9 @@ An application designed to help manage personal finances, including income (like
**Phase 1: Backend Core Setup (Go)**
-* [ ] Initialize Go project (`go mod init`)
-* [ ] Choose and set up API framework (e.g., Gin, Echo)
-* [ ] Choose and set up ORM/DB library (e.g., GORM, sqlx)
+* [x] Initialize Go project (`go mod init finance/backend`)
+* [ ] Set up API framework (Gin Gonic)
+* [ ] Set up ORM/DB library (GORM)
* [ ] Design database schema (Users, Accounts, Transactions, Loans, Goals)
* [ ] Set up database connection and migrations
* [ ] Implement User Authentication (Signup, Login, JWT/Session Management)
diff --git a/backend/go.mod b/backend/go.mod
new file mode 100644
index 0000000..66c3e08
--- /dev/null
+++ b/backend/go.mod
@@ -0,0 +1,3 @@
+module finance/baq
+
+go 1.24.2