Google Fuchsia se basa en un diseño modular que rompe con el concepto de aplicación utilizado hasta ahora. Cada unidad de software recibe el nombre de “package” (paquete) y está compuesta de una selección de archivos como pueden ser metadatos, archivos manifiesto, elementos ejecutables, etc. Estos últimos se denominan en la terminología de Google “components” (componentes).
Los componentes de Google Fuchsia son los elementos que más se acercan a lo que hoy en día se consideran aplicaciones. Cada uno de ellos desempeña una tarea específica y puede combinarse con otros para dar lugar a aplicaciones complejas. Constituidos por un archivo manifiesto y el código asociado a él, los componentes se ejecutan en su propio entorno aislado, acceden a los objetos a través de un espacio de nombres y los publican a través de un directorio de exportación. Fuchsia OS está formado principalmente por dos tipos de componentes: “models” (módulos) y “agents” (agentes).
Los agentes trabajan en un segundo plano y proporcionan servicios para otros componentes. Se puede acceder a un agente bien mediante otro componente, bien a través del sistema, por ejemplo, en respuesta a ciertos triggers, como las notificaciones push u otros procesos que se desarrollen en pantalla.
Los módulos son componentes con interfaz de usuario que se ejecutan en primer plano y son visibles para el usuario. Cada módulo ha sido diseñado para que desempeñe una tarea específica y está marcado para que pueda usarse de forma automática cuando sea necesario. Todo ello es posible mediante la función del módulo, descrita mediante los “verbs” (verbos) y los “nouns” (sustantivos).
Cada módulo incluye una lista de verbos para indicar el trabajo que puede hacer el módulo y una lista de sustantivos para designar a las entidades con las que se está trabajando. Según la terminología de Google, el término entidad hace referencia a cualquier persona, lugar, cosa, evento o concepto identificable de forma única, disponible como un objeto de datos estructurado, al que se puede hacer referencia y se puede recuperar, presentar, manipular o compartir.
En la práctica, este sistema operativo en tiempo real funciona como sigue: tan pronto como un usuario ejecuta una acción, Fuchsia OS determina de forma automática el módulo adecuado para la tarea. Para ello, la acción ejecutada se traduce en una combinación de verbo y sustantivo. El sistema recupera una lista de todos los módulos que contienen el verbo deseado y, en el siguiente paso, filtra el módulo concreto que también funciona con el sustantivo establecido.
Los módulos relacionados se pueden agrupar en las llamadas stories, que combinan diferentes acciones y tareas de acuerdo a los requisitos actuales, permitiendo a los usuarios crear aplicaciones complejas según sus propias ideas y necesidades.