Integration
Your blog, in your React Router app.
Install the SDK and your routes load each article in a loader, with the meta tags ready to return. Render the content with your own components.
React Router 7 in framework mode
app/routes/blog.$slug.tsx
import { fetchArticle } from '@citedseo/react-router'import { ArticleContent } from '@citedseo/react'export async function loader({ params }) { return fetchArticle({ siteId: process.env.CITEDSEO_SITE_ID, slug: params.slug })}export default function Article() { return <ArticleContent markdown={useLoaderData().markdown} />}- feed.updated/blog/hubspot-alternativeslive in 1.2s
- feed.updated/blog/best-crm-for-startupslive in 0.9s
How it connects
Connect once, then approve.
Install the SDK
Add @citedseo/react-router and two routes, the blog list and the article. Or ask your coding agent to do it from the guide.
Add your site ID
One environment variable. The SDK reads your published articles; there’s no API key to keep secret.
Publish and it’s live
When you approve an article or an update, we tell your site, so the new version is live without a full redeploy.
What’s included
What it does with React Router.
Articles as data
Title, body, description, cover image and dates, ready for your own layout.
SEO tags included
Title, description, canonical and Open Graph tags for every article.
Schema included
Article and breadcrumb structured data, generated for each post.
What is this?Live on publish
A signed webhook tells your site to refresh the page that changed.
Updates in place
Refreshes keep the same slug, so rankings carry over.
Read-only and keyless
The SDK only reads published articles. Nothing in your code can change them.
FAQ
React Router, answered.
Keys, design and how updates go live. Anything else, just ask.
Still have a question?
Email us or book a quick call. Most replies land within a few hours.
Get in touchDoes it need an API key?
No. The SDK reads your published articles with your site ID, which is safe to ship in your code. Drafts and anything unapproved are never exposed.
Can my coding agent set it up?
Yes. Point Claude Code, Cursor or Copilot at the setup guide and it can add the blog routes to your React Router app for you.
Do I control the design?
Completely. You get the article as data and render it with your own components and styles.
How do updates go live?
When an article is published or refreshed, we send a signed webhook to your site so it can refresh that page. Without it, your site picks up changes on its next build.
More integrations
Your next page-one ranking is already in your data.
Connect Search Console, pick your first fixes, and watch the first one ship tonight.
Sign-ups open soon. You’ll get an email when your spot opens.