Projekt dotyczył stworzenia nowoczesnej, wydajnej i intuicyjnej aplikacji mobilnej dla platformy ogłoszeniowej. Głównym celem było dostarczenie użytkownikom narzędzia umożliwiającego szybkie wyszukiwanie, dodawanie i zarządzanie ogłoszeniami w różnych kategoriach. Kluczowym założeniem było zastosowanie technologii Flutter w celu zapewnienia jednolitego doświadczenia na systemach iOS i Android.
PODSUMOWANIE
KATEGORIA
aplikacja mobilna
ZAKRES PRACY
wdrożenie aplikacji mobilnej
TECHNOLOGIE
Flutter, API, iOS, Android
BRANŻA
platforma z ogłoszeniami
CHALLENGE
Optymalizacja wyszukiwarki ogłoszeń – zapewnienie szybkiego wyszukiwania po tytule, lokalizacji oraz kategoriach. Kluczowym problemem było zoptymalizowanie zapytań do bazy danych oraz ograniczenie liczby operacji wymaganych do zwrócenia wyników.
Geolokalizacja i powiadomienia Push – integracja z mapami oraz dostarczenie systemu powiadomień w czasie rzeczywistym. Wyzwaniem była precyzyjna lokalizacja ogłoszeń oraz optymalizacja powiadomień push, aby nie przeciążać systemu i jednocześnie dostarczać istotne informacje użytkownikom. Skorzystaliśmy z Firebase Cloud Messaging oraz Map API, aby usprawnić te funkcjonalności.
Bezpieczna rejestracja i logowanie – implementacja uwierzytelniania z wykorzystaniem Facebooka, Apple ID i Google. Największym problemem było zapewnienie jednolitego i bezpiecznego mechanizmu logowania dla wszystkich platform. Zastosowaliśmy OAuth 2.0 oraz Firebase Authentication, co pozwoliło na skuteczne zarządzanie sesjami użytkowników.
Zarządzanie ogłoszeniami przez użytkowników – stworzenie panelu użytkownika do dodawania, edycji i monitorowania ogłoszeń. Kluczowym problemem było umożliwienie edycji ogłoszeń w czasie rzeczywistym oraz zapewnienie płynnego przetwarzania danych. Implementacja opierała się na State Management Provider oraz Firebase Firestore dla optymalizacji działania.
Integracja z bazą danych – optymalizacja struktury danych i efektywna komunikacja API. Wdrożenie bazy danych wymagało odpowiedniego zaprojektowania modelu danych, aby zapewnić szybkie zapytania i wydajne przechowywanie informacji. Zastosowaliśmy bazę Firebase Firestore oraz dedykowanej aplikacji, która oferuje skalowalność oraz wsparcie dla dynamicznych danych w czasie rzeczywistym.
NASZE ROZWIĄZANIE
Flutter oraz API aplikacji webowej jako główna technologia – wybraliśmy Flutter ze względu na możliwość jednoczesnego tworzenia aplikacji na Android i iOS przy użyciu jednolitego kodu. Flutter pozwala na wykorzystanie jednego kodu źródłowego, co znacząco przyspiesza proces developmentu i ułatwia utrzymanie aplikacji. Dodatkowo, zapewnia natywną wydajność i elastyczność UI dzięki bogatej bibliotece widgetów. W ramach projektu kluczowe było także opracowanie solidnego API aplikacji webowej, które zapewniało płynną wymianę danych między aplikacją mobilną a serwerem. API zostało zaprojektowane w architekturze RESTful, co pozwoliło na łatwą integrację oraz optymalizację przepływu danych.
System dodawania nowych ofert został zaprojektowany tak, aby proces był jak najbardziej intuicyjny i szybki. Użytkownicy mogą wprowadzić szczegóły ogłoszenia, takie jak tytuł, opis, cena, lokalizacja oraz kategoria, a także dodać zdjęcia. Wbudowane mechanizmy walidacji zapewniają, że wszystkie wymagane pola są poprawnie wypełnione przed publikacją. Po dodaniu ogłoszenia użytkownik ma możliwość jego edycji, usunięcia lub wyróżnienia, co pozwala zwiększyć widoczność oferty.
Moduł konta użytkownika jest kluczowym elementem aplikacji, umożliwiającym pełną kontrolę nad profilem oraz ogłoszeniami. Użytkownicy mogą zarządzać swoimi danymi, edytować informacje profilowe, zmieniać zdjęcie oraz aktualizować dane kontaktowe, co pozwala na utrzymanie aktualnych i rzetelnych informacji na platformie. Proces edycji został zaprojektowany tak, aby był szybki i intuicyjny, umożliwiając wprowadzenie zmian bez konieczności opuszczania aplikacji. Wbudowany system wiadomości umożliwia bezpośrednią komunikację między użytkownikami, eliminując konieczność korzystania z zewnętrznych kanałów kontaktu. Wiadomości mogą być wysyłane i odbierane w czasie rzeczywistym. Moduł został również wyposażony w mechanizmy bezpieczeństwa, takie jak dwuetapowa weryfikacja logowania oraz możliwość odzyskania dostępu do konta w przypadku utraty hasła.
Wdrożenie aplikacji mobilnej platformy ogłoszeniowej w technologii Flutter pozwoliło na stworzenie nowoczesnego, wydajnego i intuicyjnego narzędzia, które spełnia oczekiwania użytkowników oraz wymagania rynku. Dzięki zastosowaniu jednolitego kodu źródłowego, możliwe było jednoczesne dostarczenie aplikacji na systemy Android i iOS, co znacząco skróciło czas developmentu oraz ułatwiło późniejsze utrzymanie systemu. Zastosowanie modułowej architektury umożliwiło elastyczne zarządzanie funkcjonalnościami oraz łatwą skalowalność platformy w przyszłości. Wdrożone mechanizmy optymalizacji, takie jak Rest API, zapewniły wysoką wydajność aplikacji. Dzięki intuicyjnemu interfejsowi oraz zaawansowanej wyszukiwarce użytkownicy mogą szybko odnajdywać interesujące ich oferty, a rozbudowany system filtrów pozwala na precyzyjne dopasowanie wyników. Zaimplementowanie modułu konta użytkownika umożliwiło sprawne zarządzanie ogłoszeniami, edycję profilu oraz komunikację między użytkownikami za pomocą wbudowanego systemu wiadomości. Dodatkowo zastosowanie mechanizmów uwierzytelniania zapewnia poziom bezpieczeństwa danych. Całość projektu została zaprojektowana z myślą o wygodzie użytkownika oraz efektywności działania. Wykorzystanie nowoczesnych technologii i najlepszych praktyk programistycznych umożliwiło stworzenie skalowalnej i stabilnej platformy, która w przyszłości może być rozwijana o kolejne funkcjonalności. Dzięki temu aplikacja stanowi kompleksowe rozwiązanie dla użytkowników poszukujących wygodnego sposobu na dodawanie i przeglądanie ogłoszeń, jednocześnie oferując elastyczność i łatwość zarządzania dla administratorów platformy.