From ee559e57f132d2d113293f8e8d332c83561e8d59 Mon Sep 17 00:00:00 2001 From: GitHub Copilot Date: Thu, 24 Apr 2025 17:15:30 -0400 Subject: [PATCH] fix: Update fetch calls to use relative paths for API requests --- .gitignore | 1 + README.md | 52 +++++++------------------------------------ src/pages/index.astro | 4 ++-- 3 files changed, 11 insertions(+), 46 deletions(-) diff --git a/.gitignore b/.gitignore index 8abffbc..7d00275 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,7 @@ dist/ .output/ .astro/ +.wrangler/ # dependencies node_modules/ diff --git a/README.md b/README.md index e34a99b..13047eb 100644 --- a/README.md +++ b/README.md @@ -1,47 +1,11 @@ -# Astro Starter Kit: Minimal +# My Bank App - Financial Transaction Manager -```sh -npm create astro@latest -- --template minimal -``` +A web application for managing financial transactions across multiple bank accounts. -[![Open in StackBlitz](https://developer.stackblitz.com/img/open_in_stackblitz.svg)](https://stackblitz.com/github/withastro/astro/tree/latest/examples/minimal) -[![Open with CodeSandbox](https://assets.codesandbox.io/github/button-edit-lime.svg)](https://codesandbox.io/p/sandbox/github/withastro/astro/tree/latest/examples/minimal) -[![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/withastro/astro?devcontainer_path=.devcontainer/minimal/devcontainer.json) +## Project Overview -> 🧑‍🚀 **Seasoned astronaut?** Delete this file. Have fun! - -## 🚀 Project Structure - -Inside of your Astro project, you'll see the following folders and files: - -```text -/ -├── public/ -├── src/ -│ └── pages/ -│ └── index.astro -└── package.json -``` - -Astro looks for `.astro` or `.md` files in the `src/pages/` directory. Each page is exposed as a route based on its file name. - -There's nothing special about `src/components/`, but that's where we like to put any Astro/React/Vue/Svelte/Preact components. - -Any static assets, like images, can be placed in the `public/` directory. - -## 🧞 Commands - -All commands are run from the root of the project, from a terminal: - -| Command | Action | -| :------------------------ | :----------------------------------------------- | -| `npm install` | Installs dependencies | -| `npm run dev` | Starts local dev server at `localhost:4321` | -| `npm run build` | Build your production site to `./dist/` | -| `npm run preview` | Preview your build locally, before deploying | -| `npm run astro ...` | Run CLI commands like `astro add`, `astro check` | -| `npm run astro -- --help` | Get help using the Astro CLI | - -## 👀 Want to learn more? - -Feel free to check [our documentation](https://docs.astro.build) or jump into our [Discord server](https://astro.build/chat). +* **Purpose:** Provides a user interface for CRUD operations on financial transactions. +* **Technology:** Built with Astro, TypeScript, and plain CSS, utilizing Astro API routes. +* **Layout:** Features a two-column dashboard design with a sidebar for account selection/actions and a main area for transaction display. +* **Data Management:** Currently uses an in-memory data store (`src/data/store.ts`) accessed via API endpoints (`src/pages/api/`). +* **Key Features (Implemented & Planned):** Account switching, transaction listing, adding, editing, and deleting transactions. diff --git a/src/pages/index.astro b/src/pages/index.astro index 321e988..f41d9b3 100644 --- a/src/pages/index.astro +++ b/src/pages/index.astro @@ -10,7 +10,7 @@ export interface Props { } // Fetch accounts from API -const accountsResponse = await fetch('http://localhost:4321/api/accounts'); +const accountsResponse = await fetch('/api/accounts'); // Use relative path const accounts: Account[] = await accountsResponse.json(); // Initialize with first account or empty account if none exist @@ -24,7 +24,7 @@ const initialAccount: Account = accounts[0] || { // Fetch initial transactions if we have an account let initialTransactions: Transaction[] = []; if (initialAccount.id) { - const transactionsResponse = await fetch(`http://localhost:4321/api/accounts/${initialAccount.id}/transactions`); + const transactionsResponse = await fetch(`/api/accounts/${initialAccount.id}/transactions`); // Use relative path initialTransactions = await transactionsResponse.json(); } ---