# Primary goals

The development of our framework started in April 2020 (read more about [its history](https://docs.deep-web-solutions.com/knowledge-base/short-history-of-our-framework/)) and had primarily 3 goals:

1. [Central yet modular design](/primary-goals/modular-design.md) -- the whole point of the framework is to have one central codebase for abstractions and functionalities that are reusable across multiple plugins; however, different plugins have different overlapping needs and we didn't want to force you to load code that will be unused.
2. [Modern development standards](/key-concepts-and-dev-tools.md) -- this framework was meant to fully embrace all the best practices of modern web development; the key concepts and dev tools section provides an introduction into each of them.
3. [Dependencies-free](/primary-goals/no-3rd-party-dependencies.md) -- the framework should enable anyone to build WordPress plugins using modern tools, but it shouldn't force you to use any 3rd-party libraries you don't want to in production; wherever possible, the framework doesn't assume anything more than whatever [the PSR standards](https://www.php-fig.org/psr/) foresee.

Obviously, programming is a very opinionated field. We might believe that we've achieved these goals, but you might disagree completely. And that's fine!&#x20;

If you like our framework and want to use it yourself, [you may do so](https://packagist.org/packages/deep-web-solutions/) (keeping in mind the GPLv3+ license). If you don't like it, that's awesome too -- but we would really appreciate any feedback you may have just in case there's something that didn't cross our minds yet.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://framework.deep-web-solutions.com/primary-goals.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
