PHPackages                             webship/vdo - 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. [Admin Panels](/categories/admin)
4. /
5. webship/vdo

ActiveDrupal-profile[Admin Panels](/categories/admin)

webship/vdo
===========

The Visual Distribution Operator (VDO) Helps Drupal developers manage base code development work cycle for custom recipes/distributions/profiles.

11.0.x-dev(9mo ago)35201GPL-2.0-or-laterPHP

Since May 6Pushed 9mo ago3 watchersCompare

[ Source](https://github.com/webship/vdo)[ Packagist](https://packagist.org/packages/webship/vdo)[ RSS](/packages/webship-vdo/feed)WikiDiscussions 11.0.x Synced 4w ago

READMEChangelog (2)Dependencies (5)Versions (8)Used By (1)

VDO
===

[](#vdo)

The Visual Distribution Operator (VDO) management system helps developers manage the base code development work cycle for custom distributions and starter kit templates. Constructing your Linux development computer or servers.

[![VDO](https://raw.githubusercontent.com/webship/vdo/9.0.x/images/logo.svg)](https://www.drupal.org/project/vdo)

### Please backup your /var/www/html and your mysql databases;

[](#please-backup-your-varwwwhtml-and-your-mysql-databases)

### Try VDO with new systems only.

[](#try-vdo-with-new-systems-only)

### Constructing your Linux development computer or servers with:

[](#constructing-your-linux-development-computer-or-servers-with)

[![VDO index view](https://camo.githubusercontent.com/fa00824ae625c3d91f4f1fc1fe25d9ac0271b8f0da14b903254c06b0c11571ce/68747470733a2f2f7777772e64727570616c2e6f72672f66696c65732f6973737565732f323032302d31312d32322f56444f2d696e6465782d766965775f302e706e67)](https://camo.githubusercontent.com/fa00824ae625c3d91f4f1fc1fe25d9ac0271b8f0da14b903254c06b0c11571ce/68747470733a2f2f7777772e64727570616c2e6f72672f66696c65732f6973737565732f323032302d31312d32322f56444f2d696e6465782d766965775f302e706e67)

### Products:

[](#products)

Where custom distributions/profiles base code are maintained.

```
    /var/www/html/products

```

### DEV:

[](#dev)

Where development, enhancements, and optimization work rounds on the distribution/profile.

```
    /var/www/html/dev

```

[![VDO DEV view](https://camo.githubusercontent.com/707fc8868da5c86b79bfc46e9b1f429412c903abc840833c1d6da6c3b78d476d/68747470733a2f2f7777772e64727570616c2e6f72672f66696c65732f6973737565732f323032302d31312d32322f56444f2d446576656c6f706d656e742d696e6465782d766965775f302e706e67)](https://camo.githubusercontent.com/707fc8868da5c86b79bfc46e9b1f429412c903abc840833c1d6da6c3b78d476d/68747470733a2f2f7777772e64727570616c2e6f72672f66696c65732f6973737565732f323032302d31312d32322f56444f2d446576656c6f706d656e742d696e6465782d766965775f302e706e67)

### TEST:

[](#test)

Where testing and functional automated testing on the distribution/profile.

```
    /var/www/html/test

```

[![VDO Test view](https://camo.githubusercontent.com/e3fe7e096e7f666d90371241c9f5931b8f4776951076f5ffb767d267073a4e8d/68747470733a2f2f7777772e64727570616c2e6f72672f66696c65732f6973737565732f323032302d31312d32322f56444f2d546573742d696e6465782d766965772e706e67)](https://camo.githubusercontent.com/e3fe7e096e7f666d90371241c9f5931b8f4776951076f5ffb767d267073a4e8d/68747470733a2f2f7777772e64727570616c2e6f72672f66696c65732f6973737565732f323032302d31312d32322f56444f2d546573742d696e6465782d766965772e706e67)

### Demos:

[](#demos)

Where all demos templates, and default content work on the distribution/profile.

```
    /var/www/html/demos

```

[![VDO Demos view](https://camo.githubusercontent.com/e11c7f6ad73b06a934765722a711fc5b1f48c61f47cec6c12a7bacb6ffebd933/68747470733a2f2f7777772e64727570616c2e6f72672f66696c65732f6973737565732f323032302d31312d32322f56444f2d44656d6f732d696e6465782d766965775f302e706e67)](https://camo.githubusercontent.com/e11c7f6ad73b06a934765722a711fc5b1f48c61f47cec6c12a7bacb6ffebd933/68747470733a2f2f7777772e64727570616c2e6f72672f66696c65732f6973737565732f323032302d31312d32322f56444f2d44656d6f732d696e6465782d766965775f302e706e67)

### Sandboxes:

[](#sandboxes)

Where all sandbox templates, and private custom content work on the distribution/profile.

```
    /var/www/html/sandboxes

```

[![VDO index view](https://camo.githubusercontent.com/856f53bf9796c848525ad09d904af21634a49dba3308e245aa13583df0245904/68747470733a2f2f7777772e64727570616c2e6f72672f66696c65732f6973737565732f323032302d31312d32322f56444f2d53616e64626f7865732d696e6465782d766965775f302e706e67)](https://camo.githubusercontent.com/856f53bf9796c848525ad09d904af21634a49dba3308e245aa13583df0245904/68747470733a2f2f7777772e64727570616c2e6f72672f66696c65732f6973737565732f323032302d31312d32322f56444f2d53616e64626f7865732d696e6465782d766965775f302e706e67)

### Projects:

[](#projects)

Where development on a project based on the distribution/profile product.

```
    /var/www/html/projects

```

### Profiles:

[](#profiles)

Where other contrib or private installation profiles are kept.

```
    /var/www/html/profiles

```

### Themes:

[](#themes)

Where other contrib or private themes are kept.

```
    /var/www/html/themes

```

### Modules:

[](#modules)

Where other contrib or private modules are kept.

```
    /var/www/html/modules

```

### VDO Configs and Scripts:

[](#vdo-configs-and-scripts)

Where the general VDO configs and script libraries are kept.

```
    /var/www/html/vdo/web

```

### VDO Website:

[](#vdo-website)

Where the general VDO config and script libraries are kept. Which a domain could points at it, like vdo.local or vdo.devhub.company-name.com

```
    /var/www/html/vdo/web

```

After Installing Ubuntu 24.04 for example you could run the following bash command to setup LAMP on Ubuntu 24.04 If you get the VDO bash files from

```
git clone 10.0.x git@github.com:webship/vdo-project.git /var/www/html
cd /var/ww/html/
sudo rm -rf .git

```

Then you could edit the VDO config file to work for your system:

```
vim /var/www/html/vdo/config/vdo.settings.yml

```

you will see something like:

```
vdo:
  root: /var/www/html
  path: /var/www/html/vdo
  scripts: /var/www/html/vdo/scripts
  config: /var/www/html/vdo/config
  host: localhost
  web: http://localhost/vdo
  backups: /var/www/html/backups
database:
  username: DATABASE_USERNAME
  password: DATABASE_PASSWORD
  host: DATABASE_HOST
  port: 3306
  namespace: Drupal\\Core\\Database\\Driver\\mysql
  driver: mysql
  collation: utf8mb4_general_ci
account:
  name: DRUPAL_WEBMASTER_NAME
  pass: DRUPAL_WEBMASTER_PASSWORD
  mail: DRUPAL_WEBMASTER_EMIL
config_sync_directory: ../config/sync
workspaces:
  - products
  - dev
  - test
  - demos
  - sandboxes
  - profiles
  - modules
  - themes
  - libraries
  - forked

```

After you have made your changes you could install the global variables.

```
cd  /var/www/html/vdo/scripts/install
bash install.sh

```

Close all terminal windows And open a new one Test that we are ready by

```
echo ${vdo_config}
/var/www/html/vdo/config

```

If "/var/www/html/vdo/config" was printed,which mean we are ready for the next step.

Only for Ubuntu 24.04 you could run the following command to setup your LAMP. ( You man install LAMP in your own. or copy the bash file change it to work for your system.)

```
cd /var/www/html/vdo/scripts/install/
bash setup-LAMP-ubuntu21-04--php7-04--MySQL8.sh

```

After that, you can do a composer install

```
cd /var/www/html/
composer install

```

Or you could build by composer create project command Create a VDO Project 10.0.x with Composer To install the most recent stable release of VDO 10.0.x run this command:

```
composer create-project webship/vdo-project /var/www/html --no-dev --no-interaction

```

To install the dev version of VDO 10.0.x run this command:

```
composer create-project webship/vdo-project:10.0.x-dev /var/www/html --stability dev --no-interaction

```

Status message After that delete the composer.josn and composer.lock file from your /var/www/html folder

```
cd /var/www/html/
rm composer.json composer.lock

```

To test that the VDO settings are working If you go to DEV you can find many bash files that could help you in your development of the profile.

```
cd /var/www/html/dev/
bash cmd-vdo-drupal10-recommended-project.sh drupal10c1 --install

```

### Varbase disto for example:

[](#varbase-disto-for-example)

```
cd /var/www/html/dev/
bash cmd-vdo-varbase10-project.sh varbase10c1 --install --add-users

```

### Create custom VDO bash:

[](#create-custom-vdo-bash)

Having a new dev or test bash files to add more work or commands in them. Add the heading in a new file then use any of the ready variables by the VDO bootstrap settings or the workspace settings or values.

### Example:

[](#example)

```
cd /var/www/html/dev/
vim cmd-vdo-example.sh

```

Then in the file, you could add the following:

```
#!/bin/usr/env bash

# Bootstrap VDO.
. ${vdo_scripts}/bootstrap.sh ;

# Load workspace settings and extra lists.
eval $(parse_yaml ${vdo_config}/workspace.dev.settings.yml);

echo "*---------------------------------------------------------------------------------------*";
echo "|  Build Drupal Project  and add 100 modules in one command";
echo "*---------------------------------------------------------------------------------------*";

```

Have your own YML files. Read them in bash files as arrays of variables.And use them in custom bash file in the way you like:

```
eval $(parse_yaml ${path_to_the_yml_file}/name-of-file.yml);

```

Have a look at the number of bash files like the themes, profiles. or test in Learn by example. For sure have your naming or coding style or any language in the bash files, like python, C, PHP, or normal Bash.

###  Health Score

35

—

LowBetter than 77% of packages

Maintenance56

Moderate activity, may be stable

Popularity16

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity47

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 98.7% 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 ~312 days

Recently: every ~438 days

Total

7

Last Release

290d ago

Major Versions

9.0.x-dev → 10.0.x-dev2024-12-29

10.0.x-dev → 11.0.x-dev2025-09-13

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/1641992?v=4)[Rajab Natshah](/maintainers/Natshah)[@Natshah](https://github.com/Natshah)

---

Top Contributors

[![Natshah](https://avatars.githubusercontent.com/u/1641992?v=4)](https://github.com/Natshah "Natshah (154 commits)")[![ShaimaaNatshah](https://avatars.githubusercontent.com/u/77439067?v=4)](https://github.com/ShaimaaNatshah "ShaimaaNatshah (2 commits)")

---

Tags

distributiondrupal

### Embed Badge

![Health badge](/badges/webship-vdo/health.svg)

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

###  Alternatives

[goalgorilla/open_social

Open Social is a distribution for building social communities and intranets.

190461.9k](/packages/goalgorilla-open-social)[helsingborg-stad/municipio

A bootstrap theme for creating municipality sites.

4028.3k10](/packages/helsingborg-stad-municipio)[fourkitchens/sous-drupal-project

Starter project for Sous a Drupal distribution featuring a theme based on Emulsify Design System.

141.1k](/packages/fourkitchens-sous-drupal-project)

PHPackages © 2026

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