# No 3rd-party dependencies

The framework itself doesn't have any 3rd-party dependencies. Our [plugins](https://www.deep-web-solutions.com/plugins/) do -- but we don't force you to use the same libraries we do.

For example, we are strong advocates for [Dependency Injection](https://framework.deep-web-solutions.com/key-concepts-and-dev-tools/dependency-injection-php-di) and we really like [PHP-DI](https://php-di.org/), but you are free to build your plugins using either no dependency injection at all or using a different container. Whenever the framework references dependency injection, it simply assumes that it's been passed on a [PSR-11](https://www.php-fig.org/psr/psr-11/)-compatible container (which should be most, if not all, popular containers) **and it always provides a fallback** in case no container is used at all.

That being said, the framework does have internal dependencies. It is possible to build a plugin using only the [Bootstrapper Module](https://packagist.org/packages/deep-web-solutions/wp-framework-bootstrapper). If you need the [Helpers Module](https://packagist.org/packages/deep-web-solutions/wp-framework-helpers), it will auto-install the Bootstrapper Module as well when using [Composer](https://framework.deep-web-solutions.com/key-concepts-and-dev-tools/dependency-management-composer) since that is listed as a dependency. Similarly, the [Foundations Module](https://packagist.org/packages/deep-web-solutions/wp-framework-foundations) depends on both the Bootstrapper and the Helpers modules, and so on.

There is an exception though. The [Settings Module](https://packagist.org/packages/deep-web-solutions/wp-framework-settings) does **NOT** depend on the [Core Module](https://packagist.org/packages/deep-web-solutions/wp-framework-core) as it is technically an extension to the [Utilities Module](https://packagist.org/packages/deep-web-solutions/wp-framework-utilities). As the [WooCommerce Module](https://packagist.org/packages/deep-web-solutions/wp-framework-woocommerce) depends on the Settings one, it doesn't require the Core module either.
