Popularity
7.7
Stable
Activity
0.0
Stable
3,846
160
615

Code Quality Rank: L5
Programming language: PHP
License: MIT License
Tags: Markdown     CMS     Php     Website     Twig     Flat-file     content management     Simple     Yaml     Picocms     Pico     Pico-cms     Markdown-to-html    
Latest version: v3.0.0-alpha.1

Pico alternatives and similar software solutions

Based on the "Content Management Systems (CMS)" category.
Alternatively, view Pico alternatives based on common mentions on social networks and blogs.

  • Strapi

    πŸš€ Strapi is the leading open-source headless CMS. It’s 100% JavaScript/TypeScript, fully customizable, and developer-first.
  • Directus

    The flexible backend for all your projects 🐰 Turn your DB into a headless CMS, admin panels, or apps with a custom UI, instant APIs, auth & more.
  • Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
    Promo coderabbit.ai
    CodeRabbit Logo
  • WooCommerce

    A customizable, open-source ecommerce platform built on WordPress. Build any commerce solution you can imagine.
  • Magento

    9.6 10.0 L3 Pico VS Magento
    Prior to making any Submission(s), you must sign an Adobe Contributor License Agreement, available here at: https://opensource.adobe.com/cla.html. All Submissions you make to Adobe Inc. and its affiliates, assigns and subsidiaries (collectively β€œAdobe”) are subject to the terms of the Adobe Contributor License Agreement.
  • Saleor

    9.6 9.8 L5 Pico VS Saleor
    Saleor Core: the high performance, composable, headless commerce API.
  • Spree Commerce

    A headless open source e-commerce platform for global brands
  • Bagisto

    Free and open source laravel eCommerce platform
  • PrestaShop

    PrestaShop is the universal open-source software platform to build your e-commerce solution.
  • OpenCart

    A free shopping cart system. OpenCart is an open source PHP-based online e-commerce solution.
  • Grav

    9.2 7.8 L3 Pico VS Grav
    Modern, Crazy Fast, Ridiculously Easy and Amazingly Powerful Flat-File CMS powered by PHP, Markdown, Twig, and Symfony
  • Reaction Commerce

    Mailchimp Open Commerce is an API-first, headless commerce platform built using Node.js, React, GraphQL. Deployed via Docker and Kubernetes.
  • django CMS

    The easy-to-use and developer-friendly enterprise CMS powered by Django
  • october

    Self-hosted CMS platform based on the Laravel PHP Framework.
  • Sylius

    8.8 10.0 L4 Pico VS Sylius
    Open Source eCommerce Framework on Symfony
  • Joomla!

    Home of the Joomla! Content Management System
  • KeystoneJS

    The superpowered headless CMS for Node.js β€” built with GraphQL and React
  • Umbraco

    Umbraco is a free and open source .NET content management system helping you deliver delightful digital experiences.
  • Drupal

    8.4 9.8 L3 Pico VS Drupal
    Verbatim mirror of the git.drupal.org repository for Drupal core. Please see the https://github.com/drupal/drupal#contributing. PRs are not accepted on GitHub.
  • Publify

    A self hosted Web publishing platform on Rails.
  • Open Source POS

    Open Source Point of Sale is a web based point of sale application written in PHP using CodeIgniter framework. It uses MySQL as the data back end and has a Bootstrap 3 based user interface.
  • Mealie

    Mealie is a self hosted recipe manager and meal planner with a RestAPI backend and a reactive frontend application built in Vue for a pleasant user experience for the whole family. Easily add recipes into your database by providing the url and mealie will automatically import the relevant data or add a family recipe with the UI editor
  • Pagekit

    DISCONTINUED. Pagekit CMS
  • Solidus

    πŸ›’ Solidus, the open-source eCommerce framework for industry trailblazers.
  • Cockpit

    Add content management functionality to any site - plug & play / headless / api-first CMS
  • Attendize

    Attendize is an open-source ticket selling and event management platform built on Laravel.
  • Pimcore

    Core Framework for the Open Source Data & Experience Management Platform (PIM, MDM, CDP, DAM, DXP/CMS & Digital Commerce)
  • Recipes

    Application for managing recipes, planning meals, building shopping lists and much much more!
  • Refinery CMS

    An extendable Ruby on Rails CMS that supports Rails 6.0+
  • Bolt

    7.8 3.1 L3 Pico VS Bolt
    Bolt is a simple CMS written in PHP. It is based on Silex and Symfony components, uses Twig and either SQLite, MySQL or PostgreSQL.
  • Apostrophe 2

    A full-featured, open-source content management framework built with Node.js that empowers organizations by combining in-context editing and headless architecture in a full-stack JS environment.
  • Sharetribe

    Sharetribe Go is Sharetribe's old source-available marketplace software, which was also available as a hosted SaaS product. Sharetribe Go is no longer actively maintained.
  • Orchard

    Orchard is a free, open source, community-focused Content Management System built on the ASP.NET MVC platform.
  • Microweber

    Drag and Drop Website Builder and CMS with E-commerce
  • WriteFreely

    A clean, Markdown-based publishing platform made for writers. Write together and build a community.
  • Shoop

    7.4 0.0 L4 Pico VS Shoop
    E-Commerce Platform
  • Squidex

    Headless CMS and Content Managment Hub
  • Open Food Network

    Connect suppliers, distributors and consumers to trade local produce.
  • Gazelle

    Gazelle is a web framework geared towards private BitTorrent trackers. Although naturally focusing on music, it can be modified for most needs.
  • MODX

    6.4 8.9 L3 Pico VS MODX
    MODX Revolution - Content Management Framework
  • TYPO3

    6.4 9.9 L2 Pico VS TYPO3
    The TYPO3 Core - Enterprise Content Management System. Synchronized mirror of https://review.typo3.org/q/project:Packages/TYPO3.CMS
  • PencilBlue

    Business class content management for Node.js (plugins, server cluster management, data-driven pages)
  • OpenBazaar

    DISCONTINUED. OpenBazaar 2.0 Server Daemon in Go
  • Concrete 5 CMS

    Official repository for Concrete CMS development
  • Backdrop CMS

    Backdrop is a full-featured content management system that allows non-technical users to manage a wide variety of content. It can be used to create all kinds of websites including blogs, image galleries, social networks, intranets, and more.
  • Camaleon CMS

    Camaleon CMS is a dynamic and advanced content management system based on Ruby on Rails
  • Kirby

    5.6 9.9 L4 Pico VS Kirby
    Kirby's core application folder
  • Osclass

    With Osclass, get your own classifieds site for free. Build your own Osclass installation and start advertising real estate, jobs or whatever you want- in minutes!
  • eLabFTW

    :notebook: eLabFTW is the most popular open source electronic lab notebook for research labs.
  • Thelia

    5.5 8.0 L4 Pico VS Thelia
    Thelia is an open source tool for creating e-business websites and managing online content. Repo containing the new major version (v2)

