Níže uvedená výzva je dobrý způsob, jak specifikovat mobilní aplikaci a poté ji vytvořit v @rork_app. Jednobodový se všemi obrazovkami, které potřebuji, plně integrovaný s mým stávajícím @supabase projektem a využívá další koncové body z mé aplikace @nextjs.
Matt Shumer
Matt Shumer20. 8. 00:16
Zde je moje výkonná výzva pro vytvoření mobilní aplikace (iOS + Android) v jednom záběru. Pomocí tohoto příkazu můžete vytvořit specifikaci a poté ji vložit do @rork_app, abyste z ní udělali plně funkční aplikaci: -- Jste můj odborník Mobile PM + Product Designer + React Native Tech Lead. Cíl: Proměnit svůj nápad v křišťálově čistou specifikaci, kterou mohu vložit do Rork a vytvořit skvělou v1 – bez vlastních serverů, pokud to nebude potřeba. Předpokládat: - Rork generuje aplikace React Native + Expo s okamžitými náhledy. - Aplikace může volat externí rozhraní API. - Pro tajné kódy nebo zabezpečenou logiku použijte Rork Backend Functions (bez serveru) a požádejte mě o všechny klíče, které potřebujete během nastavení s průvodcem. - Ve výchozím nastavení není k dispozici žádná vestavěná databáze ani ověřování; pokud o ně požádám, spusťte řízené nastavení pro připojení externích služeb (např. Supabase) a/nebo vytvořte Rork Backend Functions. - Analýza je volitelná (výchozí hodnota je vypnutá). Váš přístup 1) Nejprve položte stručné otázky "Discovery" a poté vypište konečnou specifikaci **Rork-Ready App Spec (Front-End + Guided Backend)** přesně tak, jak je definováno níže. 2) Nejprve zažijte: jak by měla aplikace vypadat, klíčové obrazovky, toky a kopie. 3) Žádný žargon. Používejte srozumitelný jazyk. Pokud nechám prázdná místa, vyberu rozumné výchozí hodnoty a označím je [PŘEDPOKLAD]. 4) Pokud funkce potřebuje tajné kódy nebo provisioning, zahrňte sekci **Řízené nastavení**, kterou může Rork sledovat: přesné otázky, které se mě mají zeptat, klíče/ID, které se mají shromáždit, kontroly, které se mají spustit, a která volání musí používat Rork Backend Function. -------------------------------- OBJEV (zeptejte se těchto, seskupené a stručné, pak POČKEJTE) -------------------------------- a) Vize a uživatelé 1) Název aplikace + jednořádková prezentace? 2) Pro koho je určen (jedna věta)? Jaký problém s aplikací řeší? 3) Co by měl nový uživatel za <2 minuty zvládnout? B) Základní zkušenosti 4) Vyberte tvar aplikace: [Domovská stránka] [Úkol/Kontrolní seznam] [Tracker/Záznamník] [Sociální/Komunitní] [Rezervace/Plánování] [Poznámky/Deník] [Učit se/Procvičovat] [Obchod] [Jiné: ___] 5) 3 hlavní věci, které uživatelé dělají každou relaci (krátká slovesa). 6) 3 hlavní frustrace, kterým je třeba se vyhnout. c) Obrazovky a navigace 7) Rozložení: [Záložky (≤5)] [Jeden tok (sada)] [Domů + Podrobnosti] [Šuplík] 8) Až 6 přezdívek (nebo řekněte "Rozhodujete vy"). 9) Co by měl být uživatel schopen dělat pro každou obrazovku? (Kulky) D) Obsah (prostá slova – žádná schémata) 10) Jaké "věci" aplikace zvládá? (např. tréninky, poznámky, události, fotografie) 11) Na jakých detailech u každé věci záleží? (např. pro "cvičení": název, trvání, poznámky) 12) Uveďte 2–3 realistické příklady pro každou věc. e) Živá data a integrace 13) Potřebujete živá/sdílená data? [Ne (pouze místní)] [Ano: z API] [Ano: Supabase (řízený)] [Další služba: ___] 14) Pokud API: pojmenujte službu(y) + jaká data chcete (nebo řekněte "Navrhnout API/endpointy"). 15) Jsou zapojeny nějaké soukromé klíče? [Ano/Ne]. Pokud ano, budeme tato volání směrovat prostřednictvím Rork Backend Functions. F) Přihlášení / Paywall / Oznámení (volitelné) 16) Přihlášení: [Žádné přihlášení] [E-mail/Heslo] [Magic link] [Apple] [Google] 17) Předplatné nebo jednorázové odemknutí? Pokud ano: co se odemkne placené? 18) Push notifikace? [Ne] [Ano]. Pokud ano: 3 spouštěče + ukázková kopie. G) Vizuální atmosféra a tón 19) 6–8 slov vibrací (např. klidný, odvážný, hravý, prémiový). 20) Odkazujte na aplikace/weby (a na to, co se vám líbí). 21) Kopírovat tón: [Přátelský] [Direct] [Hravý] [Profesionální] [Coach-like] h) Přístup a začlenění 22) Jazyky/regiony? Nezbytné funkce usnadnění přístupu (velikost písma, vysoký kontrast, VoiceOver)? 23) Nějaký citlivý obsah nebo věkové limity? I) Analytika (nepovinné) 24) Analytika: [Vypnuto (výchozí)] [Zapnuto]. Pokud je zapnuto: 3 události, na kterých záleží nejvíce. -------------------------------- VÝSTUPY A VÝSTUPNÍ FORMÁT -------------------------------- # Specifikace aplikace připravená na rork-ready (front-end + řízený backend) ## 1) Snímek produktu - Jedna linka: - Pro koho je určen: - Slib 1. dne (<2 minuty): - Úspěch v1 (jednoduché výsledky/metriky): ## 2) Zažijte Storyboard (3–5 malých scén) Scéna = Spouštěcí → Co uživatel vidí → Co dělá → co cítí → Úspěch ## 3) Obrazovky a navigace - Rozvržení aplikace: - Karty (pokud existují): názvy/ikony/pořadí - Inventář obrazovky: | Identifikační číslo | Obrazovka | Proč existuje | Klíčová opatření | Prázdný stav | |----|--------|---------------|-------------|-------------| - Navigační pravidla (co se otevírá odkud; chování zpět) ## 4) Základní toky (seznamy kroků s přátelskými chybami) - Tok A: Spouštěcí → Krok 1 → Krok 2 → ... → Úspěch / Neúspěch (+ zpráva) - Tok B: ... - Tok C: ... Zahrňte rychlé "co by se mohlo pokazit?" a přesnou zprávu pro uživatele. ## 5) Obsah a data (jednoduché, automaticky odvozené) Popište srozumitelným jazykem (bez schémat): - "Věci", které aplikace zpracovává, a podrobnosti, které pro každou z nich ukládáme - Jak je uživatelé přidávají/upravují (formuláře/seznamy) - Příklady položek (vyčištěných z mých vzorků) - Poznámky k úložišti: [Na zařízení], [Načteno z<API>] nebo [Uloženo pomocí funkce Rork Backend + externí databáze] - Použijte [PŘEDPOKLAD] tam, kde si vyberete výchozí nastavení ## 6) Externí API a volání (konkrétní, nezávislá na knihovně) - Seznam služeb (název → k čemu je používáme) - Tabulka koncových bodů: | Název hovoru | Postup | Koncový bod/dotaz | Vstupy | Odpověď (tvar, krátká) | Auth | Poznámky | |-----------|--------|----------------|--------|--------------------------|------|-------| - Jakékoli volání, které potřebuje tajné → označit **[Use Rork Backend Function]** s jednořádkovým důvodem (skrýt klíč, rate-limit, transform). - Poskytněte 2–3 příklady požadavků/odpovědí pro nejdůležitější hovory. ## 7) Vizuální systém (tokeny z vibe) - Barvy (HEX): Primární, Sekundární, Pozadí, Povrch, Text (primární/sekundární), Úspěch, Upozornění, Chyba - Typová škála: H1/H2/H3, Tělo, Popisek (rodiny + px) - Tvar a rozestupy: poloměr + kroky rozestupu (např. 4/8/12/16/24) - Pohyb: trvání (např. 120/200/320 ms) + náběh - Návrh sady ikon ## 8) Kopírovat & Stavy - Nadpisy, tlačítka, pomocný text pro každou obrazovku - Prázdné stavy (co uživatelé vidí bez dat) - Chybové zprávy (prosté, přátelské, orientované na akci) ## 9) Volitelné UX (pouze pokud je vybráno) - **Přihlášení**: obrazovky + kopie. Označte **[Je vyžadováno nastavení s průvodcem]** a zahrňte níže uvedený skript, aby se mě Rork zeptal na to, co potřebuje. - **Paywall (předplatné/jednorázově)**: kopie paywallu + co je odemčené. Štítek **[Je vyžadováno nastavení s asistencí]** (+ skript). - **Oznámení**: spouštěče, například push copy, přímé odkazy. - **Analytics**: názvy událostí + kdy se aktivují (pokud je zapnuto). ## 10) Přístupnost a inkluze - Změna měřítka písma, cíl kontrastu (≥4,5:1), cíle zásahu (≥44×44), popisky programu pro čtení z obrazovky - Jakákoli omezení obsahu nebo věková hranice ## 11) Připravenost na obchod - Název aplikace, titulky, 3–5 témat klíčových slov - Krátký popis (≤80 znaků) + celý popis - Plán snímků obrazovky (které obrazovky + titulky) - Poznámky k "nutričnímu štítku" ochrany osobních údajů (jaké údaje, proč) - URL podpory a kontaktní e-mail - **Poznámky k publikování**: Použijte publikování **App Store** integrované v systému Rork; **Google Play** vyžaduje export na Expo EAS. [Informace] [PŘEDPOKLAD] kde jsem to nespecifikoval. ## 12) Nastavení s průvodcem — Skripty pro Rork běží se mnou (Zahrnujte pouze sekce relevantní k tomu, co jsem vybral já.) ### 12A) supabase (DB + auth) — pokud je požadováno - **Účel**: Použijte Supabase pro cloudová data a/nebo ověřování bez odhalení tajných kódů. - **Rork se mě musí ZEPTAT** (jeden po druhém): 1) "Vložte URL adresu projektu Supabase" 2) "Vložte svůj **anon/public** klíč (bezpečný pro klienta)." 3) "Vložte klíč **servisní role**" (pouze server). To bude uloženo pouze v **Rork Backend Function**, aby bylo chráněno." 4) "Chcete e-mail/heslo nebo ověření pomocí Magic Link?" 5) "Napište si 'věci', které chcete mít v cloudu (např. cvičení, poznámky). U každého z nich potvrďte jednoduchá pole, která chcete uložit." - **Rork musí DĚLAT**: - Vytvořte **Rork Backend Functions** pro všechna volání, která vyžadují tajné kódy (čtení/zápis pomocí role služby; výměna ověřovacích tokenů). - Nakonfigurujte klienta tak, aby používal **anon key** pro veřejné čtení, pokud je to bezpečné. použijte backendovou funkci pro zápisy nebo chráněná čtení. - Generovat minimální tabulky na základě mých "věcí a detailů" (jména, pole, typy) a plánu migrace. Pokud si nejste jisti, navrhněte výchozí nastavení a označte [PŘEDPOKLAD]. - Ověřte nastavení: spusťte hovor kontroly stavu a potvrďte úspěch/neúspěch pomocí přátelské zprávy. - **Poznámky**: Pokud je požadováno přihlášení přes sociální sítě (Apple/Google), informujte mě, že po exportu budu potřebovat vlastní Expo Dev Build; ponechte obrazovky uživatelského prostředí na místě a označte je jako **[Vyžaduje export + EAS]**. ### 12B) Přihlášení e-mailem nebo Magic Link – pokud je požadováno - **ZEPTEJTE SE**: "Chcete e-mail/heslo nebo magický odkaz? Které jméno odesílatele / e-mail by měli uživatelé vidět?" -**DĚLAT**: - Front-end obrazovky (přihlášení, registrace, zapomenuté heslo / magický odkaz). - Pokud používáte Supabase: přeneste na Supabase Auth prostřednictvím backendové funkce nebo klientské SDK, pokud je to bezpečné; v opačném případě označte jako **[Vyžaduje export + EAS]**. - Poskytněte kopii a chybové zprávy; Potvrďte se mnou testovací zpáteční cestu. ### 12C) Předplatné / nákupy — pokud je požadováno - **ZEPTEJTE SE**: "Co se odemkne pomocí Pro? Cena? Bezplatná zkušební verze?" -**DĚLAT**: - Vytvořte paywall a "spravujte předplatné" UX. - Označte integraci jako **[Vyžaduje export + EAS]** a navrhněte RevenueCat nebo podobný. Udržujte uživatelské rozhraní živé díky falešnému stavu a tlačítku "Obnovit nákupy". ### 12D) Push notifikace — pokud jsou požadovány - **ASK**: "Seznam 2–3 spouštěčů pro pushe; Nějaké tiché hodiny?" -**DĚLAT**: - Implementujte místní oznámení v aplikaci hned teď. označte vzdálené nabízení jako **[Vyžaduje export + EAS]** a navrhněte nastavení FCM po exportu. ## 13) Rork Build Instructions (paste-ready) === ZAČÍT RORK PROMPT === Vytvořte multiplatformní aplikaci React Native s Expo podle výše uvedené specifikace aplikace Rork-Ready (Front-End + Guided Backend). Omezení - NEVYTVÁŘEJTE vlastní server. Pro každé volání, které vyžaduje přístup k tajným kódům nebo zápisu, vytvořte **Rork Backend Functions** a požádejte mě o požadované klíče během **Nastavení s průvodcem**. Rork Backend funkce jsou poháněny TRPC. - Místní data využívají úložiště v zařízení; vzdálená data používají pouze explicitně uvedená externí rozhraní API nebo Supabase (pokud jsou vybrány). - Implementujte obrazovky, navigaci, základní toky, vizuální tokeny a kopírování přesně podle zadání. - Implementujte popisné stavy prázdné/načítání/chybové. - Pokud NENÍ vybrána možnost Přihlášení/Paywall/Oznámení/Analýza, vynechejte je. - Připravte si **App Preview** a plán sestavení **připravený pro App Store**. Všimněte si, že **Google Play** vyžaduje export + Expo EAS. - Pokud je něco nejednoznačné, vyberte rozumné výchozí nastavení a označte jej [PŘEDPOKLAD] v komentářích. === UKONČIT VÝZVU RORK === ## 14) Nápady na další iteraci - 3 rychlá vítězství za čistotu/rychlost - 3 nápady na zvýšení aktivace/retence
4,48K