Get Started

Simplist is a headless CMS for blogs. The TypeScript SDK provides a typed and fast way to manage articles, analytics and SEO, while the REST API remains available for direct integrations.

  • Install and configure the SDK (and env variables)
  • Understand the main modules: Articles, Project, Analytics, SEO, Multilingual
  • See quick examples of reading content and configuration
  • Access configuration options and response format

  • Articles — Retrieve, filter and search articles
  • Project — Project information and statistics
  • Analytics — Track views and get stats
  • SEO — Generate sitemap, RSS, structured data
  • Multilingual — Manage language variants

1

Install the SDK

Add Simplist to your project with your preferred package manager.

pnpm add @simplist.blog/sdk
2

Get your API key

Create a project and get your API key from your dashboard at simplist.blog.

3

Configure the environment

Add your API key to your .env file. This variable will be automatically used by the SDK.

VariableRequiredDefaultDescription
SIMPLIST_API_KEY
RequiredYour Simplist project API key
4

Initialize the client

Create a new instance of the SimplistClient to start fetching articles.

import { SimplistClient } from "@simplist.blog/sdk"

const client = new SimplistClient({
  apiKey: process.env.SIMPLIST_API_KEY
})

Alternatively, pass the API key directly when creating the client:

client.ts
import { SimplistClient } from "@simplist.blog/sdk"

const client = new SimplistClient({
  apiKey: 'prj_your_api_key'
})

client.ts
import { SimplistClient } from "@simplist.blog/sdk"

const client = new SimplistClient({
  apiKey: process.env.SIMPLIST_API_KEY
})

const response = await client.articles.latest(10)

if (response.success) {
  console.log(response.data)
}

client.ts
const response = await client.articles.get('article-slug')

if (response.success) {
  const article = response.data
  console.log(article.title)
  console.log(article.content)
}

client.ts
const response = await client.articles.published({
  page: 1,
  limit: 20
})

if (response.success) {
  const articles = response.data
  articles.forEach(article => {
    console.log(article.title)
  })
}

client.ts
const client = new SimplistClient({
  apiKey: 'prj_your_api_key',           // Required
  baseUrl: 'https://api.simplist.blog', // Optional, default shown
  path: 'blog',                         // Optional, URL prefix for articles
  timeout: 10000,                       // Optional, request timeout in ms
  retries: 3,                           // Optional, number of retries
  retryDelay: 1000                      // Optional, delay between retries in ms
})

All SDK methods return this format:

{
  success: boolean
  data?: any          // Present if success is true
  error?: {           // Present if success is false
    message: string
    status?: number
  }
  meta?: {            // Present for list endpoints
    page: number
    limit: number
    total: number
    totalPages: number
  }
}

Quick Help

Yes, you need an API key from your Simplist dashboard. Set it as SIMPLIST_API_KEY environment variable or pass it directly when creating the client.
The SDK is designed for server-side use (Next.js Server Components, API routes, Node.js). For client-side tracking, use the Analytics API directly or create a server action wrapper.
The SDK provides a typed TypeScript interface with automatic error handling and retries. The REST API gives you direct HTTP access for any language or platform. Use the SDK for TypeScript/JavaScript projects for better DX.

Command Palette

Search for a command to run...