# Setup Behold pour embeds Insta

Page cerveau col D (`ColInsta.astro`) consomme 2 feeds Insta via [Behold.so](https://behold.so) (gratuit, 2 feeds, sync 1h, sans login user).

## Etapes

1. Creer compte sur https://behold.so (gratuit jusqu'a 2 feeds)
2. Connecter `@aep.politique` (Login Instagram via Facebook Business)
3. Connecter `@julesneny` (idem)
4. Recuperer les 2 feed IDs depuis le dashboard Behold
5. Copier `.env.example` vers `.env.local` (a la racine du repo)
6. Remplir `.env.local` :

   ```bash
   PUBLIC_BEHOLD_AEP=xxxxxxxxxxxx
   PUBLIC_BEHOLD_JULESNENY=yyyyyyyyyyyy
   ```

7. Relancer `npm run dev` ou rebuild + redeploy (PC8)

## Comportement par defaut

Sans feed IDs valides (placeholder), le composant `InstaFeed.vue` affiche un fallback gracieux :
- Titre du compte (lien direct vers Instagram)
- Bio courte
- Bouton "Voir sur Instagram"

C'est OK pour un V1 visuel "complet". UX degradee mais pas casse.

## Ressources techniques

- API Behold : `https://feeds.behold.so/{feedId}` -> JSON array de posts
- Sync : 1h (Behold rafraichit depuis Insta automatiquement)
- CDN : images servies depuis Behold (pas de hot-link Insta direct)

## CSP (PC8 deploy)

Si une CSP est ajoutee au deploy Caddy, prevoir :

```
connect-src 'self' https://feeds.behold.so;
img-src 'self' data: https://feeds.behold.so https://*.cdninstagram.com;
```

## Alternatives si Behold ne convient pas

- **EmbedSocial** (~$8/mois) : https://embedsocial.com
- **Scrape n8n nocturne** (V1.5) : Insta Graph API via compte Business + Page Facebook ; coherent avec PC6 journal-aggregate
- **Posts manuels oEmbed** (V2) : Jules selectionne 6-10 URLs, oEmbed post-by-post
