# Polylith

## Polylith

- [Polylith](https://polylith.gitbook.io/polylith/master.md): Polylith is a software architecture that applies functional thinking at the system scale. It helps us build simple, maintainable, testable, and scalable systems.
- [Sharing code](https://polylith.gitbook.io/polylith/introduction/sharing-code.md)
- [Testing incrementally](https://polylith.gitbook.io/polylith/introduction/testing-incrementally.md)
- [Polylith in a Nutshell](https://polylith.gitbook.io/polylith/introduction/polylith-in-a-nutshell.md): Polylith is a software architecture that simplifies our backend services and tools by enabling us to construct them as “modular monoliths” using composable building blocks.
- [Workspace](https://polylith.gitbook.io/polylith/architecture/2.1.-workspace.md): A workspace is a single place for all of your organizations code and projects.
- [Component](https://polylith.gitbook.io/polylith/architecture/2.3.-component.md): Components are the main building blocks in Polylith.
- [Base](https://polylith.gitbook.io/polylith/architecture/2.2.-base.md): Bases are the building blocks that exposes a public API to the outside world.
- [Project](https://polylith.gitbook.io/polylith/architecture/2.6.-project.md): Projects configure Polylith's deployable artifacts.
- [Development project](https://polylith.gitbook.io/polylith/architecture/2.4.-development.md): The development project is what we open in our editor/IDE and where we work with our entire codebase.
- [Bring it all together](https://polylith.gitbook.io/polylith/architecture/bring-it-all-together.md)
- [Simplicity](https://polylith.gitbook.io/polylith/architecture/simplicity.md): How Polylith helps us fight complexity.
- [Overview](https://polylith.gitbook.io/polylith/tool/the-polylith-plugin.md): The Polylith Tool optimizes the creation, development and testing of Polylith workspaces.
- [Current architectures](https://polylith.gitbook.io/polylith/conclusion/current-arcitectures.md)
- [Advantages of Polylith](https://polylith.gitbook.io/polylith/conclusion/advantages-of-polylith.md): What makes Polylith so simple, fast and fun to work with?
- [Transitioning to Polylith](https://polylith.gitbook.io/polylith/conclusion/should-you-convert-your-system.md): How much will Polylith affect our current codebases and deployment experience?
- [Why the name "Polylith"?](https://polylith.gitbook.io/polylith/conclusion/the-name.md): The name combines the concept of 'many' with the concept of 'stones'.
- [Videos](https://polylith.gitbook.io/polylith/conclusion/videos.md): Screencasts and conference talks to explain Polylith.
- [FAQ](https://polylith.gitbook.io/polylith/conclusion/faq.md): Frequently asked questions.
- [Who made this?](https://polylith.gitbook.io/polylith/conclusion/who-made-polylith.md): The team who created Polylith, and how you can get in touch with us.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information, you can query the documentation dynamically by asking a question.
Perform an HTTP GET request on a page URL with the `ask` query parameter:
```
GET https://polylith.gitbook.io/polylith/master.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.
