This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
This is a Turkish law firm website (Akkuş Avukatlık) built with Eleventy (11ty) static site generator, based on the high-performance blog template from Google. The site is optimized for performance, accessibility, and SEO with extensive Tailwind CSS customization.
npm run dev - Start development with watch mode (SCSS, Tailwind, 11ty)npm run build - Production build (SCSS → Tailwind → SVG → JS → 11ty)npm run dev:11ty - Start Eleventy dev server onlynpm run dev:tailwindcss - Watch Tailwind CSS compilationnpm run dev:scss - Watch SCSS compilationnpm run build:tailwindcss - Build production Tailwind CSS (minified)npm run build:scss - Compile SCSS to CSSnpm run build:svg - Generate SVG sprite from icons/npm run build:js - Bundle and minify JavaScript with Rollupnpm test - Run Mocha testsnpm run test-watch - Run tests in watch modenpm run admin - Start Netlify CMS proxy server for local content editing├── _11ty/ # Eleventy plugins and custom functionality
├── _data/ # Global data files (metadata.json, settings.js)
├── _includes/ # Nunjucks templates and layouts
├── _site/ # Generated static site (build output)
├── admin/ # Netlify CMS configuration
├── css/ # Compiled CSS output
├── img/ # Images (optimized with srcset generation)
├── js/ # JavaScript source files
├── pages/ # Markdown pages for legal service descriptions
├── posts/ # Blog posts (articles about legal topics)
├── services/ # Legal service category pages
├── taxonomy/ # Tag/category pages for organizing content
├── tailwindcss/ # Tailwind source files and SCSS components
└── test/ # Test files
services/) - Legal practice areas (e.g., criminal law, family law)pages/) - General content pages and lawyer profilesposts/) - Blog articles about legal topicstaxonomy/) - Category and tag pagesreviews/) - Client testimonialsimg-dim.js - Image dimension inferencejson-ld.js - Structured data generationoptimize-html.js - HTML minificationapply-csp.js - Content Security Policy applicationsrcset.js - Responsive image generationvideo-gif.js - GIF to MP4 conversiontailwindcss/scss/components/tailwindcss/scss/utilities/_data/metadata.json - Site metadata, contact info, social media_data/menu.json - Navigation structure_data/settings.js - Environment-specific settings.11tydata.js files for shared front matterimg/ for automatic optimizationnpm test after major changes to verify build integrityThe site uses custom markdown-it containers for rich content formatting:
| Container Name | Use Case | Syntax |
|---|---|---|
| summaryToc | Table of contents - collapsible navigation for long legal documents | ::: summaryToc İçindekiler |
| kanun | Legal provisions - displaying law articles, regulations, and statutes | ::: kanun 2547 Sayılı Yükseköğretim Kanunu |
| youtube | Video embeds - legal education videos, case study explanations | ::: youtube dQw4w9WgXcQ |
| summary | FAQ sections - collapsed questions about legal procedures | ::: summary Dava açmak için süre sınırı var mı? |
| summaryOpen | Important FAQ - expanded questions that should be visible by default | ::: summaryOpen Uzman avukat desteği neden önemli? |
::: summaryToc İçindekiler
- Dava Süreci
- Gerekli Belgeler
- Mahkeme Kararları
:::
::: kanun 2547 Sayılı Yükseköğretim Kanunu
Üniversitelerin akademik kadro ilanları...
:::
::: summary Dava açmak için süre sınırı var mı?
60 gün içinde dava açılmalıdır...
:::
::: summaryOpen Uzman avukat desteği neden önemli?
Akademik hukuk karmaşık bir alandır...
:::
All containers render as accessible <details>/<summary> HTML elements with appropriate CSS classes for styling.
netlify.toml for build configuration