> For the complete documentation index, see [llms.txt](https://silius.gitbook.io/silius/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://silius.gitbook.io/silius/overview/project-structure.md).

# Project structure

The project is a standard Rust workspace with multiple crates - each responsible for specific functionalities. Each crate can also be imported into any other project, bootstrapping building account abstraction projects in Rust.

At the moment, the following crates are available:

* [**primitives**](/silius/crates/primitives.md) - types, constants, and other basic primitives&#x20;
* [**contracts**](/silius/crates/contracts.md) - interface for entry point smart contract and debug tracing utilities
* [**uopool**](/silius/crates/uopool.md) - implementation of user operation mempool, validation logic (canonical and alt mempools), reputation
* [**bundler**](/silius/crates/bundler.md) - implementation of the bundling functionalities (bundle builder)
* [**rpc**](/silius/crates/rpc.md) - implementation of JSON-RPC interfaces, HTTP and WS
* [**grpc**](/silius/crates/grpc.md) - crate that implements logic for running components (uopool and bundler) as gRPC services

<figure><img src="/files/J9UhXIfdJaABrQwPPBCd" alt="" width="375"><figcaption></figcaption></figure>
