e2e-setup

Configures a one-time Maestro and Supabase E2E testing environment for Expo projects.

16|1|Updated May 5, 2026
One-click install
npx skills add https://github.com/AIBiz-Automatyzacje/workspace-template-mobile --skill e2e-setup-aibiz-automatyzacje
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: e2e-setup
Source: https://github.com/AIBiz-Automatyzacje/workspace-template-mobile/tree/main/.claude/skills/e2e-setup
Command: npx skills add https://github.com/AIBiz-Automatyzacje/workspace-template-mobile --skill e2e-setup-aibiz-automatyzacje

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Setting up end-to-end testing for an Expo app requires coordinating many moving parts — a dedicated Supabase project, environment variables, database migrations, a test account, a native dev-client build, and Maestro flows — and skipping any step causes silent failures that only surface mid-run. This Skill walks through the full one-time setup with a verifiable proof for every step, so the environment is confirmed working before any autopilot run or E2E suite executes. ## Core Features & Use Cases - Guided environment provisioning: Creates .env.e2e with placeholders, verifies gitignore coverage, applies migrations via supabase db push, and installs a database marker table that prevents seeds from ever running against dev or prod. - Test account and dev-client setup: Creates the test user through the Supabase Admin API with confirmed email, verifies login with the anon key, and rebuilds the Expo dev-client with correct ad-hoc signing so native modules and secure storage work. - Canary verification: Ends with a Maestro canary flow that must log in and reach a screen behind auth, proving the whole chain works before real test flows run. - Use Case: Before running an autonomous implementation workflow whose plan contains [E2E] checkboxes, run this setup once so the E2E gate passes instead of halting the run. ## Quick Start Ask the assistant to set up the E2E testing environment with Maestro and a dedicated Supabase project for this Expo app, then follow the step-by-step proofs it produces.

Frequently Asked Questions about e2e-setup

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up Maestro E2E testing for an Expo app?

Install Maestro CLI, Java, psql, and Supabase CLI, then create a dedicated Supabase project, an .env.e2e file, apply migrations, create a test account via the Admin API, rebuild the dev-client, and finish with a canary Maestro flow that logs in past auth.

Why should E2E tests use a separate Supabase project?

E2E seeds delete test account data before each run to start from a known state, which is destructive on shared databases. Append-only tables without UPDATE or DELETE policies make test rows unremovable from production, so a dedicated project with its own ref is required.

Why does Supabase db push fail with No route to host?

Direct connections to db.<ref>.supabase.co are IPv6-only and most home networks do not route IPv6. Use the session pooler URL instead: aws-1-<region>.pooler.supabase.com on port 5432 with user postgres.<ref>.

Why do Maestro flows fail on the first assertion in a dev-client?

launchApp lands on the expo-dev-launcher screen, not inside the app. Flows must explicitly open the dev server with openLink pointing to the expo-development-client URL for 127.0.0.1:8081, or 10.0.2.2:8081 on Android.

Can I use supabase db query to run seed files?

No. supabase db query sends the file as a single prepared statement, so seeds containing begin/commit blocks fail with error 42601. Use psql with ON_ERROR_STOP for multi-statement seed scripts.

What is the purpose of a canary test in E2E setup?

A canary is a minimal Maestro flow that must pass through login to a screen behind authentication, proving the entire environment works. It catches broken setups cheaply before full test suites or autopilot runs consume hours.