> ⚠️ **URL live hors fonction pour le moment.** L'application a été retirée du cluster MacLustr le 2026-09-04 (processus arrêtés, copie du nœud supprimée). Ce dépôt spbgit est désormais la seule source de vérité du projet. Ancienne URL : https://www.hilmacorp.ai # Hilmacorp.ai — Web Platform Official bilingual (FR/EN) corporate website of **Hilmacorp.ai**, an artificial-intelligence company founded by **Simon-Pierre Boucher** and **Massamba Mbaye**. ## Stack - **Next.js 15** (App Router) + **TypeScript** (strict) - **Tailwind CSS v4** - Custom lightweight i18n (`/fr` and `/en` locale segments, dictionaries in `messages/`) - Contact form API route with server-side validation (`/api/contact`) - Full SEO: per-page metadata, Open Graph, `sitemap.xml`, `robots.txt` ## Project layout ``` app/ [locale]/ Pages (home, about, founders, services, security, industries, contact) api/contact/ Contact form API route robots.ts sitemap.ts SEO metadata routes components/ Reusable React components (PascalCase, one component per file) lib/ i18n loader + contact validation (pure, tested) messages/ fr.json / en.json content dictionaries tests/ node:test unit tests for the API validation ``` ## Installation ```bash npm install cp .env.example .env # then fill in values as needed ``` ## Development ```bash npm run dev # http://localhost:3000 → redirects to /fr or /en ``` ## Tests ```bash npm test # node --test (requires Node ≥ 22 for native TS type stripping) ``` ## Production build & start ```bash npm run build npm run start -- -p 8070 ``` ## Environment variables See `.env.example`. No secrets are committed. If `RESEND_API_KEY` is unset, contact messages are validated and appended to `data/contact-messages.jsonl` on the server. ## Deployment The site is portable: Vercel, any Node host, or private infrastructure. Current production deployment: MacLustr node **M3U96a**, PM2 (`hilmacorp` + `hilmacorp-ngrok`), exposed at **https://www.hilmacorp.ai** via ngrok on port 8070.