Built for React Developers

The React CMS That Just Works

Real-time content sync, powerful React SDK, and component-based content models. Manage content in one place, deliver everywhere with your React stack.

50ms Sync Latency
15KB SDK Size
99.9% Uptime SLA
import { useContent } from '@hisite/react-sdk';

function BlogPost({ slug }) {
  const { data, loading } = useContent(slug);
  
  if (loading) return <Spinner />;
  
  return (
    <article>
      <h1>{data.title}</h1>
      <div dangerouslySetInnerHTML={{ __html: data.body }} />
    </article>
  );
}

React SDK & Hooks

Everything you need to integrate content management into your React applications with minimal boilerplate and maximum performance.

useContent Hook

Fetch any content with a single hook. Automatic caching, revalidation, and optimistic updates built-in.

useLiveQuery

Subscribe to real-time content changes. Your UI updates instantly when content changes in the CMS.

Type-Safe SDK

Full TypeScript support with generated types from your content models. Catch errors at build time.

SSR Compatible

Works seamlessly with Next.js, Remix, and any SSR framework. Server-side rendering with hydration.

Optimistic Updates

Instant UI feedback for mutations. Rollback on errors automatically with built-in error handling.

Offline Support

Service worker integration for offline content access. Queue mutations and sync when back online.

Live Sync Active
Homepage Hero Updated
Marketing Team • 2s ago
Synced
Author Profile Changed
Sarah Chen • 5s ago
Synced
Blog Post Published
Content Team • 12s ago
Synced

Real-Time Content Synchronization

See changes instantly across all connected clients. Your React app stays in sync with your CMS without page refreshes or polling.

  • WebSocket connections with automatic reconnection
  • Selective field-level updates for minimal re-renders
  • Conflict resolution for concurrent edits
  • Presence indicators showing active editors
Explore Live Sync

Component-Based Content Models

Define your content structure as composable components. Reuse, nest, and extend models just like React components.

Schema TypeScript Query
export const BlogPost = {
  name: 'BlogPost',
  fields: {
    title: { type: 'string', required: true },
    slug: { type: 'slug', from: 'title' },
    author: { type: 'relationship', to: 'Author' },
    content: { type: 'richText' },
    tags: { 
      type: 'array', 
      of: { type: 'string' } 
    },
    meta: { type: 'component', component: 'SEO' }
  }
}

Nested Components

Build complex content structures by nesting components within each other. Hero sections, CTAs, and feature blocks as reusable pieces.

Visual Editor

Non-technical team members can edit content visually while developers maintain control over the underlying structure.

Version Control

Every change is tracked. Roll back to any previous version, compare diffs, and restore with confidence.

Code Generation

Automatically generate TypeScript types, GraphQL schemas, and API clients from your content models.

Works With Your Stack

Drop-in integration with Create React App, Vite, Next.js, and every major React framework.

Create React App

Zero config setup

Vite

Lightning fast HMR

Next.js

SSR & SSG support

Remix

Full-stack integration

Gatsby

Static site generation

React Native

Mobile apps

Code Examples

From basic fetching to advanced patterns — see how simple it is to integrate HiSite.ai into your React apps.

Basic Content Fetching
import { useContent } from '@hisite/react-sdk';

function Homepage() {
  const { data, loading, error } = 
    useContent('homepage');

  if (loading) return <Loading />;
  if (error) return <Error message={error.message} />;

  return (
    <main>
      <h1>{data.hero.title}</h1>
      <p>{data.hero.subtitle}</p>
    </main>
  );
}
Real-time Subscription
import { useLiveQuery } from '@hisite/react-sdk';

function LiveBlog({ postId }) {
  // Auto-updates when content changes
  const { data } = useLiveQuery({
    collection: 'posts',
    id: postId
  });

  return (
    <article>
      <h1>{data?.title}</h1>
      <time>{data?.updatedAt}</time>
      <div>{data?.content}</div>
    </article>
  );
}
Query Collections
import { useCollection } from '@hisite/react-sdk';

function BlogList() {
  const { docs } = useCollection({
    collection: 'posts',
    where: { status: 'published' },
    sort: '-publishedAt',
    limit: 10
  });

  return (
    <ul>
      {docs.map(post => (
        <li key={post.id}>
          <a href={post.slug}>{post.title}</a>
        </li>
      ))}
    </ul>
  );
}
Mutations & Updates
import { useMutation } from '@hisite/react-sdk';

function LikeButton({ postId, initialLikes }) {
  const { mutate, isPending } = useMutation({
    collection: 'posts',
    id: postId
  });

  const handleLike = () => {
    mutate({ 
      likes: (prev) => prev + 1 
    });
  };

  return (
    <button onClick={handleLike} disabled={isPending}>
      ❤️ {isPending ? 'Saving...' : 'Like'}
    </button>
  );
}

Developer Resources

Everything you need to build with HiSite.ai — from quick starts to deep dives.

Documentation

Comprehensive guides, API references, and configuration options for every use case.

Read Docs

GitHub Repo

Open source SDK, example projects, and community contributions. Star us on GitHub.

View on GitHub

Starter Templates

Pre-configured templates for Next.js, Vite, and more. Deploy in minutes.

Browse Templates

Discord Community

Join 2,000+ developers. Get help, share projects, and connect with the team.

Join Discord

Ready to Build?

Start building with the React CMS that developers love. Free tier includes unlimited API requests.

No credit card required. Need enterprise features? Contact us.