Skip to content

Conversation

@aceofbase199
Copy link
Owner

Motivation

  • Provide a minimal, opinionated expense tracker prototype that is voice-first and easy to extend.
  • Offer a compact architecture: a tiny ASP.NET Core minimal API serving a static, interactive front-end.
  • Include a simple transcription-to-suggestion flow so users can record audio and confirm generated transactions.
  • Keep UI and styles concise and minimalistic to serve as a starting point for further features.

Description

  • Add a minimal API (Program.cs) with sample in-memory transactions, GET /api/transactions, POST /api/transactions, and a stub POST /api/transcribe that returns a suggested TransactionSuggestion based on the transcript.
  • Add web client under wwwroot including index.html (layout and controls), styles.css (minimal UI styling), and app.js (stats, filters, add flow, voice capture, transcription request and retry/confirm behavior).
  • Add project files ExpenseTracker.csproj and appsettings.json, update .gitignore, update README.md describing features and dotnet run usage, and remove the old db.json placeholder.

Testing

  • UI preview was served with a lightweight static server and a Playwright script captured a full-page screenshot of the app, which completed successfully.
  • Attempt to run dotnet was not possible in this environment because the .NET SDK is not available, so dotnet run was not executed.
  • No automated unit tests were added in this prototype.
  • Manual browser-based interactions (voice capture flow) are exercised via the front-end code but not covered by automated tests in this PR.

Codex Task

Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: b75e32b5e4

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +55 to +59
const currency = new Intl.NumberFormat("en-US", {
style: "currency",
currency: "USD",
maximumFractionDigits: 0,
});

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Preserve cents when formatting amounts

The formatter is configured with maximumFractionDigits: 0, so any value with cents is rounded to a whole dollar before display. That means a user-entered 24.90 will show as $25 (and the sample -4.5 shows as -$5), and the totals in the stats will be rounded the same way, which misrepresents the stored amounts. Since the form allows step="0.01", this is a visible accuracy bug for any non-integer input.

Useful? React with 👍 / 👎.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants