Ансопедия пользовательская служба
Пользовательская служба Ansopedia - это бэкэнд -сервис, ответственный за управление учетными записями пользователей и аутентификации в рамках платформы обучения Ansopedia. Он предоставляет функции, такие как:
- Регистрация и вход пользователей: позволяет пользователям создавать новые учетные записи и надежно входить в платформу.
- Управление пользователями: предлагает API для управления профилями пользователей, предпочтений и потенциально пользовательских ролей (если существуют уровни разрешения).
- Аутентификация: реализует надежные механизмы аутентификации (например, токены JWT) для обеспечения доступа к функциям и ресурсам ансопедии.
- Интеграция: сотрудничает с другими услугами, такими как API Ansopedia Studio для управления разрешениями пользователей для создания и взаимодействия контента.
Понимание сценариев
Прежде чем мы погрузимся в шаги, давайте разберем сценарии в вашем файле package.json :
- Построить: Transpiles TypeScript Код в JavaScript.
- DEV: Запускает сервер разработки с Nodemon для горячей перезагрузки.
- Lint: Lints кодовая база с использованием Eslint.
- Lint: исправление: автоматически исправляет ошибки Lint.
- Подготовьте: запускает Husky Pre-Commit Hooks.
- Предварительный тест: создает проект перед проведением тестов.
- Краткий: Проверка: проверяет форматирование кода.
- Краткий: исправить: исправляет форматирование кода автоматически.
- Prod: устанавливает Node_env для производства, создает проект и запускает сервер.
- Начало: запускает сервер разработки с помощью TS-узла.
- Тест: запускает тестовый набор.
Среда развития
Установить зависимости:
Начать сервер разработки:
Эта команда запустит сервер Nodemon, который будет следить за изменениями в файлах TypeScript и автоматически перезапустите сервер.
Производственная среда
Запустите производственный сервер:
Эта команда устанавливает NODE_ENV для production , создает проект и запускает сервер.
Тестовая среда
Запустите тесты:
Дополнительные сценарии
- Linting:
- Проверьте наличие проблем в стиле кода:
pnpm lint - Автоматическое исправление проблем стиля кода:
pnpm lint:fix
- Форматирование:
- Проверьте наличие вопросов форматирования кода:
pnpm prettier:check - Автоматическое исправление вопросов форматирования кода:
pnpm prettier:fix
Лицензия
Способствуя, вы соглашаетесь с тем, что ваши взносы будут лицензироваться в соответствии с лицензией проекта.
Внося
Мы приветствуем вклад в Ansopedia Creator Studio! Пожалуйста, прочитайте наш Appling.md для получения более подробной информации.
Нормы поведения
У нас есть CODE_OF_CONDUCT.MD, который описывает наши ожидания относительно поведения в сообществе. Пожалуйста, прочтите это.
Участники
Мы приветствуем и признаем всех участников в студии Ansopedia Creator.
Настройка ключей безопасности
Для подписания и проверки токена JWT эта служба требует паров ключей RSA.
Настройка разработки
- Создайте каталог
keys в корне проекта - Запустите скрипт генерации ключей:
Производственная установка
Для производственных сред, ключи должны быть:
- Сгенерировано безопасно в автономном режиме
- Хранятся в безопасной службе управления ключами
- Устанавливается как секреты в контейнере/окружающей среде
- Никогда не привержен контролю версий
Ожидаемые ключевые файлы:
-
/keys/private.pem - RSA Private Key (держите в безопасности!) -
/keys/public.pem - RSA Public Key (может быть распределен)