Skip to content

Kévin Dunglas

Founder of Les-Tilleuls.coop (worker-owned cooperative). Creator of API Platform, FrankenPHP, Mercure.rocks, Vulcain.rocks and of some Symfony components.

Menu
  • Talks
  • Resume
  • Sponsor me
  • Contact
Menu

Introducing Publish It Yourself: a self-managed libre CMS

Posted on September 27, 2009September 28, 2009 by Kévin Dunglas
Publish It Yourself
===================
_Publish It Yourself_ is a self-managed CMS.
It is designed to create autonomous communities where users can directly create and manage content.
It is a mix between blogs and blogs platforms, digg-likes and open publishing websites such as (the Indymedia network)[http://www.indymedia.org].
It allows to publish and promote rich text articles and news. It includes many features: tagging with (triple tags)[http://en.wikipedia.org/wiki/Triple_tag#Triple_tags] support, comments, spam protection, themes, interface translation, registration system, peronnal users pages, Atom feeds, microformats,  and more!
Every pages are optimized for search engines, including expressives URLs and uniques titles.
It is wrote in PHP using the (symfony framework)[http://www.symfony-project.org]. It is modular and object oriented.
The Javascript part of the code uses (jQuery)[http://www.jquery.com], the built-in theme is (x)HTML 5 compliant.
This software is still in an early stage of developpement.
_Publish It Yourself_ is a free software covered by the (GNU Affero General Public License version 3)[http://www.fsf.org/licensing/licenses/agpl-3.0.html]. See the “LICENSE.txt“ file for futher informations.
For installation instructions, see the “INSTALL.markdown“ file.

Publish It Yourself is a self-managed CMS. It is designed to create autonomous communities where users can directly create and manage content.

It is a mix between blogs and blogs platforms, digg-likes and open publishing websites such as the Indymedia network.

It allows to publish and promote rich text articles and news. It includes many features: tagging with triple tags support, comments, spam protection, themes, interface translation, registration system, peronnal users pages, Atom feeds, microformats,  and more! Every pages are optimized for search engines, including expressives URLs and uniques titles.

It is written in PHP using the symfony framework. It is modular and object oriented. The Javascript part of the code uses jQuery, the built-in theme is (x)HTML 5 compliant.

This software is still in an early stage of development and probably has many bugs, please report them! It is a free software covered by the GNU Affero General Public License version 3.

You can try it online (database cleared periodically) or download it on GitHub. Contributions are welcome (see the TODO file inside the project root directory) and can be submitted directly on GitHub.

Related posts:

  1. Introducing PropertyInfo: a PHP component to find types and doc of properties
  2. Introducing API Platform (beta): the next generation PHP web framework
  3. Introducing Symfony Panther: a Browser Testing and Web Scraping Library for PHP
  4. Generate a Symfony password hash from the command line

9 thoughts on “Introducing Publish It Yourself: a self-managed libre CMS”

  1. Éric Rogé says:
    September 28, 2009 at 6:32 am

    Allez, un peu d'entraide entre nazes en anglais: "It is wrote" => "it's written"

    Sinon le projet n'est pas inintéressant, mais il est encore très minimaliste…

    Reply
  2. Kévin Dunglas says:
    September 28, 2009 at 7:47 am

    Merci pour la correction !
    Effectivement c'est assez light pour l'instant. L'idée de base était aussi d'avoir un nombre de fonctionnalités réduites pour valoriser le contenu lui même et de proposer des extensions via le système de tags (information de géolocalisation, de date dans un agenda, …).
    Je compte mettre l'accent sur ça par la suite, c'est à dire fournir des élèments d'interface pour faciliter la mise en place de ces tags (un widget Google Maps qui permet de géotagger, un widget avec un calendrier pour dater, …).

    Reply
  3. zikzak says:
    September 28, 2009 at 11:45 am

    Bonjour,

    Faut-il une base SQL ou un flatfile est possible ?

    Reply
    1. Kévin Dunglas says:
      September 28, 2009 at 1:15 pm

      Pour l'instant je n'ai fait les tests qu'avec MySQL. Mais le projet utilisant Propel, n'importe quel SGBD disposant d'un pilote PDO (typiquement : SQLite) devrait devrait faire l'affaire.

      Reply
  4. zikzak says:
    September 28, 2009 at 2:56 pm

    Je pensais à Gladius en fait:
    http://en.wikipedia.org/wiki/Gladius_DB

    Pour un site faiblement fréquenté une base MySQL est un peu trop lourd à administrer.

    Reply
  5. Clochix says:
    September 28, 2009 at 4:48 pm

    @zikzak : SQLite est la solution dans ce cas. Symfony étant agnostique vis à vis de la base de données employée, ça devrait fonctionner.

    Reply
  6. Madou says:
    September 29, 2009 at 12:43 pm

    Bonjour, et pour le css et les images si t'as besoins d'un coup de mains. Je vais l'installer demain soir et voir si je peux contribuer aussi. L'idée est trop belle.

    Reply
  7. jaycreation says:
    June 30, 2010 at 5:52 am

    Interessant. Mais il manque encore un CMS efficace pour les sites plus complexes.
    J'ai beau testé, rien ne fonctionne correctement.
    Si l'un de vous arrive à faire fonctionner correctement Sympal ou autre, qu'est ce que vous conseillez ?

    Reply
  8. ryan says:
    November 30, -0001 at 12:00 am

    hi there.. i've got some interest in this code base (for indymedia, actually). but.. it looks like the domain name expired + github tells me that you're more interested in elgg lately. you could ping me via e-mail (in my intensedebate profile description)? and, i'm going to look at the code more closely. thanks.. -ryan

    Reply

Leave a ReplyCancel reply

Social

  • Bluesky
  • GitHub
  • LinkedIn
  • Mastodon
  • X
  • YouTube

Links

  • API Platform
  • FrankenPHP
  • Les-Tilleuls.coop
  • Mercure.rocks
  • Vulcain.rocks

Subscribe to this blog

Top Posts & Pages

  • JSON Columns and Doctrine DBAL 3 Upgrade
  • Securely Access Private Git Repositories and Composer Packages in Docker Builds
  • Preventing CORS Preflight Requests Using Content Negotiation
  • FrankenPHP: The Modern Php App Server, written in Go
  • Symfony's New Native Docker Support (Symfony World)
  • Develop Faster With FrankenPHP
  • How to debug Xdebug... or any other weird bug in PHP
  • HTTP compression in PHP (new Symfony AssetMapper feature)
  • PHP and Symfony Apps As Standalone Binaries
  • Generate a Symfony password hash from the command line

Tags

Apache API API Platform Buzz Caddy Docker Doctrine FrankenPHP Go Google GraphQL HTTP/2 Hydra hypermedia Hébergement Javascript JSON-LD Kubernetes La Coopérative des Tilleuls Les-Tilleuls.coop Lille Linux Mac Mercure Mercure.rocks Messagerie Instantanée MySQL performance PHP Punk Rock Python React REST Rock'n'Roll Schema.org Security SEO SEO Symfony Symfony Live Sécurité Ubuntu Web 2.0 webperf XML

Archives

Categories

  • DevOps (84)
    • Ubuntu (68)
  • Go (17)
  • JavaScript (46)
  • Mercure (7)
  • Opinions (91)
  • PHP (170)
    • API Platform (77)
    • FrankenPHP (9)
    • Laravel (1)
    • Symfony (97)
    • Wordpress (6)
  • Python (14)
  • Security (15)
  • SEO (25)
  • Talks (46)
© 2025 Kévin Dunglas | Powered by Minimalist Blog WordPress Theme
Menu
  • Talks
  • Resume
  • Sponsor me
  • Contact