strapi

    strapi/strapi

    #124 this week

    ๐Ÿš€ Strapi is the leading open-source headless CMS. Itโ€™s 100% JavaScript/TypeScript, fully customizable, and developer-first.

    api
    analytics
    database
    low-code
    backend
    cms
    cms-framework
    content-management
    content-management-system
    customizable
    TypeScript
    NOASSERTION
    72.6K stars
    9.8K forks
    72.6K GitHub watchers
    Updated 6/30/2026
    View on GitHub

    Backblaze Generative Media Hackathon

    Build the next generation of AI media apps with Genblaze, stored on Backblaze B2. $10,000 in prizes.

    Enter the hackathon

    Loading star history...

    Use Cases & Benefits

    • Provides an open-source headless CMS built with JavaScript and TypeScript for flexible content management and API creation.
    • Offers full customization and multi-database support with a modern admin panel, enabling developers to tailor APIs and content workflows easily.
    • Use for building scalable, self-hosted or cloud-based content management backends with REST or GraphQL APIs.
    • Use for creating multilingual websites or applications using the built-in internationalization plugin to manage localized content.
    • Use for managing media assets and user roles securely with customizable permissions and a powerful content types builder.

    About strapi

    Strapi logo Strapi logo

    Open-source headless CMS, self-hosted or Cloud youโ€™re in control.

    The leading open-source headless CMS, 100% JavaScript/TypeScript, flexible and fully customizable.

    Cloud ยท Try live demo


    NPM Version Tests Strapi on Discord Strapi Nightly Release Build Status


    Administration panel


    Strapi Community Edition is a free and open-source headless CMS enabling you to manage any content, anywhere.

    • Self-hosted or Cloud: You can host and scale Strapi projects the way you want. You can save time by deploying to Strapi Cloud or deploy to the hosting platform you want**: AWS, Azure, Google Cloud, DigitalOcean.
    • Modern Admin Panel: Elegant, entirely customizable and a fully extensible admin panel.
    • Multi-database support: You can choose the database you prefer: PostgreSQL, MySQL, MariaDB, and SQLite.
    • Customizable: You can quickly build your logic by fully customizing APIs, routes, or plugins to fit your needs perfectly.
    • Blazing Fast and Robust: Built on top of Node.js and TypeScript, Strapi delivers reliable and solid performance.
    • Front-end Agnostic: Use any front-end framework (React, Next.js, Vue, Angular, etc.), mobile apps or even IoT.
    • Secure by default: Reusable policies, CORS, CSP, P3P, Xframe, XSS, and more.
    • Powerful CLI: Scaffold projects and APIs on the fly.

    Getting Started

    Read the Getting Started tutorial or follow the steps below:

    โณ Installation

    Install Strapi with this Quickstart command to create a Strapi project instantly:

    yarn create strapi
    

    or

    • (Using npx to install the Strapi project.)
    npx create-strapi@latest
    

    This command generates a brand new project with the default features (authentication, permissions, content management, content type builder & file upload).

    Enjoy ๐ŸŽ‰

    ๐Ÿ– Requirements

    Complete installation requirements can be found in the documentation under Installation Requirements.

    Supported operating systems:

    OSRecommendedMinimum
    Ubuntu24.04LTS
    Debian11LTS
    RHEL9LTS
    macOS1412
    Windows Desktop1110
    Windows ServerNo SupportNo Support
    DockerN/AN/A

    (Please note that Strapi may work on other operating systems, but these are not tested nor officially supported at this time.)

    Node:

    Strapi only supports maintenance and LTS versions of Node.js. Please refer to the Node.js release schedule for more information. NPM versions installed by default with Node.js are supported. Generally it's recommended to use yarn over npm where possible.

    Strapi VersionRecommendedMinimum
    5.0.0 and up20.x18.x
    4.14.5 and up20.x18.x
    4.11.0 and up18.x16.x
    4.3.9 to 4.10.x18.x14.x
    4.0.x to 4.3.816.x14.x

    Database:

    DatabaseRecommendedMinimum
    MySQL8.08.0
    MariaDB11.210.3
    PostgreSQL16.014.0
    SQLite33

    We recommend always using the latest version of Strapi stable to start your new projects.

    Features

    • Content Types Builder: Build the most flexible publishing experience for your content managers, by giving them the freedom to create any page on the go with fields, components and Dynamic Zones.
    • Media Library: Upload your images, videos, audio or documents to the media library. Easily find the right asset, edit and reuse it.
    • Internationalization: The Internationalization (i18n) plugin allows Strapi users to create, manage and distribute localized content in different languages, called "locales"
    • Role Based Access Control: Create an unlimited number of custom roles and permissions for admin and end users.
    • GraphQL or REST: Consume the API using REST or GraphQL

    You can unlock additional features such as SSO, Audit Logs, Review Workflows in Strapi Cloud or Strapi Enterprise.

    See more on our website.

    Contributing

    Please read our Contributing Guide before submitting a Pull Request to the project.

    Community support

    For general help using Strapi, please refer to the official Strapi documentation. For additional help, you can use one of these channels to ask a question:

    Migration

    Follow our migration guides on the documentation to keep your projects up-to-date.

    Roadmap

    Check out our roadmap to get informed of the latest features released and the upcoming ones. You may also give us insights and vote for a specific feature.

    Documentation

    See our dedicated repository for the Strapi documentation, or view our documentation live:

    Try live demo

    See for yourself what's under the hood by getting access to a hosted Strapi project with sample data.

    License

    See the LICENSE file for licensing information.

    Discover Repositories

    Search across tracked repositories by name or description