
Start UI [Web] - это самоуверенный репозиторий стартера, созданный и поддерживаемый командой Bearstudio и другими участниками. Он представляет современный стек нашей команды, который мы используем при создании веб-приложений для наших клиентов.
Для получения подробной информации о том, как использовать этот проект, пожалуйста, обратитесь к документации. Документация содержит всю необходимую информацию об установке, использовании и некоторых руководствах.
В прямом эфире демонстрации того, что вы получите при запуске проекта с началом пользовательского интерфейса [Web], доступна на demo.start-ui.com.

? TypeScript, ⚛ React, ⚫ nextjs, ⚡ ui чакры,? TRPC, ▲ Prisma,? ️ Tanstack запрос, сборник рассказов,? Драматург,? Реагировать форму крюка, React i18next
pnpm create start-ui --web myAppЭто составит новую папку с последней версией Start UI [Web]?
.env.example в новый файл .env и обновить переменные среды cp .env.example .envПримечание
Быстрые советы по местному развитию
pnpm installpnpm dk:initПримечание
Не хотите использовать Docker?
Настройка базы данных PostgreSQL (локально или онлайн) и замените переменную среды DATABASE_URL . Затем вы можете запустить pnpm db:push на обновление схемы базы данных, а затем запустить pnpm db:seed , чтобы заселить базу данных.
# Run the database in Docker (if not already started)
pnpm dk:start
# Run the development server
pnpm devВ разработке электронные письма не будут отправлены и будут поймать MailDev.
Пользовательский интерфейс Maildev доступен по телефону 0,0.0.0:1080.
Шаблоны электронных писем построены с помощью компонентов react-email в папке src/emails .
Вы можете предварительно просмотреть шаблон электронной почты по адресу http://localhost:3000/devtools/email/{template} , где {template} - это имя файла шаблона в папке src/emails/templates .
Пример: код входа в систему
Добавьте язык в URL -адрес предварительного просмотра, например http://localhost:3000/devtools/email/{template}/{language} , где {language} - языковой ключ ( en , fr , ...)
Вы можете добавить параметры поиска в URL -адрес предварительного просмотра в качестве реквизита в шаблон. http://localhost:3000/devtools/email/{template}/?{propsName}={propsValue}
pnpm storybookПри добавлении или обновлении компонентов тем, вариаций компонентов, размеров, цветов и других оснований темы вы можете расширить виды внутренней темы, чтобы обеспечить хорошее автозаполнение.
Просто запустите следующую команду после обновления темы:
pnpm theme:generate-typing Поместите пользовательские файлы SVG в папку src/components/Icons/svg-sources , а затем запустите следующую команду:
pnpm theme:generate-iconsПредупреждение
Все значки SVG должны быть файлами SVG, префиксированными icon- (Пример: icon-externel-link ) с размером 24x24px , только одна форма и заполненная цветом #000 (будет заменена на currentColor ).
Вы можете обновить ключ хранилища, используемый для обнаружения цветового режима, обновляя эту константу в файле src/theme/config.ts :
export const COLOR_MODE_STORAGE_KEY = 'start-ui-color-mode' ; // Update the key according to your needsТесты E2E настроены с драматургом.
pnpm e2e # Run tests in headless mode, this is the command executed in CI
pnpm e2e:ui # Open a UI which allow you to run specific tests and see test execution Тесты написаны в папке e2e ; Существует также папка e2e/utils , которая содержит некоторые использования, чтобы помочь записать тесты.
Установите переменную env NEXT_PUBLIC_ENV_NAME с именем среды.
NEXT_PUBLIC_ENV_NAME="staging"
NEXT_PUBLIC_ENV_EMOJI="?"
NEXT_PUBLIC_ENV_COLOR_SCHEME="teal"
Мы рекомендовали использовать плагин I18N Ally для кода VS для управления переводами.
Создать или отредактировать файл .vscode/settings.json
{
"i18n-ally.localesPaths" : [ " src/locales " ],
"i18n-ally.keystyle" : " nested " ,
"i18n-ally.enabledFrameworks" : [ " general " , " react " , " i18next " ],
"i18n-ally.namespace" : true ,
"i18n-ally.defaultNamespace" : " common " ,
"i18n-ally.extract.autoDetect" : true ,
"i18n-ally.keysInUse" : [ " common.languages.* " ]
}pnpm install
pnpm storybook:build # Optional: Will expose the Storybook at `/storybook`
pnpm build
pnpm startstart-ui-web на имя вашего проекта) docker build -t start-ui-web .
start-ui-web на имя вашего проекта) docker run -p 80:3000 start-ui-web
Заявка будет выявлена на порту 80 (http: // localhost)