blog_tech/i18n/en/docusaurus-plugin-content-pages/veille.tsx
Tellsanguis df63713055 Ajout page Veille avec agrégation RSS automatique
- Création d'un plugin Docusaurus pour agréger les flux RSS au build
  * Récupère 37 flux RSS depuis le fichier OPML
  * Filtre les articles des dernières 24h
  * Génère un fichier JSON statique pour chargement instantané

- Page Veille avec composant React
  * Affichage des articles groupés par catégorie
  * Menus dépliables (repliés par défaut)
  * Chargement ultra-rapide depuis JSON pré-généré
  * Support bilingue FR/EN

- GitHub Actions pour rebuild automatique quotidien
  * Workflow déclenché tous les jours à 6h UTC
  * Met à jour les flux RSS via l'API Cloudflare Pages
  * Déclenchement manuel possible

- Configuration Webpack pour compatibilité navigateur
  * Désactivation des polyfills Node.js côté client
  * Correction du warning onBrokenMarkdownLinks

- Icône RSS dans la navbar
  * Lien vers le flux Atom du blog
  * Style cohérent avec les autres icônes

125 articles trouvés dans les dernières 24h lors du dernier build.
2025-12-06 09:33:43 +01:00

39 lines
1.2 KiB
TypeScript

import React from 'react';
import Layout from '@theme/Layout';
import RSSFeedWidget from '@site/src/components/RSSFeedWidget';
import styles from './veille.module.css';
export default function Veille(): JSX.Element {
return (
<Layout
title="Tech Watch"
description="Daily RSS feeds on SysAdmin, DevOps, SRE, Cloud, and Security">
<main className={styles.veillePage}>
<div className="container">
<header className={styles.header}>
<h1>Tech Watch</h1>
<p className={styles.subtitle}>
Today's articles from recognized sources in SysAdmin, DevOps, SRE, Cloud, and Cybersecurity
</p>
<div className={styles.actions}>
<a
href="/veille-tech.opml"
download="veille-tech.opml"
className={styles.downloadButton}>
Download OPML file
</a>
<p className={styles.opmlInfo}>
Import this file into your favorite RSS reader (Feedly, Inoreader, FreshRSS, etc.)
</p>
</div>
</header>
<section className={styles.content}>
<RSSFeedWidget />
</section>
</div>
</main>
</Layout>
);
}