Skip to content

Navigation Menu

Sign in
Sign up

Repository files navigation

Madrid Insider β€” Lab

πŸ§ͺ The sandbox for testing new functions and features before they reach the live site. Risky refactors, alternate stacks, new components, weird ideas β€” all start here.

This is where we shake out anything that might break roccosalata/madridinsider (the production site) or roccosalata/madridinsider-explorer (the dev source). If it works here and looks good, we promote it. If it doesn't, we throw it away and the production site never knew.

Nothing in this repo is user-facing.


πŸ”— The four-repo family

Repo Role
roccosalata/madridinsider Production live site β€” what users see
roccosalata/madridinsider-explorer Mavis's dev sandbox for stable code
roccosalata/madridinsider-data Content "database" (JSON)
roccosalata/madridinsider-lab This repo β€” risky experiments & feature tests

The flow

lab (here, experiments) ──► explorer (stable) ──► madridinsider (production)
 ▲さんかく
 └────── "does it work, scale, look right?" β”€β”€β”€β”€β”€β”€β”˜

A typical feature goes: drafted in lab β†’ moved to explorer once clean β†’ promoted to madridinsider once approved.


πŸ“ What's in here

This repo is intentionally messy. Right now it holds:

  • app/ β€” a Next.js 14 / App Router build (the historical v0 export) with deep pages for each of the 5 main categories (/essentials, /living, /see, /do, /now) plus hub pages.
  • components/ β€” feature-rich components (quiz, weather widget, floating action ball, newsletter form, etc.) inherited from the original v0 build.
  • lib/, hooks/, styles/ β€” shared utilities.

This is the legacy feature-complete build kept as a reference and test bed. New experiments should live under experiments/<slug>/ so they don't tangle with this base.


πŸ§ͺ Adding an experiment

  1. Branch off main: git switch -c exp/your-feature.
  2. Create a folder: experiments/<your-feature>/.
  3. Keep it self-contained β€” own package.json, own README.md, own scripts. Don't pollute the root.
  4. Document it β€” at the top of your experiment's README, answer:
    • What is this testing?
    • What's the success criteria?
    • How do I run it?
  5. Open a PR titled exp: <your-feature>. Reviews are light β€” this is a sandbox, the bar is "does it work locally".

If your experiment graduates, the next step is to lift it into madridinsider-explorer , not directly into production.


πŸš€ Running the base build (the legacy Next.js app)

# pnpm is the lockfile-of-record
pnpm install
# dev server
pnpm dev
# production build
pnpm build
# serve the build
pnpm start

Node 18+ recommended. Next.js 14.


πŸ“ Rules of the lab

  • No users, no SLA, no monitoring. Break things.
  • No production data. Use fixtures in experiments/<slug>/fixtures/.
  • No direct deploys. The lab never serves traffic. If you need a public URL for review, deploy from a branch to a preview environment and link it in the PR.
  • Clean up or it gets archived. Experiments older than 90 days with no activity get a stale- prefix and a friendly ping to the author.
  • One experiment per folder. Don't mix two ideas.

πŸ—ƒοΈ Archive

When an experiment is superseded or abandoned, move (don't delete) its folder to archive/<date>-<slug>/. The history of what we tried is half the value of the lab.


🀝 Contributing

Anyone with push access can land experiments. If you don't, fork and PR β€” Mavis or a maintainer will review.


πŸ“„ License

MIT β€” fork, customize, ship.

About

Feature & function test sandbox for Madrid Insider. Risky experiments and alternate-stack builds live here.

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

AltStyle γ«γ‚ˆγ£γ¦ε€‰ζ›γ•γ‚ŒγŸγƒšγƒΌγ‚Έ (->γ‚ͺγƒͺγ‚ΈγƒŠγƒ«) /