Quick Start
Get up and running with ShedBoxAI in just a few minutes. This guide will walk you through creating your first data processing pipeline.
Overview
ShedBoxAI transforms complex data processing workflows into simple YAML configurations. Just two steps to get started:
- Create a YAML configuration file
- Run
shedboxai run config.yaml
The framework handles everything else: data connections, transformations, AI integration, and output formatting.
Want to generate configurations with Claude Code or other AI assistants? Download the AI Assistant Guide - it contains all the syntax patterns and examples needed for AI to create perfect ShedBoxAI configs for you.
Your First Pipeline
Let's create a simple pipeline that processes user data and generates insights.
Step 1: Create Sample Data
Create a file called data/users.csv
:
name,age,city,status
John Doe,30,New York,active
Jane Smith,25,Los Angeles,active
Bob Johnson,45,Chicago,inactive
Alice Brown,35,Miami,active
Step 2: Create Configuration
Create config.yaml
:
# Data sources configuration
data_sources:
users:
type: csv
path: data/users.csv
# Processing configuration
processing:
contextual_filtering:
users:
- field: age
condition: "> 18"
- field: status
condition: "== 'active'"
new_name: "adult_active_users"
format_conversion:
adult_active_users:
template: |
**{{item.name}}** ({{item.age}} years)
- Location: {{item.city}}
- Status: {{upper(item.status)}}
# Output configuration
output:
type: file
path: output/results.json
format: json
Step 3: Run Your Pipeline
shedboxai run config.yaml
Expected Output
The pipeline will:
- Load user data from CSV
- Filter for active users over 18
- Format each user with a template
- Save results to
output/results.json
Key Concepts
Data Sources
Connect to various data sources:
- CSV/JSON/YAML files
- REST APIs
- Text files
- Inline data
Operations
Transform your data with 6 operation types:
- Contextual Filtering - Filter data with expressions
- Format Conversion - Transform with templates
- Content Summarization - Statistical analysis
- Relationship Highlighting - Link and derive data
- Advanced Operations - Group, aggregate, sort
- Template Matching - Jinja2 templating
Expression Engine
Use built-in functions in conditions and templates:
condition: "> avg(map(users, 'age'))"
template: "{{upper(concat(item.first_name, ' ', item.last_name))}}"
Next Steps
- Build Your First Pipeline - More detailed walkthrough
- Configuration Guide - Complete configuration reference
- Operations Reference - All available operations
- Examples - Real-world use cases
Need Help?
- Check the CLI Reference for all command options
- Visit Troubleshooting for common issues
- See Examples for more complex scenarios