Skip to content

Organizing Projects

Projects help you organize related flows within your workspace. This guide covers project management and best practices.

What is a Project?

A project is a container for related flows:

+---------------------------------------------------------------------+
| Workspace: My Organization                                          |
+---------------------------------------------------------------------+
| 📁 Project: E-commerce Platform                                    |
| |   +-- 📊 Flow: Order Processing                                  |
| |   +-- 📊 Flow: Inventory Sync                                    |
| |   +-- 📊 Flow: Customer Notifications                            |
| |                                                                   |
| 📁 Project: Marketing Automation                                   |
| |   +-- 📊 Flow: Email Campaigns                                   |
| |   +-- 📊 Flow: Analytics Pipeline                                |
| |                                                                   |
| 📁 Project: Internal Tools                                         |
|     +-- 📊 Flow: Slack Bot                                         |
+---------------------------------------------------------------------+

Creating Projects

New Project

  1. Navigate to your workspace
  2. Click New Project
  3. Enter project details:
+---------------------------------------------------------------------+
| Create New Project                                                  |
+---------------------------------------------------------------------+
| Name: E-commerce Platform                                          |
|                                                                     |
| Description:                                                       |
| +-----------------------------------------------------------------+|
| | All flows related to our e-commerce operations                 ||
| +-----------------------------------------------------------------+|
|                                                                     |
| Target Cluster: [production-gke v]                                 |
|                                                                     |
| Tags: [ecommerce] [production]                                     |
|                                                                     |
|                                         [Cancel] [Create]           |
+---------------------------------------------------------------------+
  1. Click Create

Project Settings

Configure project properties:

SettingDescription
NameDisplay name
DescriptionPurpose and notes
ClusterDefault deployment target
TagsOrganization labels
AccessPermission settings

Project Dashboard

Each project has a dashboard showing:

+---------------------------------------------------------------------+
| E-commerce Platform                                [Settings] [+]   |
+---------------------------------------------------------------------+
| Flows (3)                                                          |
| +------------------+--------------+------------+-----------------+ |
| | Name             | Status       | Last Run   | Actions         | |
| +------------------+--------------+------------+-----------------+ |
| | Order Processing | 🟢 Deployed  | 2 min ago  | [Edit] [...]    | |
| | Inventory Sync   | 🟢 Deployed  | 5 min ago  | [Edit] [...]    | |
| | Notifications    | 🟡 Draft     | Never      | [Edit] [...]    | |
| +------------------+--------------+------------+-----------------+ |
|                                                                     |
| Quick Stats                                                        |
| +-- Total Flows: 3                                                 |
| +-- Deployed: 2                                                    |
| +-- Executions Today: 1,234                                        |
| +-- Errors Today: 2                                                |
+---------------------------------------------------------------------+

Organizing Flows

Naming Conventions

Use clear, descriptive names:

✅ Good names:
- "Process Customer Orders"
- "Sync Inventory to Warehouse"
- "Send Order Confirmation Email"
- "Handle Stripe Webhooks"

❌ Poor names:
- "Flow 1"
- "Test"
- "New Flow"

Using Tags

Tag flows for easy filtering:

TagPurpose
productionProduction flows
stagingStaging/test flows
scheduledTimer-triggered
webhookHTTP-triggered
criticalHigh-priority

Flow Categories

Organize by function:

📁 E-commerce Platform
+-- 🏷️ Orders
|   +-- Process Orders
|   +-- Refund Orders
|   +-- Order Reports
+-- 🏷️ Inventory
|   +-- Stock Updates
|   +-- Low Stock Alerts
+-- 🏷️ Customers
    +-- Welcome Email
    +-- Order Confirmation

Project Structure Patterns

By Domain

Organize by business domain:

📁 Orders Project
📁 Payments Project
📁 Shipping Project
📁 Customer Service Project

By Environment

Separate by deployment stage:

📁 Production Flows
📁 Staging Flows
📁 Development Flows

By Team

Organize by ownership:

📁 Backend Team
📁 Data Team
📁 Marketing Team

Hybrid Approach

Combine patterns:

📁 Orders (Production)
📁 Orders (Staging)
📁 Payments (Production)
📁 Payments (Staging)

Managing Flows

Moving Flows

Move flows between projects:

  1. Open the flow
  2. Click Settings
  3. Select Move to Project
  4. Choose target project
  5. Confirm

Duplicating Flows

Copy flows:

  1. Right-click the flow
  2. Select Duplicate
  3. Choose:
    • Same project
    • Different project
  4. Rename the copy

Archiving Flows

Archive unused flows:

  1. Select the flow
  2. Click Archive
  3. Flow moves to archive

Archived flows:

  • Don't run
  • Don't count against limits
  • Can be restored

Project-Level Configuration

Default Cluster

Set default deployment target:

  1. Project Settings
  2. Select Default Cluster
  3. New flows deploy here by default

Environment Variables

Project-wide environment settings:

yaml
variables:
  API_BASE_URL: "https://api.example.com"
  LOG_LEVEL: "info"
  ENVIRONMENT: "production"

Available in all project flows via expressions.

Shared Secrets

Project-level secret management:

  1. Project Settings > Secrets
  2. Add secrets:
    • API keys
    • Database passwords
    • Service credentials
  3. Reference in flows

Collaboration

Project Access

Control who can access:

RolePermissions
OwnerFull control
EditorCreate, edit, deploy
ViewerView only

Activity Log

Track project changes:

+-------------------------------------------------------------------+
| Activity Log                                                      |
+-------------------------------------------------------------------+
| [E] Alice edited "Order Processing"            Today, 10:30 AM    |
| [D] Bob deployed "Inventory Sync"              Today, 9:15 AM     |
| [+] Alice created "Notifications"              Yesterday          |
| [S] Bob updated project settings               2 days ago         |
+-------------------------------------------------------------------+

Best Practices

1. Keep Projects Focused

One domain or purpose per project:

✅ "Order Management" - all order-related flows
❌ "Everything" - mixed unrelated flows

2. Document Projects

Add descriptions:

  • What the project does
  • Key flows and their purposes
  • Dependencies
  • Contacts

3. Use Consistent Naming

Establish naming conventions:

[Domain] - [Action] - [Trigger]

Examples:
- Orders - Process - Webhook
- Inventory - Sync - Scheduled
- Customers - Notify - Event

4. Regular Cleanup

Periodically review:

  • Archive unused flows
  • Remove obsolete projects
  • Update documentation

5. Environment Separation

Keep environments separate:

  • Production project
  • Staging project
  • Development project

Next Steps

Build flow-based applications on Kubernetes