Grzybcio Wiki

Przegląd

Frontend w Next.js, na którym gracze przeglądają oferty rynku z przeglądarki — bez wchodzenia na serwer.

Ostatni element układanki wokół GrzybcioRynku. Aplikacja w Next.js, którą hostujesz sam, pokazuje gracom rynek z poziomu przeglądarki.

Droga danych

Gracz w przeglądarce
        │
        ▼
Ta strona (Next.js)           ← klucz API zostaje TU, po stronie serwera
        │
        ▼
GrzybcioRynekWeb  :8765       ← most REST + SSE
        │
        ▼
GrzybcioRynek                 ← rynek na serwerze Minecraft

Klucz API nigdy nie trafia do przeglądarki

Przeglądarka odpytuje serwer Next.js (same-origin), a ten dopiero dokłada klucz i rozmawia z mostem. Dzięki temu klucz zostaje w twojej infrastrukturze.

To dlatego MARKET_API_KEY nie ma przedrostka NEXT_PUBLIC_ — wszystko z tym przedrostkiem ląduje w kodzie wysyłanym do przeglądarki.

Co pokazuje

StronaZawartość
/Rynek — lista ofert
/categoriesPrzeglądanie po kategoriach
/statsStatystyki rynku
/historyHistoria transakcji
/favoritesUlubione oferty
/market/listing/[id]Szczegóły pojedynczej oferty
/market/player/[username]Profil gracza i jego oferty

Ulubione bez konta

Ulubione zapisywane są lokalnie w przeglądarce gracza. Nie ma rejestracji, logowania ani bazy użytkowników.

Konsekwencja: ulubione nie przenoszą się między urządzeniami i znikają po wyczyszczeniu danych przeglądarki. To świadomy kompromis — zero kont do utrzymania i zero danych osobowych do przechowywania.

Aktualizacje na żywo

Domyślnie strona podłącza się do strumienia SSE mostu i dostaje zmiany od razu. Na hostingach, które nie znoszą długich połączeń, przełącza się na odpytywanie co kilkanaście sekund.

Dwa języki

Interfejs startuje po angielsku, z przełącznikiem na polski. To dotyczy samego interfejsu — nazwy przedmiotów przychodzą z serwera.

Czego wymaga

WymaganieSzczegóły
Node.js 20+ albo DockerDo uruchomienia strony
GrzybcioRynek 1.0.3+Na serwerze Minecraft
GrzybcioRynekWebMost REST — instalacja

Na podstawie kodu

Opis powstał na podstawie repozytorium Grzybcios/GrzybcioRynekWeb-strona — .env.example, docker-compose.yml i struktura src/app.

Dalej

Na tej stronie