Developers & API
Technical documentation for integration and collaboration with Swimmigo.
ποΈ Architecture
Swimmigo is built as a modern web application with mobile apps for iOS and Android. The architecture follows JAMstack principles with server-side rendering for optimal SEO and performance.
Tech Stack
- Framework: Next.js 15+ (App Router), TypeScript
- Styling: Tailwind CSS, Framer Motion
- Database: MongoDB Atlas β multi-collection architecture per language (blog_posts_nl/en/de/fr/es)
- Hosting: Vercel (automatic HTTPS, global CDN, ISR caching)
- Mobile: React Native β iOS (App Store) + Android (Google Play)
- Analytics: Google Analytics 4
π Multi-Language Architecture
Swimmigo supports 5 languages via a single domain (swimmigo.com). The architecture uses Next.js middleware for language detection and routing:
| Language | URL Prefix | Collection |
|---|---|---|
| Nederlands π³π± | /nl/ | blog_posts_nl |
| English π¬π§ | (default, none) | blog_posts_en |
| Deutsch π©πͺ | /de/ | blog_posts_de |
| FranΓ§ais π«π· | /fr/ | blog_posts_fr |
| EspaΓ±ol πͺπΈ | /es/ | blog_posts_es |
Blog posts are automatically translated daily from Dutch to all other languages via OpenAI GPT-4.1-mini. Matching is done via the <code>baserowId</code> field.
π Structured Data & SEO
All pages implement JSON-LD structured data for optimal visibility in Google Search, Google AI Overviews, and AI chatbots:
Organizationβ with logo, contact info, sameAs profilesWebSiteβ with SearchAction and Speakable specificationBlogPosting / Articleβ with author, publish date, imageFAQPageβ with Question/Answer pairs per blog postBreadcrumbListβ for navigation context
π€ AI Readiness
Swimmigo is optimized for AI crawlers and LLM indexing:
- robots.txt β Explicit access for GPTBot, ChatGPT-User, Google-Extended, PerplexityBot, ClaudeBot, OAI-SearchBot, Applebot, Meta-ExternalAgent
- llms.txt β swimmigo.com/llms.txt
- llms-full.txt β swimmigo.com/llms-full.txt β Full sitemap with all 94+ blog posts
- sitemap.xml β Dynamically generated with hreflang alternates for all 5 languages
- image-sitemap.xml β Blog images for Google Images
π API Endpoints
Swimmigo offers the following public API endpoints:
| Endpoint | Description |
|---|---|
GET /api/cms/slug-map | Full slug map for all blog posts per language |
POST /api/contact | Contact form endpoint |
POST /api/indexnow | IndexNow protocol for direct search engine indexing |
GET /sitemap.xml | Dynamic sitemap with all pages and blog posts |
GET /image-sitemap.xml | Image sitemap for Google Images indexing |
π¬ Contact
For technical questions or integration requests: <a href="mailto:hello@swimmigo.com">hello@swimmigo.com</a>