Do you think we are missing an alternative of Pico or a related project?

Add another 'Content Management Systems (CMS)' Software solution

README

Pico

License Version Build Status Libera.Chat Open Bounties on Bountysource

Pico is a stupidly simple, blazing fast, flat file CMS.

Visit us at http://picocms.org/ and see http://picocms.org/about/ for more info.


PHP 8.0+ Users

Seeing an Unparenthesized a ? b : c ? d : e is not supported. error?

Pico currently has issues with PHP versions newer than 8.0. This is due to Pico's dependencies, and not Pico itself. There's currently an "alpha" build of Pico you can download as a Pre-Bundled Release that solves this issue.

This "alpha" is perfectly safe to use in production, as the only changes are updated dependencies and version number strings. If you're curious, you can confirm this by comparing the changes between branches.

More work was intended to be done on this branch, hence the "3.0" label, but it hasn't happened yet. There's an on-going discussion about getting just these updated dependencies merged in as an official update (either Pico 2.2 or 3.0) as soon as possible.

Sorry for the inconvenience, and thanks to all Pico users for your patience on the matter. ❀️


Screenshot

Pico Screenshot

Install

Installing Pico is dead simple - and done in seconds! If you have access to a shell on your server (i.e. SSH access), we recommend using Composer. If not, use a pre-bundled release. If you don't know what "SSH access" is, head over to the pre-bundled release. πŸ˜‡

