# Changelog of InkRadar · Tattoo Studios by City (`corent1robert/inkradar-scraper`) Actor

- **URL**: https://apify.com/corent1robert/inkradar-scraper/changelog.md
- **Full Actor documentation**: https://apify.com/corent1robert/inkradar-scraper.md

## Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/).

### \[Unreleased]

#### Changed

- **README** — added **Who is this for?** section with buyer personas, goals, and suggested coverage modes (benefit-first Store copy).

### \[1.6.0] - 2026-05-28

#### Changed

- **Store SEO** — sharper short description (export-ready rows, optional website emails); `seoTitle` adds Apify branding; `seoDescription` extended with contact-fill hook and Apify Actor suffix (~155 chars).

Apify actor version: **1.6**

### \[1.5.0] - 2026-05-28

#### Added

- **Social URL routing** — Instagram/Facebook/TikTok links misfiled under `website` in InkRadar data are moved to the correct columns (`socialUrls.js`).

#### Changed

- **Console input** — no required fields (`required: []`); support contact in schema description; `.actor/INPUT.json` for platform default runs.
- **Default INPUT** aligned to Paris + 30 studios (Console Try, local `npm start`).

Apify actor version: **1.5**

### \[1.4.0] - 2026-05-28

#### Added

- **Progressive export** — studios stream to the dataset (and local `output.csv`) as they are ready; complete profiles export immediately while contact fill runs.
- **Buyer-friendly run logs** — outcome labels (`Catalogue`, `Contact fill`, `Export`) on Apify Console; technical detail behind `verboseLogs`.
- **Key-value store schema** wired in `actor.json` for RUN\_LOG in the output panel.

#### Changed

- **Console input** — simplified contact-fill copy; API-only knobs (`websiteEnrichmentConcurrency`, `websiteEnrichmentMaxPages`, radius, GPS, search keyword).
- **Default INPUT** — Paris + 30 studios everywhere (Console, `.actor/INPUT.json`, local storage); full-catalogue presets via npm scripts only.
- **README** — benefit-first hero, Quick start (~2 min), English-only local dev section.
- **Default memory** raised to **1024 MB** for full catalogue + contact fill runs.
- **Full export** dataset view includes enrichment provenance columns.

Apify actor version: **1.4**

### \[1.3.0] - 2026-05-28

#### Added

- Optional **website enrichment** — crawls each studio’s business site for missing email, Instagram, Facebook, and TikTok (`websiteEnrichment`, `websiteEnrichmentMaxPages`).

Apify actor version: **1.3**

### \[1.2.0] - 2026-05-28

#### Changed

- **Full catalogue** and **France only** modes now paginate InkRadar’s studio table directly (live sync, 100% coverage) instead of a static 128-city geo grid (~226 studios were missing).
- Catalog runs skip the separate enrich phase — profile fields come in one pass.

Apify actor version: **1.2**

### \[1.1.0] - 2026-05-28

#### Added

- **Full catalogue** mode (`worldwide_major_cities`) — 128 city anchors, ~13,750 studios (complete InkRadar directory).
- Local `input.worldwide.json` preset and `npm run export-csv` script.
- CSV export omits columns empty on every row; `email` field in dataset.

#### Changed

- France mode renamed **France only** in Console (same `france_major_cities` input value).

Apify actor version: **1.1**

### \[1.0.0] - 2026-05-28

#### Added

- Initial release: InkRadar tattoo studio scraper (HTTP / Supabase API).
- **Near a city** mode with radius up to 200 km and multi-area discovery.
- **Full France** mode — 50 city anchors, ~4,246 FR studios (100% of France catalogue on InkRadar).
- Dataset fields: name, location, phone, social links, bio, profile URL, claimed status.
- Console dataset views: **Overview** and **Full export**.
- RUN\_LOG key-value record for run progress.
- Unit tests for geo tiling and row normalization.

Apify actor version: **1.0**
