# Data

> constants/, types/, site copy, content, hardcoded strings, useState, URL params, global state, context, store, dates, timezones, date formatting, media entries, images metadata. Use when adding or moving site content, deciding where data or state should live, typing a content entry, or handling dates and media.

- Skill: `htkoca/data` (Agent Skill)
- Install (CLI): `npx skillmds@latest add htkoca/data`
- Raw SKILL.md: https://api.skillmd.com/api/skills/htkoca/data/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: htkoca (https://skillmd.com/u/htkoca)
- Updated: 2026-09-21
- Page: https://skillmd.com/skills/htkoca/data

---


# Data and content

Where content lives, how it's typed, and how state is managed.

1. **All content in `constants/`.** No inline copy or data in components; no external content APIs. Copy is grounded in real facts, never invented.
2. **`constants/` is the source of truth.** It owns the site's content outright, typed by `types/`. Where an upstream source seeds it, that source stays a reference for facts not yet captured here; `constants/` still wins.
3. **State discipline.** Keep state local: `useState` and URL params for the ephemeral. No speculative global state.
4. **Dates:** zone through `fromZonedTime(iso, appTimeZone)`, never bare `new Date()`; display-only dates are pre-formatted strings.
5. **Media:** every entry carries real dimensions and real `alt` text; `src` paths are site-absolute under `public/`.
6. **Licensed assets stay put.** Licensed fonts and imagery ship with the site but are never published to other repos or registries.