Pico requires PHP 5.3.6+ and the PHP extensions dom and mbstring to be enabled.

I want to use Composer

Starting with Pico 2.0 we recommend installing Pico using Composer whenever possible. Trust us, you won't regret it when it comes to upgrading Pico! Anyway, if you don't want to use Composer, or if you simply can't use Composer because you don't have access to a shell on your server, don't despair, installing Pico using a pre-bundled release is still easier than everything you know!

Step 1

Open a shell and navigate to the httpdocs directory (e.g. /var/www/html) of your server. Download Composer and run it with the create-project option to install it to the desired directory (e.g. /var/www/html/pico):

$ curl -sSL https://getcomposer.org/installer | php
$ php composer.phar create-project picocms/pico-composer pico
Step 2

What second step? There's no second step. That's it! Open your favorite web browser and navigate to your brand new, stupidly simple, blazing fast, flat file CMS! Pico's sample contents will explain how to create your own contents. 😊

I want to use a pre-bundled release

Do you know the feeling: You want to install a new website, so you upload all files of your favorite CMS and run the setup script - just to find out that you forgot about creating the SQL database first? Later the setup script tells you that the file permissions are wrong. Heck, what does this even mean? Forget about it, Pico is different!

Step 1

Download the latest Pico release and upload all files to the desired install directory of Pico within the httpdocs directory (e.g. /var/www/html/pico) of your server.

Step 2

Okay, here's the catch: There's no catch. That's it! Open your favorite web browser and navigate to your brand new, stupidly simple, blazing fast, flat file CMS! Pico's sample contents will explain how to create your own contents. 😊

I want to manage my website using a Git repository

Git is a very powerful distributed version-control system - and it can be used to establish a nice workflow around your Pico website. Using a Git repository for your website aids content creation and deployment, including collaborative editing and version control. If you want to manage your website in a Git repository, you use a Composer-based installation.

  1. Fork Pico's Composer starter project using GitHub's fork button. If you don't want to use GitHub you aren't required to, you can choose whatever Git server you want. Forking manually just requires some extra steps: First clone the Git repository locally, add your Git server as a remote and push the repository to this new remote.

  2. Clone your fork locally and add your contents and assets. You can edit Pico's composer.json to include 3rd-party plugins and themes, or simply add your own plugins and themes to Pico's plugins resp. themes directories. Don't forget to commit your changes and push them to your Git server.

  3. Open a shell on your webserver and navigate to the httpdocs directory (e.g. /var/www/html). Download Composer, clone your Git repository to the desired directory (e.g. /var/www/html/pico) and install Pico's dependencies using Composer's install option:

    $ curl -sSL https://getcomposer.org/installer | php
    $ git clone https://github.com/<YOUR_USERNAME>/<YOUR_REPOSITORY> pico
    $ php composer.phar --working-dir=pico install
    
  4. If you update your website's contents, simply commit your changes and push them to your Git server. Open a shell on your webserver and navigate to Pico's install directory within the httpdocs directory (e.g. /var/www/html/pico) of your server. Pull all changes from your Git server and update Pico's dependencies using Composer's update option:

    $ git pull
    $ php composer.phar update
    

I'm a developer

So, you're one of these amazing people making all of this possible? We love you folks! As a developer we recommend you to clone Pico's Git repository as well as the Git repositories of Pico's default theme and the PicoDeprecated plugin. You can set up your workspace using Pico's Composer starter project and include all of Pico's components using local packages.

Using Pico's Git repositories is different from using one of the installation methods elucidated above. It gives you the current development version of Pico, what is likely unstable and not ready for production use!

  1. Open a shell and navigate to the desired directory of Pico's development workspace within the httpdocs directory (e.g. /var/www/html/pico) of your server. Download and extract Pico's Composer starter project into the workspace directory:

    $ curl -sSL https://github.com/picocms/pico-composer/archive/master.tar.gz | tar xz
    $ mv pico-composer-master workspace
    
  2. Clone the Git repositories of all Pico components (Pico's core, Pico's default theme and the PicoDeprecated plugin) into the components directory:

    $ mkdir components
    $ git clone https://github.com/picocms/Pico.git components/pico
    $ git clone https://github.com/picocms/pico-theme.git components/pico-theme
    $ git clone https://github.com/picocms/pico-deprecated.git components/pico-deprecated
    
  3. Instruct Composer to use the local Git repositories as replacement for the picocms/pico (Pico's core), picocms/pico-theme (Pico's default theme) and picocms/pico-deprecated (the PicoDeprecated plugin) packages. Update the composer.json of your development workspace (i.e. workspace/composer.json) accordingly:

    {
        "repositories": [
            {
                "type": "path",
                "url": "../components/pico",
                "options": { "symlink": true }
            },
            {
                "type": "path",
                "url": "../components/pico-theme",
                "options": { "symlink": true }
            },
            {
                "type": "path",
                "url": "../components/pico-deprecated",
                "options": { "symlink": true }
            }
        ],
        "require": {
            "picocms/pico": "dev-master",
            "picocms/pico-theme": "dev-master",
            "picocms/pico-deprecated": "dev-master",
            "picocms/composer-installer": "^1.0"
        }
    }
    
  4. Download Composer and run it with the install option:

    $ curl -sSL https://getcomposer.org/installer | php
    $ php composer.phar --working-dir=workspace install
    

You can now open your web browser and navigate to Pico's development workspace. All changes you make to Pico's components will automatically be reflected in the development workspace.

By the way, you can also find all of Pico's components on Packagist.org: Pico's core, Pico's default theme, the PicoDeprecated plugin and Pico's Composer starter project.

Upgrade

Do you remember when you installed Pico? It was ingeniously simple, wasn't it? Upgrading Pico is no difference! The upgrade process differs depending on whether you used Composer or a pre-bundled release to install Pico. Please note that you should always create a backup of your Pico installation before upgrading!

Pico follows Semantic Versioning 2.0 and uses version numbers like MAJOR.MINOR.PATCH. When we update the PATCH version (e.g. 2.0.0 to 2.0.1), we made backwards-compatible bug fixes. If we change the MINOR version (e.g. 2.0 to 2.1), we added functionality in a backwards-compatible manner. Upgrading Pico is dead simple in both cases. Simply head over to the appropiate Upgrade sections below.

But wait, we forgot to mention what happens when we update the MAJOR version (e.g. 2.0 to 3.0). In this case we made incompatible API changes. We will then provide a appropriate upgrade tutorial, so please head over to the "Upgrade" page on our website.

I've used Composer to install Pico

Upgrading Pico is dead simple if you've used Composer to install Pico. Simply open a shell and navigate to Pico's install directory within the httpdocs directory (e.g. /var/www/html/pico) of your server. You can now upgrade Pico using just a single command:

$ php composer.phar update

That's it! Composer will automatically update Pico and all plugins and themes you've installed using Composer. Please make sure to manually update all plugins and themes you've installed manually.

I've used a pre-bundled release to install Pico

Okay, installing Pico was easy, but upgrading Pico is going to be hard, isn't it? I'm afraid I have to disappoint you. It's just as simple as installing Pico!

First you'll have to delete the vendor directory of your Pico installation (e.g. if you've installed Pico to /var/www/html/pico, delete /var/www/html/pico/vendor). Then download the latest Pico release and upload all files to your existing Pico installation directory. You will be prompted whether you want to overwrite files like index.php, .htaccess, ... - simply hit "Yes".

That's it! Now that Pico is up-to-date, you need to update all plugins and themes you've installed.

I'm a developer

As a developer you should know how to stay up-to-date... πŸ˜‰ For the sake of completeness, if you want to upgrade Pico, simply open a shell and navigate to Pico's development workspace (e.g. /var/www/html/pico). Then pull the latest commits from the Git repositories of Pico's core, Pico's default theme and the PicoDeprecated plugin. Let Composer update your dependencies and you're ready to go.

