2acfb1cdf5
Add container definitions for the web app, API, worker, and PostGIS database so the local stack can be built and run consistently.
61 lines
3.3 KiB
Markdown
61 lines
3.3 KiB
Markdown
# Changelog
|
|
|
|
All notable changes to this project will be documented in this file.
|
|
|
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
|
|
|
|
## [Unreleased]
|
|
|
|
### Added
|
|
- Added a multi-stage `Dockerfile` and `docker-compose.yml` for running the web app, API, worker, and PostGIS database as a local container stack.
|
|
|
|
## [2026-04-19]
|
|
|
|
### Added
|
|
- Added separate `Research` and `Results` workspaces so new runs and saved run browsing live in distinct flows while preserving bundled map selection.
|
|
- Added dedicated Basic and Deep Research results views, plus a public landing page and dedicated auth route for the unauthenticated experience.
|
|
|
|
### Changed
|
|
- Made Basic research map-first by requiring a dropped pin or current location, sending coordinate-based searches through the API, and cleaning up shared map presentation.
|
|
- Simplified shared Google Maps rendering by moving Basic, Deep Research, and result review maps onto the same cleaner visual style.
|
|
|
|
### Fixed
|
|
- Fixed local logout behavior so the session cookie is cleared consistently and optional session-id logout requests can remove the active server session record.
|
|
|
|
## [2026-04-12]
|
|
|
|
### Changed
|
|
- Improved local development networking by making API env loading work with `.env.local`, adding LAN-friendly API URL fallback behavior, and fixing development CORS handling.
|
|
- Fixed local research inserts so nullable Google Places coordinates no longer break business upserts.
|
|
- Improved postal data tooling with streaming imports, clearer CRS validation, progress logs, and a status command for checking imported areas and adjacency counts.
|
|
|
|
### Added
|
|
- Added postal-area import and adjacency build scripts for US ZIP/ZCTA and Canada FSA datasets.
|
|
- Added a dedicated `Deep Research` view with map pin placement, propagation preview overlays, batch history, and bundled map navigation.
|
|
- Added backend deep-research preview, batch creation, and batch detail APIs, reusing the existing research engine to create one child search per postal area.
|
|
|
|
### Removed
|
|
- Removed stale local metadata, placeholder postal seeding code, and leftover Supabase-era repository artifacts.
|
|
|
|
## [2026-03-27]
|
|
|
|
### Changed
|
|
- Migrated the app from a Supabase runtime to a local Fastify API with PostgreSQL, PostGIS, and cookie-based session auth.
|
|
- Reworked the research experience with the `Leads4less` branding, the renamed `Research` view, a top-form layout, and a filterable grid of research jobs.
|
|
- Added local API wiring for research, dashboard, and map flows while keeping selected-job map behavior and broader lead retrieval support.
|
|
|
|
### Added
|
|
- Added local backend scaffolding under `server/` for auth, health checks, search routes, database access, and worker startup.
|
|
- Added local database migrations and scripts under `db/`, including the first PostGIS-enabled schema and migration runner.
|
|
- Added shared app types and frontend API/auth helpers for the local stack.
|
|
|
|
### Removed
|
|
- Removed the Supabase browser client, Edge Function runtime, and Supabase migration artifacts from the active app stack.
|
|
|
|
## [2026-03-26]
|
|
|
|
### Added
|
|
- Initial Leads4Less app with React and Vite.
|
|
- Supabase-backed authentication, lead storage, and search job persistence.
|
|
- Research, dashboard, and map views for running searches, browsing leads, and visualizing results on Google Maps.
|