Od Anki do własnej aplikacji: jak AI i React Native pomogły stworzyć VibeLing do nauki języków
Programista, napotkawszy ograniczenia istniejących narzędzi do nauki języków, stworzył własną aplikację mobilną VibeLing. W ciągu 5 miesięcy projekt pozyskał ponad 1000 użytkowników bez inwestycji marketingowych. Kluczowymi technologiami były React Native, Node.js i modele AI do generowania przykładów i tłumaczeń.
Problemy istniejących rozwiązań
Autor przetestował różne podejścia do nauki języków i wyróżnił dwa główne typy aplikacji, które nie spełniały jego potrzeb:
• Aplikacje słownikowe (na przykład SkyEng) – oferują stałe bazy słów, ale nie wspierają dodawania dowolnych fraz lub wyrażeń kontekstowych.
• Aplikacje z fiszkami (takie jak Anki) – wymagają ręcznego wprowadzania danych, co zmienia proces dodawania materiałów w odrębne, pracochłonne zadanie.
Szczególnie ostra okazała się ta problem przy nauce języka serbskiego, dla którego praktycznie brakowało wygodnych narzędzi. To skłoniło do stworzenia własnego rozwiązania.
Architektura i technologie VibeLing
Do szybkiej realizacji MVP wybrano następujący stos technologii:
- Frontend: React Native + Expo do wieloplatformowego rozwoju pod iOS i Android.
- Backend: Node.js, działający jako proxy do API AI i serwisu głosowego AWS.
- Infrastruktura: Wdrożenie przez Vercel, zarządzanie subskrypcjami przez RevenueCat.
- Strona internetowa: Next.js z SSR dla optymalizacji SEO.
Komponenty AI były używane do automatycznej generacji tłumaczeń i przykładów zdań, co wyeliminowało konieczność ręcznego wprowadzania danych przez użytkownika.
Rozwój MVP i pierwsze wyzwania
Pierwsza wersja była stroną internetową z jednym polem wprowadzania do sprawdzenia hipotezy. Po potwierdzeniu koncepcji w ciągu kilku dni została złożona wersja mobilna. Aby przyspieszyć rozwój, aktywnie stosowano narzędzia neuronowe:
• Cursor i Claude Code do generowania kodu.
• Gotowe zestawy UI z szablonów Figma Community Templates do designu.
Jednym z nieoczekiwanych problemów było wsparcie języka serbskiego, używającego zarówno cyrylicy, jak i łaciny. Modele AI niekonsekwentnie generowały tekst w różnych alfabetach, a głosowanie AWS akceptowało tylko łacinę. Problem rozwiązano poprzez algorytmiczną konwersję zamiast prób naprawy zachowania modeli przez prompty.
Uruchomienie i feedback od użytkowników
Pierwotna wersja na iOS ujawniła wiele błędów i przypadków krańcowych, nieodkrytych podczas testowania. Negatywne opinie stały się cennym źródłem informacji do stabilizacji produktu. Dystrybucja odbywała się przez:
• Kanał Telegram autora (1500 subskrybentów).
• Publikacje w hubie „Ja piaruyu” na Habrze, które przyciągnęły około 700 użytkowników.
Krytyczny incydent wystąpił z płatnościami: błąd w integracji RevenueCat z Google Play prowadził do automatycznych zwrotów środków po udanych transakcjach. To spowodowało negatywne opinie i ryzyko blokady konta. Problem został usunięty ręcznym poprawieniem konfiguracji.
Aktualny stan i plany
W momencie publikacji aplikacja ma:
• Ponad 1000 zarejestrowanych użytkowników.
• 700 aktywnych użytkowników w ciągu ostatnich 28 dni.
• 5 płatnych subskrypcji.
Główne kierunki rozwoju obejmują:
- Zwiększenie stabilności generacji AI, zwłaszcza dla rzadkich języków.
- Optymalizacja ścieżki użytkownika od dodania słowa do jego utrwalenia.
- Badanie możliwości generowania obrazów do asocjacyjnego zapamiętywania z uwzględnieniem ekonomii tokenów.
Co jest ważne
• AI przyspiesza start, ale nie zastępuje głębokiego rozwoju – sieci neuronowe pomogły szybko stworzyć MVP, ale do rozwiązywania złożonych problemów (na przykład integracji płatności) potrzebna była ręczna interwencja.
• Dystrybucja jest ważniejsza niż idealny kod – nawet surowy MVP, rozwiązujący realny problem, może przyciągnąć użytkowników przez celowe publikacje.
• Zaczynaj od własnej bolączki – jeśli produkt jest potrzebny tobie samemu, istnieje duże prawdopodobieństwo, że będzie przydatny również innym.
• Wsparcie wielojęzyczności wymaga uwzględnienia specyfiki – takie cechy, jak podwójny alfabet w serbskim, mogą wymagać nieoczywistych rozwiązań technicznych.
— Editorial Team
Brak komentarzy.