Files
ta1sph.info/PROJECT_MEMORY.md
T
suphicakir f2d943c31b feat: build home page from home.json sections
- Hero with callsign/locator tags and CTAs on khaki grid
- Feature sections for ARD (YM1KTC), DMR Türkiye, QRV73!, QRZ73!
- Telegram groups and resource site card grids
- Latest posts block with empty state (wired to blog in stage 4)
- Section wrapper, decorative numerals, external Button variant

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 00:55:33 +03:00

8.5 KiB
Raw Blame History

PROJECT_MEMORY — ta1sph.info

Claude'un bu proje için kalıcı hafızası. Her görev sonunda güncellenir. Kısa ve güncel tutulur. Son güncelleme: 2026-10-16 · Güncelleyen: Claude (Siteyi Kur — Aşama 3)

1. Durum

  • Aşama: 3 tamamlandı (ana sayfa). Sıradaki: Aşama 4 — Blog altyapısı.
  • Tamamlanan: Aşama 0–3. Stil önizleme yalnızca dev'de: http://localhost:4321/styleguide/.
  • Açık işler: Aşama 4–8. Ana sayfa LatestPosts şimdilik hasPosts={false} (boş durum) → Aşama 4'te PostCard'larla bağlanacak. Footer yasal sayfalar + /rss.xml yok (A4/A6). Favicon varsayılan (A7). LICENSE dosyaları A6.
  • Bilinen sorunlar: —

2. Ortam

  • Astro 7.4.0 · TailwindCSS 4.3.3 (@tailwindcss/vite) · TypeScript 6 strict · zod = astro/zod (ayrı paket yok)
  • @astrojs/node 11.1.8 · mdx 8.1.0 · sitemap 3.7.4 · rss 4.0.19 · astro-icon 1.2.0 · pagefind 1.5.2
  • Yerel: Node v26.11.1, npm 12.2.0, Docker 29.8.1 · package.json engines: node >=22.22
  • Repo: yerel git (Gitea remote henüz yok; push yalnızca kullanıcı onayıyla) · Branch: main
  • Canlı: https://ta1sph.info (Dokploy, HomeServer Atlas) — henüz yayında değil

