Project Competition

The Bruin Project Competition is closed and winners have been announced. Explore the projects built by the community and see the final awards below.

Mac mini

Grand Prize

Mac mini

Winner

Arnaud Francois won the grand prize for the competition.

Claude Pro

Top 5

1 year Claude Pro subscription each

Award

The top 5 people in the final results won 1 year Claude Pro subscriptions.

All Participants

Gift card

Award

Every other participant received a gift card as a thank you for building with Bruin.

Competition closed - winners announced

Important: The identity of all participants is subject to verification to ensure fair competition and prevent cheating, plagiarism, and spam.

How to Build Your Project

From zero to a complete data project in four steps, plus an optional cloud deployment.

1

Set Up Your Project

  • -Install Bruin: curl -LsSf https://getbruin.com/install/cli | sh
  • -Initialize a project: bruin init empty my-project
  • -Choose your database: DuckDB (local, zero setup) or BigQuery (cloud)
  • -Configure your connection in .bruin.yml

Quickstart guide →  ·  NYC Taxi Tutorial: Setup →

2

Ingest Your Data

Three ways to get data into your project:

Ingestr YAML Assets

Built-in connectors for 100+ sources. Just define a YAML file.

name: chess.profiles
type: ingestr
parameters:
  source_connection: chess
  source_table: profiles
  destination: duckdb

Ingestr docs →

DuckDB Read from URL

Read CSV or Parquet files directly from public URLs.

SELECT *
FROM read_parquet(
  'https://...data.parquet'
);

DuckDB assets →

Python Extract

Write a Python script that returns a DataFrame.

def materialize():
  df = pd.read_csv(url)
  return df

Python assets →

Free dataset ideas

  • -Chess.com — built-in ingestr source
  • -BigQuery public datasets — Wikipedia, GitHub, Stack Overflow
  • -NYC Taxi — Parquet files via URL or Python
  • -Frankfurter API — exchange rates via Python
  • -GitHub Archive — public event data via BigQuery or Parquet
  • -Google Sheets — any spreadsheet via ingestr

NYC Taxi Tutorial: Build the Pipeline →

3

Transform with SQL

  • -Write SQL assets to clean, join, and aggregate your raw data
  • -Materialize results as tables or views for downstream use
  • -Add quality checks (not_null, unique, accepted_values) to validate your data
  • -Run the pipeline: bruin run .
/* @bruin
name: analytics.monthly_summary
type: duckdb.sql
materialization:
    type: table
@bruin */

SELECT date_trunc('month', created_at) AS month,
       count(*) AS total_records
FROM raw.my_data
GROUP BY 1;

SQL assets guide →  ·  Quality checks →  ·  NYC Taxi Tutorial: Build the Pipeline →

4

Analyze with AI

Build a context layer and let AI understand your data:

  • -Run bruin ai enhance assets/ to auto-generate descriptions, quality checks, and tags for all your assets
  • -Set up Bruin MCP in your IDE so AI agents can query and understand your data:

Cursor / Claude Code

claude mcp add bruin \
  -- bruin mcp

VS Code

"bruin": {
  "command": "bruin",
  "args": ["mcp"]
}

Codex CLI

[mcp_servers.bruin]
command = "bruin"
args = ["mcp"]
  • -Ask Cursor, Claude Code, or Codex to analyze your data, find patterns, and generate insights
  • -Alternatively: deploy to Bruin Cloud and use the AI Chat or AI Dashboard features for instant analysis

Bruin MCP setup →  ·  AI enhance docs →  ·  NYC Taxi Tutorial: Build with MCP →

5

Deploy to Bruin Cloud Optional

Take your pipeline to production with scheduling, monitoring, and AI-powered analysis.

  • -Sign up for free at getbruin.com — no credit card required
  • -Free tier includes credits to schedule and run your pipelines in the cloud
  • -Access the AI Data Analyst — ask questions about your data in natural language from Slack, Teams, Google Chat, or the browser
  • -Use the AI Dashboard Builder — generate dashboards with KPIs and charts from a single prompt

Cloud onboarding video →  ·  AI Data Analyst tutorial →  ·  AI Dashboard Builder tutorial →