All projects

Case study · Consell Insular de Formentera · Tourism regulation · 2026

The island's tourism register, public and searchable

Public search tool for tourism businesses, establishments and activities, with a role-based admin dashboard, case files with attachments and an API for third parties. Migrated from years of spreadsheets.

  • Registers
  • Search
  • API
ok
ok
ok
8

establishment categories

2

applications: public and management

1

public API with keys

The challenge

The register lived in Excel and ODS sheets accumulated over years, with no stable identifiers and no way for the public to consult it. It had to be migrated without losing its history, expose only what is public and give the team a management tool with full traceability.

The solution

A monorepo with two React applications and a shared package that defines the master schema. Firestore stores the complete case files and projects a public version with an aggregated index, so the search tool never touches internal data. Writes are atomic and audited, the Firestore and Storage security rules have their own tests, and a REST API with encrypted keys lets third parties query the register. The migration scripts generated stable identifiers from the historical files.

Project highlights

  • 01

    Public data kept apart from internal data

    Automatic public projection with an index for fast search.

  • 02

    Tested rules

    Access rules are tested against the emulator before every deployment.

  • 03

    Extra protection

    App Check with reCAPTCHA Enterprise and encrypted API keys.

  • 04

    Backups

    Weekly backups and point-in-time recovery.

Technology

  • React 19
  • Vite
  • TypeScript
  • Mantine
  • pnpm monorepo
  • Firestore
  • Cloud Functions
  • Firebase Auth
  • App Check
  • reCAPTCHA Enterprise
  • Firebase Hosting