Manifest File
The manifest file serves as the blueprint for your Raindrop application, allowing you to declaratively define your application’s architecture, components, and their relationships. This guide will walk you through creating a manifest file using a practical example.
Core Concepts
A Raindrop manifest file:
- Defines all application components and their relationships
- Uses HCL (HashiCorp Configuration Language) syntax
- Lives in a
raindrop.manifest
file at your project root - Generates TypeScript code and infrastructure when processed
Example: Building a File Processing Pipeline
Let’s explore how to build a data processing pipeline that:
- Accepts file uploads into a storage bucket
- Processes those files using a bucket observer
- Sends results to a message queue
- Processes queue messages and stores data in SQL
Here’s the data flow visualization:
Below is the manifest that implements this pipeline:
The manifest above demonstrates how to combine resources (bucket, queue, SQL database) and services (observers) to build a complete application. For more details on the individual components: