Skip to content

feat: Built the AI Processing Screen with Progress#46

Merged
Eniola3321 merged 2 commits into
ANYTECHS:mainfrom
ayo-ola0710:featAI-Processing-Screen
Jun 19, 2026
Merged

feat: Built the AI Processing Screen with Progress#46
Eniola3321 merged 2 commits into
ANYTECHS:mainfrom
ayo-ola0710:featAI-Processing-Screen

Conversation

@ayo-ola0710

Copy link
Copy Markdown
Contributor

Here's what was built in src/app/processing.tsx:

SparkleIcon — expo-symbols sparkles icon wrapped in a react-native-reanimated Animated. View. It continuously rotates (3 s/cycle, linear) and pulses scale (1 → 1.15 → 1, 1.6 s/cycle). On error, it switches to an exclamation mark.triangle.fill in red with no animation.

Progress bar — useSharedValue drives withTiming on the bar width, so it smoothly interpolates as progress updates from the existing useJobProgress hook (WebSocket → polling fallback).

Stage labels — stageFromProgress() maps 0–19% → Uploading, 20–54% → Analyzing video clips, 55–84% → Generating clips, 85–100% → Finalizing.

ETA — shown as ~X min remaining or Xs remaining alongside the percentage.

Cancel dialog — Alert. alert with "Keep Processing" / "Cancel" (destructive) that navigates back to upload on confirm.

Privacy notice — 🔒 Your footage is secured and encrypted during processing.

Error state — when connectionState === 'error', the icon swaps, heading changes to "Processing failed", and a teal "Retry" button replaces the cancel button (navigates to the same route with the same jobId).

Close #13

@Eniola3321 Eniola3321 merged commit 80daa30 into ANYTECHS:main Jun 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Build the AI Processing Screen with Progress

2 participants