Skip to main content
The fastest way to get started with MotherDuck Examples is using the get-starter.sh script. This script downloads only the starter project you need without cloning the entire repository.

Prerequisites

Before you begin, make sure you have:

Get a starter project

Use the get-starter script to download a specific starter project:
1

Choose a starter project

Browse the available starter projects in the Introduction or see the complete list below.
2

Run the get-starter script

Replace <starter-name> with your chosen project:
curl -fsSL https://raw.githubusercontent.com/motherduckdb/motherduck-examples/main/scripts/get-starter.sh | bash -s <starter-name>
For example, to get the dbt-ai-prompt starter:
curl -fsSL https://raw.githubusercontent.com/motherduckdb/motherduck-examples/main/scripts/get-starter.sh | bash -s dbt-ai-prompt
3

Navigate to the project

Once downloaded, navigate into the project directory:
cd dbt-ai-prompt
4

Follow the README

Each starter project includes a detailed README with setup instructions. Open it and follow the steps:
cat README.md

What the script does

The get-starter.sh script uses git sparse checkout to efficiently download your chosen starter:
  • Downloads only the selected starter project (not the entire repo)
  • Uses git sparse checkout to fetch just the needed folder
  • Creates a clean copy without git history
  • Validates the starter name before downloading
  • Checks for existing directories to avoid conflicts

Available starter projects

You can download any of these starter projects using the script:
  • python-ingestion - Python data ingestion patterns
  • dbt-ingestion-s3 - Ingest data from S3 using dbt

Alternative methods

If you prefer not to use the script, you can get starter projects using these methods:
git clone https://github.com/motherduckdb/motherduck-examples.git
cd motherduck-examples/<starter-name>
The get-starter script is recommended as it downloads only what you need and creates a clean copy without git history.

Testing from a PR branch

If you’re contributing to MotherDuck Examples or testing changes, you can download a starter from a specific branch:
BRANCH=feat/your-branch curl -fsSL https://raw.githubusercontent.com/motherduckdb/motherduck-examples/feat/your-branch/scripts/get-starter.sh | bash -s <starter-name>
This is primarily for contributors and maintainers. Most users should use the default main branch.

Troubleshooting

If the starter directory already exists, the script will prompt you to remove it. Answer y to proceed or n to abort.
Warning: Directory 'dbt-ai-prompt' already exists.
Do you want to remove it and continue? (y/N)
This error usually indicates:
  • Git is not installed
  • No internet connectivity
  • Invalid branch name (if using BRANCH env var)
Make sure git is installed and you have internet access.
If you see “Starter project not found”, you may have mistyped the starter name. Run the script without arguments to see all available starters:
curl -fsSL https://raw.githubusercontent.com/motherduckdb/motherduck-examples/main/scripts/get-starter.sh | bash

Next steps

Once you have your starter project:

Python Ingestion

Learn Python data ingestion patterns

dbt AI Prompt

Transform text with AI functions in dbt

dbt Dual Execution

Run models across local and cloud

Grafana Integration

Visualize data with Grafana

Build docs developers (and LLMs) love