Site Management
Sites are the foundation of organizing your visual regression tests in GoDiffy. Each site represents a project, application, or environment that you want to test.
What is a Site?
A site in GoDiffy is a container that:
- Organizes your screenshots and comparisons
- Tracks different branches and commits
- Maintains comparison history
- Provides isolated testing environments
Think of sites as projects—you might have separate sites for:
- Different applications (e.g., "Marketing Site", "Admin Dashboard")
- Different environments (e.g., "Production", "Staging")
- Different teams or clients
Creating Your First Site
Via Dashboard
- Navigate to Sites - Click "Sites" in the main navigation
- Click "Create New Site" - Opens the site creation modal
- Fill in site details:
- Site Name (required): A descriptive name like "My App" or "E-commerce Site"
- URL (optional): Your application's base URL for reference
- Description (optional): Additional context about what you're testing
- Click "Create" - Your site is ready to use!
Via API
curl -X POST https://api.godiffy.com/api/sites \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "My App",
"url": "https://myapp.com",
"description": "Production visual regression tests"
}'
Site Configuration
Site Settings
Each site has configurable settings:
Basic Information
- Name: Update your site name at any time
- URL: Reference URL for your application
- Description: Detailed information about the site
Default Comparison Settings
- Algorithm: Choose default comparison algorithm (SSIM, MSE, or Structural)
- Threshold: Set default similarity threshold (0-100%)
- Notification Preferences: Configure alerts for comparison failures
Site ID
Every site has a unique Site ID that you'll use for:
- API requests
- GitHub Actions configuration
- CLI tool integration
Finding Your Site ID:
- Go to the Sites page
- Click on your site
- The Site ID is displayed in the site details
Managing Multiple Sites
Site Limits by Plan
| Plan | Site Limit |
|---|---|
| Free | 3 sites |
| Pro | Unlimited |
| Enterprise | Unlimited |
Best Practices
Separate by Environment:
✅ Good:
- "MyApp - Production"
- "MyApp - Staging"
- "MyApp - Development"
❌ Avoid:
- "MyApp" (mixing all environments)
Separate by Application:
✅ Good:
- "Marketing Website"
- "Customer Portal"
- "Admin Dashboard"
❌ Avoid:
- "All Projects" (mixing unrelated apps)
Branch and Commit Organization
How GoDiffy Organizes Images
Images are organized in a hierarchical structure:
Site
└── Branch (e.g., "main", "feature-ui")
└── Commit (e.g., "abc123")
└── Images (e.g., "homepage.png", "checkout.png")
Folder Structure
When uploading images, use this folder pattern:
💡 Using GitHub Actions? The GoDiffy action handles this structure automatically. Only follow the manual upload flow below if you're integrating outside of GitHub Actions (API, CLI scripts, other CI/CD tools).
/{site-name}/{branch-name}/{commit-hash}/image.png
Example:
/my-app/main/abc123/homepage.png
/my-app/main/abc123/checkout.png
/my-app/feature-ui/def456/homepage.png
Automatic Branch Detection
GoDiffy automatically detects branches from:
- Folder structure in uploads
- GitHub Actions metadata
- API request parameters
Comparing Across Branches
Setting Up Comparisons
- Select your site from the Sites page
- Navigate to Compare tab
- Choose two folders to compare:
- Base Folder: Your baseline (e.g.,
mainbranch) - Compare Folder: Your changes (e.g.,
feature-uibranch)
- Base Folder: Your baseline (e.g.,
- Click "Compare" to start the comparison
Common Comparison Scenarios
Feature Branch vs Main:
Base: /my-app/main/latest
Compare: /my-app/feature-ui/latest
Before vs After Deployment:
Base: /my-app/production/commit-before
Compare: /my-app/production/commit-after
Cross-Environment Testing:
Base: /staging-site/main/latest
Compare: /production-site/main/latest
Site Deletion
Before You Delete
⚠️ Warning: Deleting a site will:
- Remove all uploaded images
- Delete all comparison history
- Remove all reports
- Cannot be undone
How to Delete a Site
- Go to Sites page
- Click the ⋮ menu on the site card
- Select "Delete Site"
- Confirm the deletion
Alternative: Archive sites instead of deleting them to preserve history.
Site Storage and Limits
Storage & Limits
Refer to the Pricing & Billing page for plan-specific storage allowances and API quotas. Within a site you can:
- View total storage on the dashboard or the site details panel
- Free up space by deleting obsolete branches, commits, or images
Integration with GitHub Actions
Automatic Site Configuration
Using GitHub Actions? Follow the dedicated integration guide for setup, secrets, and workflow examples. The action automatically handles site folder structure, uploads, and comparisons—no extra steps required here.
Troubleshooting
See Troubleshooting → Site uploads & organization for solutions to common issues like missing images, "site not found" errors, and comparison mismatches.
Next Steps
- Set up GitHub Actions - Automate your visual testing
- Create API Keys - Get programmatic access
- View Reports - Understand your comparison results
- Explore Features - Learn about advanced capabilities
Need Help?
- Contact Support - We're here to help
- API Documentation - Full API reference
- GitHub Actions Guide - Integration details