PHPackages                             getolympus/olympus - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Framework](/categories/framework)
4. /
5. getolympus/olympus

ActiveProject[Framework](/categories/framework)

getolympus/olympus
==================

The Olympus framework, your simple, easy to use and powerfull framework to deploy and work with WordPress. An awesome framework build with ♥ for WordPress developers.

v0.0.38(2y ago)102[1 PRs](https://github.com/GetOlympus/Olympus/pulls)MITPHPPHP &gt;=7

Since Jan 9Pushed 1y ago1 watchersCompare

[ Source](https://github.com/GetOlympus/Olympus)[ Packagist](https://packagist.org/packages/getolympus/olympus)[ Docs](https://github.com/GetOlympus/Olympus)[ RSS](/packages/getolympus-olympus/feed)WikiDiscussions master Synced 2mo ago

READMEChangelog (1)Dependencies (9)Versions (40)Used By (0)

[![](https://github.com/GetOlympus/olympus/raw/master/web/apple-touch-icon.png)](https://github.com/GetOlympus/olympus/blob/master/web/apple-touch-icon.png)

Olympus
=======

[](#olympus)

[![Olympus Component](https://camo.githubusercontent.com/f483886a465a9e44005a352c6c1ba6556689a579ecf0d8b984cf60becaaa878c/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f666f722d4f6c796d7075732d3434636331312e7376673f7374796c653d666c61742d737175617265)](https://github.com/GetOlympus)[![CodeFactor Grade](https://camo.githubusercontent.com/ab0c86b8b096627cb21683125b61817f61229443c5dbb4d3d72857b785f1e37c/68747470733a2f2f7777772e636f6465666163746f722e696f2f7265706f7369746f72792f6769746875622f6765746f6c796d7075732f6f6c796d7075732f62616467653f7374796c653d666c61742d737175617265)](https://www.codefactor.io/repository/github/getolympus/olympus)[![Packagist Version](https://camo.githubusercontent.com/a0f668b22f419e329294371c59f34fc51fd6c7a35f2623e30669a75063ed1a89/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6765746f6c796d7075732f6f6c796d7075732e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/getolympus/olympus)[![PHP Version](https://camo.githubusercontent.com/ab68f150014c709c54827b78827ed4078940790e9b0cdbcffd874e882b97ec85/68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f7068702d762f4765744f6c796d7075732f4f6c796d7075732e7376673f7374796c653d666c61742d737175617265)](https://camo.githubusercontent.com/ab68f150014c709c54827b78827ed4078940790e9b0cdbcffd874e882b97ec85/68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f7068702d762f4765744f6c796d7075732f4f6c796d7075732e7376673f7374796c653d666c61742d737175617265)[![Travis Status](https://camo.githubusercontent.com/a6f079d346f2fc0df2007e389a2a956445ff07b8b22ca57311da1a6294968d87/68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f4765744f6c796d7075732f4f6c796d7075732f6d61737465722e7376673f7374796c653d666c61742d737175617265)](https://travis-ci.org/GetOlympus/Olympus)[![MIT](https://camo.githubusercontent.com/68035de4b7f69ada20e98e34172f47d361b83a017c8045200fc338660c467897/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49545f4c6963656e73652d626c75652e7376673f7374796c653d666c61742d737175617265)](https://github.com/GetOlympus/Olympus/blob/master/LICENSE)

> The **Olympus** package is the **easiest and secure** way to install **WordPress** websites with the powerfull **Zeus Core** framework. All WordPress optimizations are listed and enabled here. You can use theme easily.

```
# Quick install ~ See #install-olympus-in-2-steps section for details
git clone https://github.com/GetOlympus/Olympus.git projectname && cd $_
composer install
```

---

**Table of Contents**

- [What is Olympus?](#what-is-olympus)
- [Features](#features)
- [Get started](#get-started)
    - [Install Olympus in 2 steps](#install-olympus-in-2-steps)
    - [Update Vhost](#update-vhost)
    - [Build database](#build-database)
- [Get started with Capistrano](#get-started-with-capistrano)
    - [Build scripts](#build-scripts)
    - [Update Vhost with Capistrano](#update-vhost-with-capistrano)
    - [Build database with Capistrano](#build-database-with-capistrano)
- [Advanced details](#advanced-details)
    - [Application Structure](#application-structure)
    - [Configuration files](#configuration-files)
    - [Variables definitions](#variables-definitions)
    - [Log levels](#log-levels)
- [Release History](#release-history)
- [Authors and Copyright](#authors-and-copyright)
- [Contributing](#contributing)

---

What is Olympus?
----------------

[](#what-is-olympus)

The **Olympus** package is a set of line codes that provides a secure WordPress application structure with better tools to developers. It is aimed to WordPress developers of any levels.

In order to provide those tools, the **Olympus** package uses dependency manager and remote server automation tool such as **Composer** and **Capistrano**. A bunch of auto-generated files and auto-loaded plugins make your WordPress website more secure and faster.

---

Features
--------

[](#features)

- Better and secure folder structure
- Autoloader for mu-plugins
- Auto-generated configuration files with `composer install`
- Dependency management with [**Composer**](https://getcomposer.org)
- Remote server automation tool with [**Capistrano**](http://capistranorb.com/) and [**Olympus Hestia Capistrano**](https://github.com/GetOlympus/Hestia-Capistrano)

---

Get started
-----------

[](#get-started)

### Install Olympus in 2 steps

[](#install-olympus-in-2-steps)

**1st step**, clone the repository (use SSH key if you want on :GetOlympus/Olympus.git):

```
# Change "projectname" to your root website folder name
git clone https://github.com/GetOlympus/Olympus.git projectname && cd $_
```

**2nd step**, install package vendors via **Composer** and set your parameters when it's asked:
*See [this documentation](https://getcomposer.org/doc/00-intro.md) to know how to install Composer*

```
composer install
```

### Update Vhost

[](#update-vhost)

This is quite simple: make the `web/` folder as your docroot.
The `web/index.php` file will bootstrap WordPress with all your configuration files.
Restart your server and That's all folkes.

### Build database

[](#build-database)

Go to your website homepage URL to launch your WordPress install.

---

Get started with Capistrano
---------------------------

[](#get-started-with-capistrano)

> Capistrano is a remote server automation tool.
> It supports the scripting and execution of arbitrary tasks, and includes a set of sane-default deployment workflows.

You can find all details on [**Capistrano website**](https://capistranorb.com).

### Build scripts

[](#build-scripts)

You'll need to create your deployments scripts for all your environments. These scripts are written in Ruby programming language.
The **Olympus** package provides you 2 examples you can easily copy/paste in the `app/deploy/stages/` folder:

```
# You can find all explanations as comments in the `app/deploy/stages/staging.rb.dist` file.
cp app/deploy/stages/production.rb.dist app/deploy/stages/production.rb
cp app/deploy/stages/staging.rb.dist app/deploy/stages/staging.rb
```

Feel free to read the `README.md` file of the [**Olympus Hestia Capistrano**](https://github.com/GetOlympus/Hestia-Capistrano) repository to know more.

### Update Vhost with Capistrano

[](#update-vhost-with-capistrano)

As seen on the ["Update Vhost"](#update-vhost) section, you'll need to set the `current/web/` folder as your docroot this time.
Restart your server and That's all folkes.

### Build database with Capistrano

[](#build-database-with-capistrano)

Go to your website homepage URL to launch your WordPress website install.

---

Advanced details
----------------

[](#advanced-details)

### Application Structure

[](#application-structure)

The **Olympus** package is structured as this:

```
+-- app/                        # ~ main application folder
|  +-- cache/                   # stores cache files generated by WordPress plugins and Olympus components
|  +-- components/              # stores custom components used to autoload mu-plugins and error logger
   |  +-- Autoloader
   |  +-- Error
   |  +-- Handler
|  +-- config/                  # stores custom configuration files
   |  +-- env.php.dist
   |  +-- opts.php.dist
   |  +-- own.php.dist
   |  +-- salt.php.dist
|  +-- deploy/                  # stores Capistrano workflows deployments
   |  +-- stages/
      |  +-- production.rb.dist
      |  +-- staging.rb.dist
   |  +-- config.rb.dist
|  +-- environments/            # stores WordPress constants definitions
   |  +-- cache.php
   |  +-- configuration.php
   |  +-- cookies.php
   |  +-- database.php
   |  +-- debug.php
   |  +-- multisite.php
   |  +-- website.php
|  +-- logs/                    # stores log file generated by Monolog package
|  +-- app.php
|  +-- autoload.php
|  +-- environment.php
|  +-- error.php
+-- vendor/                     # ~ vendors downloaded with composer
+-- web/                        # ~ web server doc root
|  +-- cms/                     # stores default WordPress installation
|  +-- resources/               # stores assets files expected by Olympus bundles
   |  +-- dist/
|  +-- statics/                 # stores default "wp-content" folder contents
   |  +-- languages/
   |  +-- mu-plugins/
   |  +-- plugins/
   |  +-- themes/
   |  +-- uploads/
   |  +-- advanced-cache.php
|  +-- .htaccess.dist
|  +-- constants.php            # defines default Olympus package constants
|  +-- favicon.ico              # custom favicon.ico made by anischouk.com
|  +-- index.php                # ~ main file, bootstraps WordPress
|  +-- robots.txt.dist
|  +-- wp-config.php
|  +-- xmlrpc.php
+-- .gitattributes
+-- .gitignore
+-- .travis.yml
+-- Capfile
+-- CHANGELOG.md
+-- composer.json
+-- Gemfile
+-- LICENCE
+-- phpcs.xml
+-- README.md
+-- wp-cli.yml
```

### Configuration files

[](#configuration-files)

Go to your `app/config/` folder and make sure to find:

- `env.php`, contains WordPress website environment configuration
- `own.php`, a simple blank PHP file you can fill with your own constants definitions
- `salt.php`, contains WordPress authentication unique keys and salts

An other file you can create if needed is:

- `opts.php`, contains WordPress constants overrides. Simply copy the `opts.php.dist` file to `opts.php` and edit it.
    **Be carefull** with this file: you can change your WordPress core functions
    See [Variables definitions](#variables-definitions) to know more about this `opts.php` file contents.

### Variables definitions

[](#variables-definitions)

**Configuration section**, sets memory limit, some security and features options:

VariableTypeDefault valueDescription`wp_memory_limit`String`'128M'`frontend PHP `memory_limit``wp_max_memory_limit`String`'256M'`backend PHP `memory_limit``autosave_interval`Integer`60`interval in seconds between 2 autosaves`wp_cron_lock_timeout`Integer`60`interval in seconds to unlock cron tasks`media_trash`Boolean`true`enable or not trash in media page`disallow_file_mods`Boolean`false`allow users to update core, themes or plugins`image_edit_overwrite`Boolean`false`allow editing images to replace the originals`enforce_gzip`Boolean`false`enforce GZIP encoding`fs_method`String`false`FS method: `'direct'`, `'ssh2'`, `'ftpext'` or `'ftpsockets'``fs_chmod_dir`Integer`0755`Change mode on directories`fs_chmod_file`Integer`0644`Change mode on files`wp_temp_dir`String`''`Temp directory ~ We recommand to leave this empty**Cookies section**, sets all cookies names.
In these examples, you can replace:

- `olympus` by the result of `md5('olympus')`
- `domaintld` by the result of `md5('https://www.domain.tld/cms/')`

VariableTypeDefault valueDescription`cookiehash`String`'domaintld'`current domain cookie hash`user_cookie`String`'olympusu_domaintld'`user cookie hash`pass_cookie`String`'olympusp_domaintld'`password cookie hash`auth_cookie`String`'olympusa_domaintld'`auth cookie hash`secure_auth_cookie`String`'olympuss_domaintld'`secure auth cookie hash`logged_in_cookie`String`'olympusl_domaintld'`logged in cookie hash`recovery_mode_cookie`String`'olympusr_domaintld'`recovery mode cookie hash`cookiepath`String`'www.domain.tld'`home cookie hash`sitecookiepath`String`'www.domain.tld/cms/'`site cookie hash`admin_cookie_path`String`'www.domain.tld/cms/wp-admin/'`admin panel cookie hash`plugins_cookie_path`String`'www.domain.tld/statics/plugins/'`plugins url cookie hash`cookie_domain`Boolean`false`enable or not cookie domain`test_cookie`String`'olympusis_trying'`testing cookie hash**Debug section**, sets all debug options:

VariableTypeDefault valueDescription`concatenate_scripts`Boolean`false`enable or not scripts concatenation`compress_scripts`Boolean`false`enable or not scripts compression`compress_css`Boolean`false`enable or not stylesheets compressions`wp_sandbox_scraping`Boolean`true`turn off WSOD default protection`error_level`Integer`200`error level, see [Log levels](#log-levels)**Multisite section**, sets default current site definitions in multisite case

VariableTypeDefault valueDescription`subdomain_install`Boolean`true`use or not sub domain display`domain_current_site`String`'www.domain.tld'`url to the current (main) website`path_current_site`String`'/cms/'`path to current (main) website`site_id_current_site`Integer`1`site id of the main website`blog_id_current_site`Integer`1`blog id of the main website**Website section**, sets all statics folder names:

VariableTypeDefault valueDescription`wp_content_dir`String`'/path/to/web_docroot/statics/'`path to your `statics` folder`wp_content_url`String`'https://www.domain.tld/statics/'`url to your `statics` folder`contentdir`String`'../statics'`path from ABSPATH to `statics``wpmu_plugin_dir`String`'/path/to/web_docroot/statics/mu-plugins/'`path to your `mu-plugins` folder`wpmu_plugin_dir`String`'https://www.domain.tld/statics/mu-plugins/'`url to your `mu-plugins` folder`muplugindir`String`'../statics/mu-plugins'`path from ABSPATH to `mu-plugins``wp_plugin_dir`String`'/path/to/web_docroot/statics/plugins/'`path to your `plugins` folder`wp_plugin_url`String`'https://www.domain.tld/statics/plugins/'`url to your `plugins` folder`plugindir`String`'../statics/plugins'`path from ABSPATH to `plugins``wp_theme_dir`String`'/path/to/web_docroot/statics/themes/'`path to your `themes` folder`wp_theme_url`String`'https://www.domain.tld/statics/themes/'`url to your `themes` folder`themedir`String`'../statics/themes'`path from ABSPATH to `themes`### Log levels

[](#log-levels)

- `100` Detailed debug information.
- `200` Interesting events, like User logs in, SQL logs.
- `250` Uncommon events.
- `300` Exceptional occurrences that are not errors, like use of deprecated APIs, poor use of an API, etc.
- `400` Runtime errors.
- `500` Critical conditions.
- `550` Action must be taken immediately.
- `600` Urgent alert.

---

Release History
---------------

[](#release-history)

See [**CHANGELOG.md**](https://github.com/GetOlympus/Olympus/blob/master/CHANGELOG.md) for all details.

---

Contributing
------------

[](#contributing)

1. Fork it ()
2. Create your feature branch (`git checkout -b feature/fooBar`)
3. Commit your changes (`git commit -am 'Add some fooBar'`)
4. Push to the branch (`git push origin feature/fooBar`)
5. Create a new Pull Request

---

**Built with ♥ by [Achraf Chouk](https://github.com/crewstyle "Achraf Chouk") ~ (c) since a long time.**
**Logo design made lovely by [Anis Chouk](https://anischouk.com/ "Anis Chouk")**

###  Health Score

29

—

LowBetter than 60% of packages

Maintenance27

Infrequent updates — may be unmaintained

Popularity3

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity65

Established project with proven stability

 Bus Factor1

Top contributor holds 96.5% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~83 days

Recently: every ~91 days

Total

36

Last Release

860d ago

PHP version history (2 changes)v0.0.1PHP &gt;=5.4

v0.0.19PHP &gt;=7

### Community

Maintainers

![](https://www.gravatar.com/avatar/c255b14ebf8b792ba8b0c9940bd13e899281fc1431f1088af9074acdaa191cef?d=identicon)[crewstyle](/maintainers/crewstyle)

---

Top Contributors

[![crewstyle](https://avatars.githubusercontent.com/u/1572149?v=4)](https://github.com/crewstyle "crewstyle (167 commits)")[![dependabot-preview[bot]](https://avatars.githubusercontent.com/in/2141?v=4)](https://github.com/dependabot-preview[bot] "dependabot-preview[bot] (4 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (2 commits)")

---

Tags

capistranocomposercontainerdionysoshadesherahermeshestiaolympusphpwordpresswordpress-pluginwordpress-themewordpress-websitezeusphpcomposerframeworkwordpresscapistranoolympus

###  Code Quality

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/getolympus-olympus/health.svg)

```
[![Health](https://phpackages.com/badges/getolympus-olympus/health.svg)](https://phpackages.com/packages/getolympus-olympus)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
