thelia/thelia-project

Thelia is an ecommerce CMS.

Installs: 8 362

Dependents: 0

Suggesters: 0

Security: 0

Stars: 63

Watchers: 11

Forks: 19

Open Issues: 3

pkg:composer/thelia/thelia-project

2.6.0 2025-11-17 15:23 UTC

README

This is the project creation repository of Thelia. If you want to contribute, please take a look at thelia/thelia

Thelia

Actions Status: test License Scrutinizer Quality Score

Thelia is an open source tool for creating e-business websites and managing online content. This software is published under LGPL.

This is the new major version of Thelia.

You can download this version and have a try or take a look at the source code (or anything you wish, respecting LGPL). See http://thelia.net/ web site for more information.

A repository containing all thelia modules is available at this address : https://github.com/thelia-modules

Compatibility

Thelia 2.3 Thelia 2.4 Thelia 2.5 Thelia 2.6
PHP 5.5 5.6 7.0 7.1 7.0 7.1 7.2 7.3 8.2 8.3 8.2 8.3
MySQL 5.5 5.6 5.5 5.6 5.7 5.6 5.7 8.0 5.6 5.7 8.0
Symfony 2.8 2.8 6.4 6.4

Requirements

  • PHP
    • Required extensions :
      • PDO_Mysql
      • openssl
      • intl
      • gd
      • curl
      • dom
    • safe_mode off
    • memory_limit at least 128M, preferably 256.
    • post_max_size 20M
    • upload_max_filesize 2M
    • date.timezone must be defined
  • Web Server Apache 2 or Nginx
  • MySQL 5 or 8

Create a Thelia project

$ curl -sS https://getcomposer.org/installer | php
$ php composer.phar create-project thelia/thelia-project path/ 2.6.0 (or 2.5.5)

Install it with your own environment

You can install Thelia using the cli tool and the scripts provided by thelia/setup

$ php Thelia thelia:install

Consult the page : http://localhost/thelia/web

You can create a virtual host and choose web folder for root directory.

Quick start with DDEV

To quickly set up your local environment, we recommend using DDEV. On macOS, we also suggest using OrbStack instead of the classic Docker Desktop for noticeably better performance.

Initialize your project with a single command:

ddev config --project-type=php --docroot=web --php-version=8.3

DDEV will automatically generate everything required (vhosts, database, etc.).

You can then manage your environment with the following commands:

# Start the project
ddev start

# Stop it
ddev stop

# Display environment details
ddev describe

# Open a shell inside the container
ddev ssh

Then, just run previous Thelia commands to install your project.

Documentation

Thelia documentation is available at https://doc.thelia.net

Contribute

See the documentation : http://doc.thelia.net/en/documentation/contribute.html

Mac OSX

If you use Mac OSX, it still doesn't use php 5.4 as default php version... There are many solutions for you :

  • use phpbrew
  • use last MAMP version and put the php bin directory in your path:
export PATH=/Applications/MAMP/bin/php/php5.5.x/bin/:$PATH

MySQL 5.6

As of MySQL 5.6, default configuration sets the sql_mode value to

STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION

This 'STRICT_TRANS_TABLES' configuration results in SQL errors when no default value is defined on NOT NULL columns and the value is empty or invalid.

You can edit this default config in /etc/my.cnf and change the sql_mode to remove the STRICT_TRANS_TABLES part

[mysqld]
sql_mode=NO_ENGINE_SUBSTITUTION

Assuming your sql_mode is the default one, you can change the value directly on the run by running the following SQL Command

SET @@GLOBAL.sql_mode='NO_ENGINE_SUBSTITUTION', @@SESSION.sql_mode='NO_ENGINE_SUBSTITUTION'

For more information on sql_mode you can consult the MySQL doc

Archive builders

Thelia's archive builder's needs external libraries. For zip archives, you need PECL zip. See PHP Doc

For tar archives, you need PECL phar. Moreover, you need to deactivate php.ini option "phar.readonly":

phar.readonly = Off

For tar.bz2 archives, you need tar's dependencies and the extension "bzip2". See PHP Doc

For tar.gz archives, you need tar's dependencies and the extension "zlib". See PHP Doc