Вклад в PocketBase
Спасибо, что нашли время улучшить PocketBase!
В этом документе описывается, как подготовить PR для изменения в основном репозитории.
Если вы ещё этого не сделали, вы можете разветвить основной репозиторий и клонировать свою вилку, чтобы работать локально:
git clone https://github.com/your_username/pocketbase.git
[!ВАЖНО] Рекомендуется создать новую ветку от master для каждого исправления и функции. Это необходимо, если вы планируете отправить несколько PR, чтобы сохранить изменения отдельно для проверки, пока они в конечном итоге не будут объединены.
PocketBase распространяется как пакет Go, а это значит, что для запуска проекта вам нужно будет создать программу Go main
, которая импортирует пакет.
Репозиторий уже включает такую программу, расположенную в examples/base
, которая также используется для готовых исполняемых файлов.
Итак, предположим, что вы уже внесли некоторые изменения в код PocketBase на Go и теперь хотите их запустить:
examples/base
.go run main.go serve
.Это запустит веб-сервер на http://localhost:8090
со встроенным готовым пользовательским интерфейсом администратора из ui/dist
. И всё!
Прежде чем отправлять PR в основной репозиторий, рекомендуется:
Добавить модульные/интеграционные тесты для ваших изменений (мы используем стандартный пакет testing
Go). Чтобы запустить тесты, вы можете выполнить (находясь в корневом каталоге проекта):
go test ./...
# или используя Makefile
make test
Запустить линтер — golangci (см. как установить):
golangci-lint run -c ./golangci.yml ./...
# или с помощью Makefile
make lint
Пользовательский интерфейс администратора PocketBase представляет собой одностраничное приложение (SPA), созданное с использованием Svelte и Vite.
Чтобы запустить пользовательский интерфейс администратора:
ui
.npm install
, чтобы установить зависимости узла.npm run dev
Вы можете открыть браузер и получить доступ к работающему пользовательскому интерфейсу администратора по адресу http://localhost:3000
.
Поскольку пользовательский интерфейс администратора является всего лишь клиентским приложением, вам необходимо также запустить сервер PocketBase в фоновом режиме (либо вручную запустив examples/base/main.go
, либо скачав готовый исполняемый файл).
[!ПРИМЕЧАНИЕ] По умолчанию пользовательский интерфейс администратора ожидает, что серверная часть будет запущена на
http://localhost:8090
, но вы можете изменить это, создав новый файлui/.env.development.local
с переменнойPB_BACKEND_URL = YOUR_ADDRESS
внутри него.
Каждое изменение, которое вы вносите в пользовательском интерфейсе администратора, должно автоматически отражаться в браузере по адресу http://localhost:3000
без перезагрузки страницы.
Как только вы закончите вносить изменения, вы должны собрать пользовательский интерфейс администратора с помощью npm run build
, чтобы его можно было встроить в пакет Go. И всё — вы можете отправить свой PR в основной репозиторий PocketBase.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )