# Content Collections & Routes

## Content Collections & Routes

Veltro defines its collections in `src/content.config.ts` using Astro's glob loader and schemas from `src/sections.schema.ts`.

### Main Collections
- pages
- blog
- services
- portfolio
- case studies
- industries
- team
- careers
- testimonials
- homepage, sections, about, awards, FAQ, pricing, contact, and author

Folder names for blog, services, portfolio, testimonials, case studies, and industries can be changed through `settings` in `config.toml`. If you rename one, follow the source comment and update the content folder, route folder, and collection registration together.

### Route Model
- `src/pages/[...lang]/[page].astro` renders entries from `src/content/pages/`.
- Dedicated list and single routes render blog, services, portfolio, case studies, industries, team, and careers.
- Blog has category, tag, and paginated routes.
- Portfolio has category and paginated routes.
- Services and case studies have paginated routes.

### Collection Entry Examples
```text
src/content/blog/english/post-1.mdx
src/content/services/english/service-01.mdx
src/content/portfolio/english/01.mdx
src/content/case-studies/english/case-study-1.mdx
src/content/industries/english/industry-1.mdx
src/content/team/english/team-1.md
src/content/careers/english/career-1.md
```

List-page settings live in each collection's `<language>/-index.md`. Use `customSlug` on supported entries to override the generated URL segment.

### Frontmatter Options
The shared page schema supports title, subtitle, description, image, date, author, categories, tags, `draft`, `customSlug`, canonical URL, robots, keywords, sitemap exclusion, collection exclusion, and section override blocks. Collection-specific fields are defined beside each collection in `src/content.config.ts`.