# Dymension RDK

RollApps se compone de dos servicios principales, cliente y servidor. El servidor es el lado de la aplicación designado para que el implementador de RollApp implemente una lógica empresarial personalizada junto con los módulos preempaquetados. El componente del cliente, denominado  [dymint](https://docs.dymension.xyz/learn/rollapps/in-depth/dymension-rdk/dymint) , es un reemplazo directo de Tendermint y es responsable de la producción de bloques, la propagación de mensajes entre pares y la creación de redes entre capas.

![descripción general de dymint](https://docs.dymension.xyz/assets/images/rdk-transaction-24665fd88c41a591e34162ac29c0b254.png)\


#### [Módulos](https://docs.dymension.xyz/learn/rollapps/in-depth/dymension-rdk/overview#standard-modules) estándar <a href="#standard-modules" id="standard-modules"></a>

Dymension RDK está construido sobre Cosmos SDK. Los módulos principales heredados de Cosmos SDK e IBC son:

* [Banco](https://docs.cosmos.network/v0.46/modules/bank/) : facilitar las transferencias de tokens
* [Gobernador](https://docs.cosmos.network/v0.46/modules/gov/) : propuestas y votaciones en cadena
* [IBC](https://ibc.cosmos.network/) - Protocolo puente

Se han desarrollado e implementado en producción marcos de contratos inteligentes adicionales bajo varias licencias:

* [Ethermint](https://docs.ethermint.zone/) : contratos inteligentes EVM
* [CosmWasm](https://github.com/CosmWasm/cosmwasm) : el marco Wasm creó a los contribuyentes de Confio y Cosmos

#### [Módulos](https://docs.dymension.xyz/learn/rollapps/in-depth/dymension-rdk/overview#custom-modules) personalizados <a href="#custom-modules" id="custom-modules"></a>

A diferencia de los módulos predeterminados de Cosmos SDK, se han realizado algunos ajustes que definen Dymension RDK:

* [Épocas](https://github.com/dymensionxyz/dymension-rdk/tree/main/x/epochs) : RollApps utiliza [la producción de bloques elásticos](https://docs.dymension.xyz/learn/rollapps/in-depth/dymension-rdk/dymint#elastic-block-production) , lo que puede causar inconsistencias en la producción de bloques, por lo que RollApps utiliza un enfoque basado en el tiempo en lugar de la altura para los activadores de estado.
* [Mint](https://github.com/dymensionxyz/dymension-rdk/tree/main/x/mint) : RollApps utiliza un módulo Mint basado en el tiempo creado para una creación consistente de tokens.
* [Dist](https://github.com/dymensionxyz/dymension-rdk/tree/main/x/dist) : asigna tokens entre el [secuenciador (proponente de bloque)](https://docs.dymension.xyz/learn/rollapps/tokens#sequencer) , [los gobernadores](https://docs.dymension.xyz/learn/rollapps/tokens#stakers) y el [grupo comunitario de RollApp](https://docs.dymension.xyz/learn/rollapps/tokens#community-pool) .
* [Secuenciadores](https://github.com/dymensionxyz/dymension-rdk/tree/main/x/sequencers) : crea una cuenta para recibir recompensas por operar RollApp.
* [Replanteo](https://github.com/dymensionxyz/dymension-rdk/tree/main/x/staking) : contenedor del módulo de replanteo Cosmos SDK existente que evita las actualizaciones del validador en la capa de prueba de participación.
