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