Skip to content

Feat/stitch restyle - #4

Merged
edzy16 merged 13 commits into
mainfrom
feat/stitch-restyle
May 18, 2026
Merged

edzy16 merged 13 commits into
mainfrom
feat/stitch-restyle

Conversation

@edzy16

@edzy16 edzy16 commented May 18, 2026

Copy link
Copy Markdown
Owner

Summary by CodeRabbit

  • New Features

    • Added detailed part views with edit and delete capabilities, replacement history with change logs.
    • Enabled editing of existing replacement logs.
    • Expanded app configuration to support environment-driven development variants.
  • UI Improvements

    • Enhanced vehicle and parts screens with icon-based buttons and improved card layouts with visual indicators.
    • Refined vehicle detail and add-sheet flows with better navigation and status indicators.
    • Updated success indicators and badges with improved visual styling.
  • Database

    • Added replacement log history tracking with schema migration to support detailed change records.

Review Change Stack

@edzy16
edzy16 merged commit 457f456 into main May 18, 2026
1 check passed
@edzy16
edzy16 deleted the feat/stitch-restyle branch May 18, 2026 18:42
@coderabbitai

coderabbitai Bot commented May 18, 2026

Copy link
Copy Markdown

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: d4210bfc-dfe5-4125-818f-028b0b44d4e4

📥 Commits

Reviewing files that changed from the base of the PR and between c07dacb and fd01c39.

⛔ Files ignored due to path filters (3)
  • assets/appIcons/appstore-dev.png is excluded by !**/*.png
  • assets/appIcons/playstore-dev.png is excluded by !**/*.png
  • bun.lock is excluded by !**/*.lock
📒 Files selected for processing (19)
  • .claude/settings.local.json
  • app.config.js
  • package.json
  • scripts/with-app-variant.js
  • src/app/index.tsx
  • src/app/parts/[id].tsx
  • src/app/vehicles.tsx
  • src/app/vehicles/[id].tsx
  • src/components/add-sheet.tsx
  • src/components/app-tabs.tsx
  • src/components/fab.tsx
  • src/components/modals/log-replacement-modal.tsx
  • src/components/part-status-row.tsx
  • src/components/status-pill.tsx
  • src/components/vehicle-card.tsx
  • src/constants/theme.ts
  • src/db/migrations.ts
  • src/db/parts.ts
  • src/types/index.ts

📝 Walkthrough

Walkthrough

This PR adds part replacement change history tracking with a new detail screen and modal editing, modernizes the app's UI from text-based to Material icons, and introduces app variant support for development builds. The database schema expands to track individual replacement logs, vehicle screens navigate to the new part detail view, and the UI consistently adopts icon-based controls across navigation, buttons, and status indicators.

Changes

Part Replacement History & Material Icon Modernization

Layer / File(s) Summary
Database schema and replacement log types
src/types/index.ts, src/db/migrations.ts, src/db/parts.ts
New PartReplacementLog type and schema v4 migration create part_replacement_logs table; new query/mutation functions fetch, insert, update, and delete logs while syncing the parent part's latest replacement odometer.
Part detail screen and replacement log editing
src/app/parts/[id].tsx, src/components/modals/log-replacement-modal.tsx
New route /parts/[id] displays a part, its replacement history (paginated to 3 logs initially), and wires modal flows for adding and editing logs; LogReplacementModal now supports edit mode via optional existingLog prop.
Material icons integration and StatusPill component
src/constants/theme.ts, src/components/status-pill.tsx, src/app/index.tsx, src/components/fab.tsx, src/app/vehicles.tsx, src/components/app-tabs.tsx
Add @expo/vector-icons dependency and theme color tokens; introduce StatusPill component for mileage badges; replace text-based icons with MaterialIcons in home screen, FAB, vehicles list, and tab navigation.
Vehicle list and detail screen UI refactoring
src/app/vehicles.tsx, src/app/vehicles/[id].tsx, src/components/vehicle-card.tsx, src/components/part-status-row.tsx
Vehicles screen add button and cards now show Material icons; vehicle detail updates back button to icon+text, odometer to icon+value layout, and fuel log rows to show km and date on the left; parts now navigate to detail screen instead of opening modal; mileage badge switches to StatusPill component.
Add sheet vehicle and action selection UI
src/components/add-sheet.tsx
Restructure flow with dedicated "Select Vehicle" step using row-based layout with chevrons, followed by "Choose Action" step for replacement vs fuel; replaced flat option buttons with richer row and tile layouts.
App variant and development build configuration
app.config.js, scripts/with-app-variant.js, package.json
Add app.config.js to build Expo config from app.json with variant-driven app identity overrides; introduce with-app-variant.js wrapper script; add start:dev, prebuild:dev, android:dev, ios:dev scripts and @expo/vector-icons/expo-sqlite dependencies.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

  • edzy16/PitStop#1: Expands .claude/settings.local.json command allowlist with similar permission management scope.

Poem

A rabbit hops through part replacement logs,
With Material icons bright and clear,
Variant builds for dev and fog,
Detail screens bring history near,
The UI springs with modern cheer. 🐰✨

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/stitch-restyle

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant