PicoCMS for Nextcloud & Nginx

Pico is a stupidly simple, blazing fast, flat file CMS. That’s definitely a mouthful, what does it even mean? In the most basic sense, it means that there is no administration backend or database to deal with. You simply create markdown files in the content folder and those files become your pages. There’s much more to Pico than that though.

With PicoCMS you can create and manage websites with an address like: https://cloud.example.com/sites/my_site/ You can edit the website as easy text (Markdown style) files in Nextcloud.

You can make the pages visible for everyone or only for users or groups on your Nextcloud. You can also share the files that the website consists of so you can collaborate with others maintaining the site.

1. Download PicoCMS from the Nextcloud app store


2. Extract and upload PicoCMS to server

Extract and upload the cms_pico folder to your nextcloud apps directory (e.g. /var/www/cloud.yoursite.com/html/apps/ – or – /var/www/html/yoursite.com/nextcloud/apps/ – etc)

3. Enable the PicoCMS app in Nextcloud

Inside the administrator apps section of Nextcloud, Enable the PicoCMS app.

4. Update Nginx configuration

Below is the code to add to your nextcloud nginx config, replacing https://sub.domain.tld/ with your own domain:

location /sites/ {
        rewrite /sites/(.*) /apps/cms_pico/pico/$1 break;
        proxy_redirect off;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Host $host;
        proxy_set_header X-Forwarded-Server $host;
        proxy_pass https://sub.domain.tld/;

5. Restart Nginx:

$ sudo service nginx restart

6. Adding new sites

Go to the Nextcloud settings -> Pico CMS section of Nextcloud to add sites.




Pico Plugins

Pico Themes

Markdown Sytax

Markdown Extra

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.