{"id":26473030,"url":"https://github.com/profcomff/rental-ui","last_synced_at":"2026-03-02T10:06:42.396Z","repository":{"id":282205162,"uuid":"941134610","full_name":"profcomff/rental-ui","owner":"profcomff","description":"Фронтенд сервиса проката предметов в Профкоме","archived":false,"fork":false,"pushed_at":"2025-12-24T13:40:08.000Z","size":373,"stargazers_count":1,"open_issues_count":3,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-12-25T05:32:57.554Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Vue","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/profcomff.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-03-01T15:17:53.000Z","updated_at":"2025-12-24T13:40:10.000Z","dependencies_parsed_at":null,"dependency_job_id":"aa0332ae-18de-4a69-8c44-916fb443a777","html_url":"https://github.com/profcomff/rental-ui","commit_stats":null,"previous_names":["profcomff/rental-ui"],"tags_count":0,"template":false,"template_full_name":"profcomff/vuets-template","purl":"pkg:github/profcomff/rental-ui","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/profcomff%2Frental-ui","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/profcomff%2Frental-ui/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/profcomff%2Frental-ui/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/profcomff%2Frental-ui/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/profcomff","download_url":"https://codeload.github.com/profcomff/rental-ui/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/profcomff%2Frental-ui/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29998180,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-02T09:59:02.300Z","status":"ssl_error","status_checked_at":"2026-03-02T09:59:02.001Z","response_time":60,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-03-19T21:50:40.892Z","updated_at":"2026-03-02T10:06:42.389Z","avatar_url":"https://github.com/profcomff.png","language":"Vue","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Rental UI\n\nФронтенд для приложения по аренде вещей на Vue.js с TypeScript и Vite.\n\nБольшая часть команд и инструкций написаны для Linux и MacOS, но должны работать и на Windows.\n\n---\n\n## Зависимости\n\n- **Node.js** \u003e= v18 – среда выполнения JavaScript/TypeScript\n- **PNPM** – менеджер пакетов (можно использовать NPM, но мы рекомендуем PNPM)\n- **Vue.js** – фреймворк для фронтенда\n- **Vite** – инструмент сборки и локального сервера\n- **Docker** – для сборки и деплоя\n\n---\n\n## Разработка\n\n1. Склонируй проект:\n    1. `cd /path/to/folder`\n    2. `git clone https://github.com/profcomff/rental-ui.git project-folder-name`\n\n2. Установи зависимости: `pnpm install`\n\n3. Запусти локальный dev-сервер: `pnpm dev`\n\nПриложение будет доступно на http://localhost:5173.\n\n### Форматирование\n\n1. Открыть файл с расширением `.vue`.\n2. Открыть палитру команд (Help \u003e Show All Commands или `Ctrl+Shift+P`)\n3. Ввести и выбрать `Format document with`.\n4. Выбрать `Configure Default Formatter`.\n5. Выбрать `Prettier`.\n\nТеперь можно форматировать файлы с помощью `Shift+Alt+F`. Еще можно настроить автоформатирование при сохранении файла (`File \u003e Preferences \u003e Settings`, Format on save).\n\n### Локальная авторизация\n\nДля разработки с определенными скоупами можно проделать следующие шаги:\n\n1. Переходим в [тестовое приложение](https://app.test.profcomff.com/admin) и копируем токен.\n2. Вставляем токен в .env.development\n3. В `/src/store/profileStore.ts` в функции `setupDevAdminSession` проверяем, есть ли все нужные нам скоупы.\n4. В `src/App.vue` в хуке `onMounted`:\n\n    ```typescript\n    if (import.meta.env.MODE === 'development') await profileStore.setupDevAdminSession(null);\n    ```\n\n\u003e ⚠️ Важно: токен в .env.development не коммитим — он только для локального девелопмента.\n\nМетод создает сессию через API с заданными скоупами. Для создания сессий с другим набором скоупов можно писать аналогичные методы.\n\n### Интеграция с \"Твой ФФ\"\n\nКогда приложение подключено к Твой ФФ, оно ожидает увидеть токен, скоупы и всю дополнительную информацию в параметрах URL. Для этого в `src/store/profileStore.ts` есть метод `fromUrl` -- его стоит вызывать всегда кроме режима разработки.\n\n### Пулл реквесты\n\nПеред пулл-реквестом:\n\n1. Проверь стили: `pnpm check`\n2. _Опционально_: подробная версия `pnpm check:hard`\n3. Заполни шаблон пулл-реквеста: что, как и зачем сделано.\n4. Запроси ревью у команды.\n\n## Сборка и деплой\n\n### Сборка и запуск через Docker:\n\n```bash\nmake # создаёт Docker образ\nmake run # запускает приложение\n```\n\nDockerfile и docker-compose уже настроены для простого деплоя. В .env указываем базовый URL API:\n\n```env\nVITE_API_BASE_URL=https://api.example.com\n```\n\n### CI/CD\n\nGitHub Actions автоматически проверяет код на PR: eslint, prettier, stylelint\n\nАвтосборка: коммит в main создаёт Docker-образ через workflow .github/workflows/build_and_publish.yml\n\n### Ссылки\n\nAPI документация -- [Swagger](https://api.test.profcomff.com/?urls.primaryName=rental)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprofcomff%2Frental-ui","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprofcomff%2Frental-ui","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprofcomff%2Frental-ui/lists"}