Jak zacząć pracę z Open Mercato
Uruchom Open Mercato na swoim komputerze, zaloguj się do panelu i dodaj pierwszą stronę we własnym module.
Open Mercato 0.7.0 · instalacja lokalna · macOS / Linux / WSL2
Przygotuj narzędzia
Zainstaluj Node.js 24.x oraz Docker z Compose. Uruchom Docker Desktop, jeśli z niego korzystasz. Na Windowsie wykonuj polecenia w terminalu WSL2 z włączoną integracją Dockera.
node --version
docker compose version
corepack enableNode powinien zwrócić v24.x.x, a Compose swój numer wersji. corepack enable udostępnia polecenie Yarn; projekt wybierze wersję 4.17.1.
Utwórz aplikację
W katalogu, w którym trzymasz projekty, uruchom poniższe polecenia. Powstanie nowy folder mercato-demo.
npx create-mercato-app@0.7.0 \
mercato-demo \
--preset classic \
--agents none \
--no-init-git
cd mercato-demo
yarn --versionclassic wybiera standardowy zestaw modułów. --agents none pomija konfigurację asystentów AI, a --no-init-git pomija tworzenie repozytorium Git. Na pytanie npm o pobranie pakietu odpowiedz y.
Jesteś teraz w katalogu aplikacji. yarn --version powinno zwrócić 4.17.1. Wszystkie kolejne polecenia wykonuj tutaj.
Uruchom bazę i usługi
Skopiuj konfigurację lokalną i uruchom usługi z dołączonego pliku Compose. PostgreSQL przechowuje dane, Redis obsługuje m.in. pamięć podręczną i kolejki, a Meilisearch służy do wyszukiwania.
cp .env.example .env
docker compose up -d
docker compose psW nowym projekcie ustawienia w .env pasują do tych kontenerów. Baza działa pod adresem:
DATABASE_URL=postgres://postgres:postgres@localhost:5432/open-mercatoPoczekaj, aż docker compose ps pokaże trzy działające usługi, a PostgreSQL status healthy. To konfiguracja do pracy na własnym komputerze; zawiera przykładowe hasła.
Uruchom aplikację i zaloguj się
yarn install
yarn setupyarn install pobiera zależności. yarn setup generuje pliki aplikacji, tworzy strukturę bazy, dodaje dane początkowe i uruchamia serwer. Zostaw ten terminal otwarty.
Otwórz localhost:3000/backend. W tej lokalnej instalacji konto administratora to superadmin@acme.com, a hasło to secret. Po zalogowaniu zobaczysz panel aplikacji.
Dodaj własną stronę
Zatrzymaj serwer skrótem Ctrl+C. W edytorze utwórz poniższe trzy pliki wraz z katalogami. Moduł hello doda prostą stronę dostępną po zalogowaniu.
export const metadata = {
name: 'hello',
title: 'Hello',
version: '0.1.0',
}
export const metadata = {
requireAuth: true,
pageTitle: 'Hello',
}
import { Page, PageHeader, PageBody } from '@open-mercato/ui/backend/Page'
export default function HelloPage() {
return (
<Page>
<PageHeader title="Hello, Mercato" />
<PageBody>
<p>My first Open Mercato page.</p>
</PageBody>
</Page>
)
}
W src/modules.ts dodaj poniższy wpis wewnątrz tablicy enabledModules, obok istniejących modułów:
{ id: 'hello', from: '@app' },Teraz wygeneruj rejestr modułów i ponownie uruchom aplikację:
yarn generate
yarn devWejdź na localhost:3000/backend/hello. Powinien pojawić się nagłówek Hello, Mercato. Zmień tekst akapitu w page.tsx i zapisz plik, żeby zobaczyć zmianę w przeglądarce.
Wróć do pracy następnego dnia
Kolejnego dnia otwórz terminal w katalogu mercato-demo i uruchom:
docker compose start
yarn devPo pracy zatrzymaj serwer przez Ctrl+C, a usługi poleceniem poniżej. Dane pozostaną na dysku. Zwykłe wznowienie pracy nie wymaga ponownego yarn setup.
docker compose stopJeśli coś nie działa
Brakuje Corepack lub Yarn ma wersję 1.x
Jeśli brakuje Corepack, zainstaluj go poniższym poleceniem. Następnie włącz Yarn i sprawdź jego wersję w katalogu aplikacji.
npm install --global corepack
corepack enable
yarn --versionJeśli instalacja zgłasza konflikt z istniejącym poleceniem Yarn, usuń jego poprzednią globalną instalację, np. npm uninstall --global yarn, i ponów instalację Corepack.
Baza nie odpowiada lub port 5432 jest zajęty
Najpierw sprawdź docker compose ps i docker compose logs postgres. Przy zajętym porcie zmień w .env oba poniższe ustawienia, po czym wykonaj docker compose up -d i ponów yarn setup.
POSTGRES_PORT=5433
DATABASE_URL=postgres://postgres:postgres@localhost:5433/open-mercatoWłasna strona zwraca 404
Sprawdź nazwę folderu src/modules/hello, wpis hello w enabledModules oraz domyślny eksport funkcji w backend/page.tsx. Zatrzymaj serwer, uruchom yarn generate, następnie yarn dev. Adres tej strony to /backend/hello.