Remix Knowledge Base

screenshot of Remix Knowledge Base

Remix Knowledge Base

Knowledge Base starter kit with WYSIWYG, Markdown, GPT, and Multi-language support. Built with Remix, Tailwind CSS and Prisma.


SaasRock KB is the Knowledge Base feature of SaasRock, inspired by Intercom and Crisp help centers. It allows users to create multiple knowledge bases in multiple languages. It offers features such as a WYSIWYG editor, markdown editor, simple analytics, image storage with Supabase, SEO optimization, article duplication, article drafts, import-export functionality, and community support. SaasRock KB is licensed under the MIT License and offers sponsorship options for its development.


  • WYSIWYG editor: Tiptap editor with AI-powered suggestions from
  • Markdown editor: Monaco editor with markdown support.
  • Multi-knowlege-base support: Create multiple knowledge bases for different purposes.
  • Multi-language support: Add categories and articles in multiple languages.
  • Simple Analytics: Track views, upvotes, and downvotes of articles.
  • Image storage with Supabase: Upload article images to Supabase Storage.
  • SEO: Add SEO title, description, and image to articles.
  • Article Duplication: Duplicate articles to avoid starting from scratch.
  • Article Drafts: Save articles as drafts and publish them when ready.
  • Import and Export: Import and export knowledge bases to avoid data loss.


To get started with SaasRock KB, follow these steps:

  1. Install dependencies.
  2. Initialize the database.
  3. Start the development server.

The code snippets for these steps can be found in the documentation.


SaasRock KB is a powerful Knowledge Base feature offered by SaasRock. It provides users with a range of features like WYSIWYG and markdown editors, multi-language support, simple analytics, image storage, SEO optimization, article duplication, and import-export functionality. This allows users to create and manage comprehensive knowledge bases for their SaaS products. SaasRock KB is open-source and licensed under the MIT License, with options for becoming a sponsor to support its development.


React is a widely used JavaScript library for building user interfaces and single-page applications. It follows a component-based architecture and uses a virtual DOM to efficiently update and render UI components


Remix is a modern JavaScript framework that focuses on building fast and performant web applications. It emphasizes a combination of server-rendered content and client-side interactivity, offering a robust architecture for creating scalable and maintainable projects.


Tailwind CSS is a utility-first CSS framework that provides pre-defined classes for building responsive and customizable user interfaces.

Headless UI

Headless UI is a set of completely unstyled, fully accessible UI components for React, Vue, and Alpine.js that empower developers to build their own fully accessible custom UI components. Headless UI allows developers to focus on building accessible and highly functional user interfaces, without the need to worry about styling or layout.


Prisma is a server-side library that helps developers read and write data to the database in an intuitive, efficient and safe way.

Fullstack Boilerplates

A fullstack boilerplate provides a starter application that includes both frontend and backend. It should include database, auth, payments, user roles and other backend services to build a fully featured saas or webapps.


ESLint is a linter for JavaScript that analyzes code to detect and report on potential problems and errors, as well as enforce consistent code style and best practices, helping developers to write cleaner, more maintainable code.

Framer Motion

Alpine.js is a lightweight JavaScript framework that simplifies the process of creating dynamic, reactive user interfaces on the web. It uses a declarative syntax that offers a higher level of abstraction compared to vanilla JavaScript, while being more performant and easier to use than jQuery.


TypeScript is a superset of JavaScript, providing optional static typing, classes, interfaces, and other features that help developers write more maintainable and scalable code. TypeScript's static typing system can catch errors at compile-time, making it easier to build and maintain large applications.