webasyst / framework
Webasyst PHP framework: a multi-app MVC platform for building web apps and SaaS services.
Requires
- php: >=8.2.35
- ext-ctype: *
- ext-dom: *
- ext-json: *
- ext-mbstring: *
- ext-simplexml: *
Requires (Dev)
None
Suggests
- ext-curl: Required for updates from Webasyst update servers
- ext-mysqli: Required to connect to the MySQL database
Provides
None
Conflicts
None
Replaces
None
This package is auto-updated.
Last update: 2026-11-04 18:17:45 UTC
README
Webasyst is a PHP framework for creating web-based apps.
- Homepage: https://www.webasyst.com/
- Documentation: https://developers.webasyst.com/docs/
- Repository: https://github.com/webasyst/webasyst-framework
Webasyst is released under the LGPL license. Copyright 2011-2026 Webasyst LLC.
System requirements
-
Web server
- e.g., Apache, nginx, or IIS
-
PHP 8.2+
-
PHP extensions
- mbstring
- iconv
- cURL
- GD or Imagick
- Zlib
-
MySQL 5.7+
Installation
Create a database and select an installation method.
Method 1: Using an auto-download script (recommended)
-
Download the https://www.webasyst.com/webasyst.php file to a website directory and open it in a browser.
-
Wait until the installation files are downloaded and follow the web installer.
Method 2: From an archive (classic)
-
Download the installation archive from https://www.webasyst.com/download/framework/ and unpack it into a site directory on the web server.
-
Open install.php in a browser and follow the web installer.
Method 3: From GitHub
- Clone the repo, rename example config files, and set permissions:
cd <directory>
git clone git@github.com:webasyst/webasyst-framework.git
cd wa-config
cp apps.php.example apps.php
cp config.php.example config.php
cp db.php.example db.php
cp locale.php.example locale.php
cp SystemConfig.class.php.example SystemConfig.class.php
cd ..
chmod 0775 <directory>
- Open install.php in a browser and follow the web installer.
Method 4: Via Composer
- Run the following command:
composer create-project webasyst/framework <directory>
- After the files are downloaded, the console installer starts automatically. It asks for the MySQL credentials, the site domain and, optionally, the first user’s data, and completes the installation without the use of a browser.
How to rerun the installer (non-interactively: for CI/provisioning)
php <directory>/wa-installer/cli.php
php <directory>/wa-installer/cli.php --help
Fully automated example:
php wa-installer/cli.php -n \
--db-user=root --db-password=secret --db-name=webasyst \
--domain=example.com \
--login=admin --email=admin@example.com --password=secret
If --login, --email and --password are not provided, the first user
is created later when the backend URL is opened in a browser.
Console installer options
Run php wa-installer/cli.php --help for the full list:
-n, --non-interactive do not request anything; required options must
be passed via flags
-f, --force allow installation into a non-empty database
--locale=LOCALE en_US (default) or ru_RU
--db-host, --db-port, --db-user, --db-password, --db-name
--domain=DOMAIN site domain for correct routing and backend URL
--account-name=NAME account (company) name
--apps=LIST apps to be enabled upon installation (default:
site,installer,team)
--mod-rewrite=1|0 URL rewriting availability (not detectable from
console)
--login, --email, --password, --firstname, --lastname
first user’s data; omit to enter them later via
a browser