Co budujemy

Oprogramowanie tam, gdzie gotowe narzędzie nie wystarcza

W aplikacjach dla ludzi najtrudniejsze nie są ekrany, tylko dane: rozrzucone po PDF‑ach, stronach i systemach, które nie mają porządnego eksportu. Tym zajmujemy się najpierw.

Android · Kotlin

Aplikacje mobilne

Natywne aplikacje z danymi zapisanymi w telefonie, powiadomieniami i widgetem na ekranie głównym.

  • działają bez internetu
  • powiadomienia
  • widget
  • bez reklam i kont
Gminy i miasta

Aplikacje dla samorządów

Harmonogram odpadów pod adres, rozkład jazdy, komunikaty i wydarzenia w jednej aplikacji dla mieszkańców.

  • harmonogram odpadów
  • transport
  • komunikaty
  • przeglądy WCAG 2.1
Python · GitHub Actions

Pozyskiwanie i porządkowanie danych

Wyciągamy dane z PDF‑ów, stron internetowych i nieudokumentowanych API. Zamieniamy je w czyste dane, które aktualizują się same.

  • PDF → dane
  • scraping
  • GTFS
  • codzienne aktualizacje
Dla firm

Narzędzia wewnętrzne i integracje

Panele, formularze, raporty i integracje między systemami, których nikt nie połączył.

  • API
  • n8n
  • raporty PDF
  • Excel
ŹródłaPDF · strony WWW · API · GTFS
ParserPython, uruchamiany co noc w GitHub Actions
Kontrolawalidacja kontraktu, alert przy zmianie formatu
Aplikacjadane w telefonie, działa offline

Tak działa Mój Rybnik. Bez własnego serwera: dane leżą w repozytorium i aktualizują się same.

Ekran główny aplikacji Mój Rybnik: jakość powietrza, najbliższy wywóz odpadów, komunikaty i odjazdy z ulubionego przystanku na jednym ekranie.
Rozkład jazdy w aplikacji Mój Rybnik: lista odjazdów z przystanku z odliczaniem minut do najbliższego autobusu.
Realizacja

Mój Rybnik

Aplikacja miejska, która zbiera w jednym miejscu to, czego mieszkaniec szuka w ciągu dnia: kiedy jedzie autobus, kiedy zabiorą śmieci spod domu, co dzieje się w mieście i czy da się dziś otworzyć okno.

626przystanków w rozkładzie jazdy
71 tys.odjazdów zapisanych w telefonie
880ulic w harmonogramie wywozu odpadów
44linie z wyszukiwarką połączeń i przesiadką
10modułów: od smogu po wyłączenia prądu
0reklam i kont do zakładania
WydarzeniaTransportOdpadyWiadomościJakość powietrzaWyłączenia prąduSportGdzie wyrzucićOstrzeżenia IMGWWidget
Pułapki w danych, które trzeba było rozwiązaćz dokumentacji projektu
  1. GTFSPlik calendar.txt ma wszystkie dni tygodnia ustawione na zero. Kursowanie wynika wyłącznie z calendar_dates.txt, więc zwykły parser pokazałby pusty rozkład.
  2. Odpady · PDFHarmonogram zależy od ulicy, numeru domu i parzystości, a nie od dzielnicy. 16 PDF‑ów, w których puste miesiące to kreska, więc kolumny trzeba wiązać po położeniu na stronie, a nie po tekście.
  3. TauronAPI wyłączeń prądu przyjmuje numer domu, ale go ignoruje i zwraca cały rejon. Adresy filtrujemy po stronie aplikacji, na testach z prawdziwych komunikatów.
  4. CertyfikatyStarsze Androidy nie znają certyfikatu Certum, którego używają GIOŚ, przewoźnik i Tauron. Rozkład jazdy nie pobierał się wcale, bez żadnego błędu. Certyfikat jest teraz dołączony do aplikacji.
  5. NazwyW Polsce jest pięć miejscowości o nazwie Rybnik. Pierwsza zwracana przez API Taurona to wieś w województwie łódzkim.
Jak pracujemy

Zaczynamy od danych, nie od makiety

Krok 1

Dane

Sprawdzamy źródła: skąd pochodzą, w jakiej formie, jak często się zmieniają i czy da się je pobierać automatycznie.

Krok 2

Prototyp

Pierwszy działający ekran na prawdziwych danych. Od razu widać, czego brakuje w źródłach.

Krok 3

Aplikacja

Pełne moduły, powiadomienia, tryb offline i publikacja w Google Play.

Krok 4

Utrzymanie

Pilnujemy źródeł danych, poprawiamy parsery przy zmianach formatu, aktualizujemy pod nowe wersje Androida.

Dla kogo

Dla tych, którzy mają dane, ale nie mają ich w telefonie

Samorządy

Gminy i miasta

Aplikacja dla mieszkańców, harmonogram odpadów w formie danych zamiast PDF‑u i przegląd dostępności cyfrowej serwisu.

Spółki komunalne

Przewoźnicy i usługi komunalne

Rozkłady jazdy, awarie, komunikaty. Dane, które już macie, podane mieszkańcom w telefonie.

Firmy

Narzędzia na własny użytek

Aplikacja wewnętrzna, panel, automatyczny raport albo integracja systemów, które ze sobą nie rozmawiają.

Kontakt

Opowiedz o projekcie

Napisz, jakie dane chcesz udostępnić albo jaki proces zamienić w aplikację. Zaczniemy od sprawdzenia źródeł: skąd pochodzą, jak często się zmieniają i czy da się je pobierać automatycznie.

Zadzwoń +48 732 288 153
Zadzwoń
Napisz kontakt@admin-stack.com
Napisz e‑mail