PHPackages                             jkribeiro/drupal-composer-paranoia-acquia - 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. [Security](/categories/security)
4. /
5. jkribeiro/drupal-composer-paranoia-acquia

ActiveComposer-plugin[Security](/categories/security)

jkribeiro/drupal-composer-paranoia-acquia
=========================================

Composer plugin to improve the security of composer-based Drupal projects by moving all PHP files out of docroot for Acquia Environments.

1.x-dev(5y ago)52.0M↑81.6%1GPL-2.0+PHPPHP &gt;=5.4.5

Since Apr 18Pushed 5y agoCompare

[ Source](https://github.com/jkribeiro/drupal-composer-paranoia-acquia)[ Packagist](https://packagist.org/packages/jkribeiro/drupal-composer-paranoia-acquia)[ RSS](/packages/jkribeiro-drupal-composer-paranoia-acquia/feed)WikiDiscussions 1.x Synced 4d ago

READMEChangelogDependencies (3)Versions (5)Used By (0)

Drupal Composer paranoia mode for Acquia Cloud environments
===========================================================

[](#drupal-composer-paranoia-mode-for-acquia-cloud-environments)

Composer plugin for improving the website security for composer-based Drupal projects by moving all PHP files out of docroot, for Acquia environments.

This plugin has the dependency of the [drupal-paranoia](https://github.com/drupal-composer/drupal-paranoia) plugin, performing additional installation steps to run the paranoia mode on Acquia Cloud environments.

Would like to know more about it?

-
- [Moving all PHP files out of the docroot](https://www.drupal.org/node/2767907)
- [\#1672986: Option to have all php files outside of web root](https://www.drupal.org/node/1672986)
- [Remote Code Execution - SA-CONTRIB-2016-039](https://www.drupal.org/node/2765575)
-

Configuration
-------------

[](#configuration)

Make sure you have a [drupal-composer/drupal-project](https://github.com/drupal-composer/drupal-project)-based project created.

Rename your Acquia repo docroot directory to `app`.

```
mv docroot app

```

Update the `composer.json` of your root package with the following changes:

```
"extra": {
    "installer-paths": {
        "app/core": ["type:drupal-core"],
        "app/libraries/{$name}": ["type:drupal-library"],
        "app/modules/contrib/{$name}": ["type:drupal-module"],
        "app/profiles/contrib/{$name}": ["type:drupal-profile"],
        "app/themes/contrib/{$name}": ["type:drupal-theme"],
        "drush/contrib/{$name}": ["type:drupal-drush"]
    },
    "drupal-paranoia": {
        "app-dir": "app",
        "web-dir": "docroot"
    }
    "..."
}
```

Use `composer require ...` to install this Plugin on your project.

```
composer require jkribeiro/drupal-composer-paranoia-acquia:~1

```

Run the following commands to make sure that the new folders are installed:

```
composer drupal:paranoia
composer drupal:paranoia-acquia

```

Done! Plugin and new docroot are now installed.

Folder structure
----------------

[](#folder-structure)

Your project now is basically structured on two folders.

- **app**: Contains the files and folders of the full Drupal installation.
- **docroot**: Contains only the **symlinks of the assets files** and the **PHP stub files** from the `app` folder.

Every time that you install or update a Drupal package via Composer, the `docroot` folder is automatically recreated.

If necessary, you can rebuild it manually, running the command

```
composer drupal:paranoia

```

This could be necessary when updating themes images, CSS and JS files.

Last step is to commit and push the changes to Acquia Cloud git repository.

###  Health Score

34

—

LowBetter than 75% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity45

Moderate usage in the ecosystem

Community9

Small or concentrated contributor base

Maturity47

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 92.9% 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 ~241 days

Total

5

Last Release

2034d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/1932061?v=4)[Jean Ribeiro](/maintainers/jkribeiro)[@jkribeiro](https://github.com/jkribeiro)

---

Top Contributors

[![jkribeiro](https://avatars.githubusercontent.com/u/1932061?v=4)](https://github.com/jkribeiro "jkribeiro (13 commits)")[![suzymasri](https://avatars.githubusercontent.com/u/12935384?v=4)](https://github.com/suzymasri "suzymasri (1 commits)")

---

Tags

composerdrupaldrupal-8security

### Embed Badge

![Health badge](/badges/jkribeiro-drupal-composer-paranoia-acquia/health.svg)

```
[![Health](https://phpackages.com/badges/jkribeiro-drupal-composer-paranoia-acquia/health.svg)](https://phpackages.com/packages/jkribeiro-drupal-composer-paranoia-acquia)
```

###  Alternatives

[phpro/grumphp

A composer plugin that enables source code quality checks.

4.3k16.7M1.0k](/packages/phpro-grumphp)[symfony/runtime

Enables decoupling PHP applications from global state

74798.8M1.0k](/packages/symfony-runtime)[drupal/core-composer-scaffold

A flexible Composer project scaffold builder.

5445.2M565](/packages/drupal-core-composer-scaffold)[drupal/core-vendor-hardening

Hardens the vendor directory for when it's in the docroot.

174.9M48](/packages/drupal-core-vendor-hardening)[drupal/core-project-message

Adds a message after Composer installation.

2124.7M203](/packages/drupal-core-project-message)[drupal-composer/drupal-paranoia

Composer Plugin for improving the security of composer-based Drupal projects by moving all PHP files out of docroot.

662.2M3](/packages/drupal-composer-drupal-paranoia)

PHPackages © 2026

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