3. Dosya Haritası

  • astro.config.mjs — site/trailingSlash/static + node adapter, mdx, sitemap (/_styleguide/ hariç), astro-icon (tabler), Tailwind vite plugin
  • src/styles/global.css — tema token'ları (light/dark, data-theme), fontlar, .surface-alt (khaki bölüm), .headline, .link-strong, reduced-motion
  • src/data/site.json (ad, açıklama, nav, footer, ui metinleri, postsPerPage) · src/data/social.json (boş href → gizli) · src/lib/data.ts (zod; hata build'i kırar)
  • src/layouts/BaseLayout.astro — head (ThemeInit, Seo, RSS alternate), skip link, Header, main#main, Footer
  • src/components/ — Seo (title/desc/canonical/OG/Twitter + WebSite/Person JSON-LD graph, jsonLd prop'u ile ek düğüm), ThemeInit (FOUC önleyici inline), ThemeToggle, Header (mobil menü = native popover, JS yok), Footer (4 sütun), Container, GridLines, SectionHeading (eyebrow + kırmızı çizgi), Button (primary/secondary/link), Badge (solid/outline/category), Card, ExternalLink
  • src/data/home.json — seo, hero, sections[] (feature | cards | latestPosts); şema data.ts → home, HomeSection. Tanıtım metinleri sitelerin kendi tanıtımlarından (2026-10-16 tarandı)
  • src/pages/index.astro — sections'ı sırayla render eder; arka plan dönüşümlü (hero khaki → paper, khaki…)
  • src/components/Section.astro (tam genişlik bölüm + GridLines, alt = khaki) · src/components/home/ — Hero, FeatureSection (numara + ikon | çağrı işareti/alan adı | başlık+metin+CTA; 3 sütun grid çizgileriyle hizalı), CardGrid, LatestPosts (slot), Numeral (dev rakam ::before ile → a11y/kontrast dışı)
  • Button — external prop'u (target/rel + sr-only "yeni sekmede açılır")
  • src/dev/Styleguide.astro — astro.config.mjs'deki devRoutes entegrasyonu ile sadece astro dev'de /styleguide/ (_ önekli sayfalar Astro'da rota olmaz)
  • src/lib/slug.ts — Türkçe karakter dönüştürücü slugify
  • scripts/new-post.mjs — npm run new:post -- "Başlık" → src/content/blog/<slug>/index.md (draft: true); slug.ts'yi Node type-stripping ile import eder
  • src/pages/index.astro — geçici yer tutucu (Aşama 3'te değişecek)
  • docs/design-reference/ — Huemint Magazine ekran görüntüleri · CLAUDE.md → AGENTS.md + bu dosya
  • Build: astro build && pagefind --site dist/client · statik çıktı dist/client, sunucu dist/server/entry.mjs

4. Kararlar (ADR)

Tarih Karar Gerekçe
2026-10-15 Statik çıktı + @astrojs/node ile sadece /api/views dinamik "Öne çıkan = en çok okunan" için sayaç gerekli; site geri kalanı statik ve hızlı
2026-10-15 Sayaç: SQLite (better-sqlite3), volume /app/data Harici servis yok, ev sunucusunda basit ve kalıcı
2026-10-15 Arama: Pagefind Statik, sunucusuz, Türkçe destekli
2026-10-15 Harita: Leaflet + OpenStreetMap API anahtarı / ücret yok, KVKK dostu
2026-10-15 İkonlar: astro-icon + Tabler Tutarlı çizgi seti, anten kulesi ve marka ikonları mevcut
2026-10-15 Lisans: Kod MIT, içerik CC BY-SA 4.0 Kaynak gösterilerek serbest kullanım talebi
2026-10-15 Kanonik alan: apex ta1sph.info, www → 301 SEO tekilleştirme
2026-10-15 Fontlar self-host (Fontsource: Rubik + Inter) Performans + gizlilik
2026-10-16 Ek token'lar: accent-fill/on-accent-fill, accent-text (khaki'de fg'ye döner) Ölçüm: ink/red 4.46, red-strong/khaki 3.85 → küçük metin AA'yı geçmiyordu. Kırmızı zeminli butonlar ≥19px bold
2026-10-16 Dekoratif dev rakamlar CSS ::before içeriği axe/Lighthouse aria-hidden metinde bile kontrast hatası veriyordu
2026-10-16 Kuruluş/site tanıtımları yalnızca sitelerin kendi ifadelerinden Uydurma bilgi yok; Telegram kartlarında açıklama yok (doğrulanmadı)
2026-10-16 Mobil menü native popover Escape/odak/light-dismiss JS'siz
2026-10-16 Pagefind CLI postbuild (astro-pagefind yok) Daha az bağımlılık; node adapter çıktısı dist/client
2026-10-16 Skill repoya kopyalanmadı, kullanıcı düzeyinde Çift kopya senkron riski
2026-10-15 Locator KN41KB99HW → 41.08307 N, 28.91094 E Harita merkezi

5. İçerik Envanteri

Slug Başlık Kategori Oluşturma Güncelleme Durum
— — — — — —

6. Değişiklik Günlüğü (en yeni üstte)

  • 2026-10-16 | Siteyi Kur A3 | Ana sayfa: hero, 4 kuruluş, Telegram, son yazılar (boş durum), site tanıtımları; axe temiz | src/data/home.json, src/components/home/, src/components/Section.astro, src/pages/index.astro, src/lib/data.ts
  • 2026-10-16 | Siteyi Kur A2 | Token'lar, tema anahtarı, SEO bileşeni, layout, header/footer, temel bileşenler, site/social JSON, dev styleguide; axe temiz (2 tema) | src/styles/, src/components/, src/layouts/, src/data/, src/lib/data.ts, src/dev/, astro.config.mjs
  • 2026-10-16 | Siteyi Kur A1 | İskelet: Tailwind 4, mdx, sitemap, node, icon, rss, fontlar, pagefind, prettier, new:post | astro.config.mjs, package.json, scripts/, src/lib/slug.ts, src/styles/, README.md
  • 2026-10-16 | Siteyi Kur A0 | Ortam kontrolü; hafıza + docs kitten projeye kopyalandı | CLAUDE.md, PROJECT_MEMORY.md, docs/
  • 2026-10-15 | Kurulum | Skill, CLAUDE.md ve PROJECT_MEMORY.md eklendi | .claude/, CLAUDE.md, PROJECT_MEMORY.md