Phase 1 scaffolding for importing historical fuel-stop photos, grouping related images, and capturing fuel-stop details through a manual web workflow.
FuelImport.Core – domain models, options, image metadata extraction, and grouping services for manual review.FuelImport.Data – EF Core FuelImportDbContext schema + migrations for source images, grouped fuel events, and review history.FuelImport.Aws – legacy AWS OCR integration kept only as a reference during the transition away from OCR.FuelImport.Web – manual-entry UI, folder scanning endpoint, export API endpoints, and single database management.FuelImport.Tests – focused unit/integration tests for pairing, confidence, validation, and dedup idempotency.dotnet restore SnapFuel.slnx
dotnet build SnapFuel.slnx
dotnet test FuelImport.Tests/FuelImport.Tests.csproj
Configure FuelImport.Web/appsettings.json:
Import:RootFolder to your photo root path (e.g. C:\Users\steph\Downloads\SnapFuelPhotos)Import:DryRun to scan without persisting source imagesRun:
dotnet run --project FuelImport.Web
Open the web app in your browser (e.g., http://localhost:5000 or https://localhost:7001).
Click Scan Photos in the header toolbar to scan your configured photo folder into the database on-demand.
Endpoints:
POST /api/import/scanGET /api/import/configGET /api/events?needsReview=true|falseGET /api/events/{id}POST /api/events/{id}/reviewGET /api/manual/groupsPOST /api/manual/groups/splitPOST /api/manual/groups/mergePOST /api/manual/groups/saveGET /api/images/{id}GET /api/vehiclesGET /api/events/reportGET /api/events/logGET /vehicles.htmlGET /report.htmlGET /log.htmlGET /api/events/export/csvOpen the web UI to work through grouped image sets. Each group is built from nearby timestamps and matching GPS coordinates from EXIF when available. Saving a group creates or updates one fuel event linked to every image in that group.
C#
59.6%
JavaScript
26.6%
HTML
13.8%
Phase 1 scaffolding for importing historical fuel-stop photos, grouping related images, and capturing fuel-stop details through a manual web workflow.
FuelImport.Core – domain models, options, image metadata extraction, and grouping services for manual review.FuelImport.Data – EF Core FuelImportDbContext schema + migrations for source images, grouped fuel events, and review history.FuelImport.Aws – legacy AWS OCR integration kept only as a reference during the transition away from OCR.FuelImport.Web – manual-entry UI, folder scanning endpoint, export API endpoints, and single database management.FuelImport.Tests – focused unit/integration tests for pairing, confidence, validation, and dedup idempotency.dotnet restore SnapFuel.slnx
dotnet build SnapFuel.slnx
dotnet test FuelImport.Tests/FuelImport.Tests.csproj
Configure FuelImport.Web/appsettings.json:
Import:RootFolder to your photo root path (e.g. C:\Users\steph\Downloads\SnapFuelPhotos)Import:DryRun to scan without persisting source imagesRun:
dotnet run --project FuelImport.Web
Open the web app in your browser (e.g., http://localhost:5000 or https://localhost:7001).
Click Scan Photos in the header toolbar to scan your configured photo folder into the database on-demand.
Endpoints:
POST /api/import/scanGET /api/import/configGET /api/events?needsReview=true|falseGET /api/events/{id}POST /api/events/{id}/reviewGET /api/manual/groupsPOST /api/manual/groups/splitPOST /api/manual/groups/mergePOST /api/manual/groups/saveGET /api/images/{id}GET /api/vehiclesGET /api/events/reportGET /api/events/logGET /vehicles.htmlGET /report.htmlGET /log.htmlGET /api/events/export/csvOpen the web UI to work through grouped image sets. Each group is built from nearby timestamps and matching GPS coordinates from EXIF when available. Saving a group creates or updates one fuel event linked to every image in that group.
C#
59.6%
JavaScript
26.6%
HTML
13.8%