$ git -C components/pico pull
$ git -C components/pico-theme pull
$ git -C components/pico-deprecated pull
$ php composer.phar --working-dir=workspace update

Getting Help

Getting Help as a user

If you want to get started using Pico, please refer to our user docs. Please read the upgrade notes if you want to upgrade from Pico 1.0 to Pico 2.0. You can find officially supported plugins and themes on our website. A greater choice of third-party plugins and themes can be found in our Wiki on the plugins or themes pages respectively. If you want to create your own plugin or theme, please refer to the "Getting Help as a developer" section below.

Getting Help as a developer

If you're a developer, please refer to the "Contributing" section below and our contribution guidelines. To get you started with creating a plugin or theme, please read the developer docs on our website.

You still need help or experience a problem with Pico?

When the docs can't answer your question, you can get help by joining us on #picocms on Libera.Chat (logs). When you're experiencing problems with Pico, please don't hesitate to create a new Issue on GitHub. Concerning problems with plugins or themes, please refer to the website of the developer of this plugin or theme.

Before creating a new Issue, please make sure the problem wasn't reported yet using GitHubs search engine. Please describe your issue as clear as possible and always include the Pico version you're using. Provided that you're using plugins, include a list of them too. We need information about the actual and expected behavior, the steps to reproduce the problem, and what steps you have taken to resolve the problem by yourself (i.e. your own troubleshooting).

Contributing

You want to contribute to Pico? We really appreciate that! You can help make Pico better by contributing code or reporting issues, but please take note of our contribution guidelines. In general you can contribute in three different areas:

  1. Plugins & Themes: You're a plugin developer or theme designer? We love you folks! You can find tons of information about how to develop plugins and themes at http://picocms.org/development/. If you have created a plugin or theme, please add it to our Wiki, either on the plugins or themes page. You may also Submit it to our website, where it'll be displayed on the official plugin or theme pages!

  2. Documentation: We always appreciate people improving our documentation. You can either improve the inline user docs or the more extensive user docs on our website. You can also improve the docs for plugin and theme developers. Simply fork our website's Git repository from https://github.com/picocms/picocms.github.io, change the Markdown files and open a pull request.

  3. Pico's Core: The supreme discipline is to work on Pico's Core. Your contribution should help every Pico user to have a better experience with Pico. If this is the case, fork Pico from https://github.com/picocms/Pico and open a pull request. We look forward to your contribution!

By contributing to Pico, you accept and agree to the Developer Certificate of Origin for your present and future contributions submitted to Pico. Please refer to the "Developer Certificate of Origin" section in our CONTRIBUTING.md.

You don't have time to contribute code to Pico, but still want to "stand a coffee" for the ones who do? You can contribute monetary to Pico using Bountysource, a crowd funding website that focuses on individual issues and feature requests. Just refer to the "Bounties and Fundraisers" section below for more info.

Bounties and Fundraisers

Pico uses Bountysource to allow monetary contributions to the project. Bountysource is a crowd funding website that focuses on individual issues and feature requests in Open Source projects using micropayment. Users, or "Backers", can pledge money for fixing a specific issue, implementing new features, or developing a new plugin or theme. Open source software developers, or "Bounty Hunters", can then pick up and solve these tasks to earn the money.

Obviously this won't allow a developer to replace a full time job, it's rather aiming to "stand a coffee". However, it helps bringing users and developers closer together, and shows developers what users want and how much they care about certain things. Nevertheless you can still donate money to the project itself, as an easy way to say "Thank You" and to support Pico.

If you want to encourage developers to fix a specific issue or implement a feature, simply pledge a new bounty or back an existing one.

As a developer you can pick up a bounty by simply contributing to Pico (please refer to the "Contributing" section above). You don't have to be a official Pico Contributor! Pico is a Open Source project, anyone can open pull requests and claim bounties.

Official Pico Contributors won't claim bounties on their own behalf, Pico will never take any money out of Bountysource. All money collected by Pico is used to pledge new bounties or to support projects Pico depends on.


*Note that all licence references and agreements mentioned in the Pico README section above are relevant to that project's source code only.