Skip to content

Releases: CesarAugustusGroB/web-react-learning

Expense Tracker UI Revamp

16 Jun 09:57
2f19d41

Choose a tag to compare

Release Document — Expense Tracker UI Revamp
Version: v0.3.0-alpha
Date: 2025-06-09

Overview
This release introduces Chakra UI integration into the Expense Tracker app to significantly enhance the user interface and experience. The UI components have been refactored to leverage Chakra’s accessible, themeable, and responsive design system, with added support for dark mode and improved form validation.

Features Implemented
Installed and configured Chakra UI with custom theming

Replaced global styles with Chakra’s theming and CSS reset

Refactored layout components (Box, Flex, Grid) for responsiveness

Updated all form components (Input, Select, Button, etc.) using Chakra UI

Enhanced expense list and items with Chakra components and icons

Redesigned summary and chart containers with Chakra layout and typography

Implemented dark mode toggle with persistent user preference

Improved accessibility and keyboard navigation throughout the app

Removed legacy CSS and streamlined styling code

How to Upgrade
Run npm install @chakra-ui/react @emotion/react @emotion/styled framer-motion

Wrap the root app component with

Replace legacy styles with Chakra components and styles as per documentation

Tagging
Tag name: v0.3.0-alpha

This is a UI-focused alpha release introducing Chakra UI and theming improvements.

Version: v0.2.0-alpha

10 Jun 14:56
ce33375

Choose a tag to compare

📦 Release: v0.2.0-alpha
Date: 2025-06-10
Status: Alpha

✨ New Features
Category Dropdown with Defined Options

Replaced free-text input with a select dropdown for category selection.

Predefined categories: Food, Rent, Transport, Utilities, Entertainment, Others.

✅ Ensures data consistency and accurate aggregation for charts.

Enhanced Filter Logic

Category and date range filters now apply to:

ExpenseList

ExpenseSummary

ExpenseChart

🔒 Added validation: start date must not be later than end date.

Charts Visualization

Integrated Recharts for data visualization.

Pie Chart: Displays distribution of expenses by category.

Bar Chart: Shows total expenses per month.

Charts are located in the ExpenseChart component and reflect filtered data from context.

User Experience Improvements

🧼 Form clears automatically after saving or cancelling an edit.

⚠️ Input validation errors now show user-friendly messages.

📱 Responsive styling added for better experience on mobile and smaller screens.

Version: v0.1.0-alpha

09 Jun 13:43
42843aa

Choose a tag to compare

Release Document — Expense Tracker App
Version: v0.1.0-alpha
Date: 2025-06-09

Overview
This release covers the initial implementation of the Expense Tracker app, focusing on core features for adding, managing, filtering, and visualizing expenses. It uses React with TypeScript and includes local state management and data persistence in localStorage.

Features Implemented

  1. Project Setup and Environment Configuration
    Initialized React + TypeScript project

Configured folder structure for components, context, models, hooks, utils, and styles

Installed dependencies including React, TypeScript, and charting library (placeholder for Recharts/Chart.js)

  1. TypeScript Data Models
    Defined Expense and Category interfaces

Established filters state typing for category and date range

  1. React Context and Reducer Setup
    Created ExpenseContext with useReducer

Implemented actions for adding, editing, deleting expenses, setting filters, and loading initial data

  1. ExpenseForm Component
    Form to add new expenses

Inputs for description, amount, category, and date

Validation and controlled form state

  1. ExpenseFilters Component
    Filter expenses by category (select dropdown) and date range (start and end dates)

  2. ExpenseList and ExpenseItem Components
    Render filtered list of expenses

Edit and delete buttons on each expense item

  1. LocalStorage Persistence
    Load expenses from localStorage on app initialization

Sync expenses to localStorage on state changes

  1. ExpenseSummary Component
    Calculates and displays total expenses overall and by category based on current filters

  2. ExpenseChart Component (Stub)
    Placeholder for expense visualization using charts (pie/bar)

  3. Main Page Integration
    Integrated all components in App.tsx within ExpenseProvider context

Basic responsive layout with header, form, filters, list, summary, and chart sections

Known Limitations & Next Steps
Editing expenses populates form partially, needs full implementation

Date and category filtering logic can be refined (validation, UX improvements)

ExpenseChart currently a placeholder, needs full implementation with Recharts or Chart.js

UI styling can be improved for better responsiveness and accessibility

No authentication or backend syncing yet, data is limited to localStorage

No export/import of expenses

Tagging
Tag name for this release: v0.1.0-alpha

This is an alpha release intended for initial testing and feedback, not production use

How to Run
Clone repo

Run npm install or yarn

Start dev server with npm start or yarn start

Open http://localhost:3000/ in your browser