Рейтинг здоровья открытых репозиториев
Оценка от 0 до 100 по данным SourceCraft.Оценка от 0 до 100 по данным SourceCraft: насколько проект жив, документирован и отзывчив к пользователям.
4 категории из 6, пересчёт раз в сутки. Как считается
Оценка по открытым данным: 4 категории из 6, пересчёт раз в сутки, лайки на место не влияют. Как считается
| Сравнить | Место | Репозиторий | Оценка | 90 дней | Категории | Последний коммит | Лайки | Язык |
|---|---|---|---|---|---|---|---|---|
| 13470–162589481Опустился на 9481 место за 30 дней | Лендинг для ИТ-стартапа | 25 | 51 день назад | 0 | HTML | |||
| 13470–16258 | 25 | 271 день назад | 0 | |||||
| 13470–162583253Опустился на 3253 места за 30 дней | 25 | 340 дней назад | 0 | |||||
| 13470–162583253Опустился на 3253 места за 30 дней | 25 | 336 дней назад | 0 | |||||
| 13470–162581476Опустился на 1476 мест за 30 дней | 25 | 334 дня назад | 0 | |||||
| 13470–162583254Опустился на 3254 места за 30 дней | 25 | 528 дней назад | 0 | JavaScript | ||||
| 13470–16258 | Лаборатория кода: учебные проекты, автоматизация рутины, учебные материалы по программированию и наброски на Python | 25 | 131 день назад | 0 | ||||
| 13470–162583253Опустился на 3253 места за 30 дней | 25 | 338 дней назад | 0 | |||||
| 13470–162583253Опустился на 3253 места за 30 дней | Тестовый репозиторий | 25 | 259 дней назад | 0 | HTML | |||
| 13470–16258 | / | 25 | 398 дней назад | 0 | ||||
| 13470–16258 | Тестовый+репозиторий | 25 | 141 день назад | 0 | ||||
| 13470–162583253Опустился на 3253 места за 30 дней | 25 | 337 дней назад | 0 | |||||
| 13470–162583253Опустился на 3253 места за 30 дней | Тестовый репозиторий | 25 | 324 дня назад | 0 | HTML | |||
| 13470–16258 | 25 | 296 дней назад | 0 | |||||
| 13470–16258 | for cpp | 25 | 284 дня назад | 0 | ||||
| 13470–16258 | 1. Структура репозитория Рекомендуемая структура папок: text Переносить Свернуть Копировать /src /core /calculator # чистая логика расчётов (без UI и API) - calculate.ts - types.ts - utils.ts /api - handler.ts # основной хендлер (FastAPI/Express/etc.) - routes.ts # роуты - validators.ts # валидация запросов /catalog - sync.ts # импорт/синхронизация каталога (CSV/API) - search.ts # поиск и фильтрация /tests - calculator.spec.ts - api.spec.ts /docs - architecture.md - api-spec.md - data-model.md /data - sample-catalog.json - sample-catalog.csv /scripts - sync-catalog.sh # скрипт синхронизации /docker - Dockerfile - docker-compose.yml .gitignore README.md package.json / pyproject.toml 2. Стек технологий (рекомендуемый) Язык: TypeScript (Node.js) или Python (FastAPI) — выбрать один. HTTP: Express (TS) или FastAPI (Py). Валидация: Zod (TS) / Pydantic (Py). Тестирование: Vitest (TS) / pytest (Py), плюс unit-тесты для формул. CI/CD: встроенный в SourceCraft пайплайн (lint → test → build → deploy). Контейнеризация: Docker. Хранение данных каталога: локальный JSON/SQLite для MVP; в будущем — внешняя БД. 3. Требования к функционалу 3.1. Ядро калькулятора (src/core/calculator) Должны быть чистые функции без побочных эффектов: calculateRoomMetrics(room) → периметр, площадь стен, площадь проёмов, полезная площадь. calculatePatternLength(height, rapport) → длина полотна с учётом раппорта. calculateRollsNeeded(params) → количество полотен, рулонов, стоимость, запас. Все расчёты должны быть детерминированными и покрытыми тестами. 3.2. API (src/api) Эндпоинты: POST /api/calculate — принимает параметры комнаты и рулона, возвращает расчёт. GET /api/catalog — список товаров с фильтрами (ширина, раппорт, цена, наличие). POST /api/sync-catalog — загрузка каталога из CSV/JSON или триггер синхронизации. Валидация входных данных обязательна (диапазоны, типы, обязательность полей). 3.3. Каталог (src/catalog) Поддержка двух режимов: Импорт из файла: CSV/JSON с жёсткой схемой (см. ниже). Синхронизация: скрипт, который обновляет локальные данные из внешнего источника. Поиск и фильтрация по: ширине рулона, раппорту, цене, наличию, коллекции, цвету (текстовый поиск). 4. Модель данных каталога (JSON-пример) json Переносить Свернуть Копировать [ { "article": "OB-12345", "name": "Обои Коллекция Весна", "collection": "Весна 2026", "roll_width_m": 1.06, "roll_length_m": 10, "rapport_m": 0.64, "price_rub": 2500, "stock_qty": 42, "join_type": "смещённая", "color": "бежевый", "material": "флизелин" } ] Для CSV — строго фиксированные заголовки колонок, совпадающие с JSON-ключами. 5. Формулы и правила расчёта (для реализации в коде) Периметр: P=2⋅(длина+ширина). Площадь стен: S стен =P⋅высота. Площадь проёмов: S проёмов =∑(ширина⋅высота) по всем окнам и дверям. Полезная площадь: S полезная =S стен −S проёмов . Длина полотна: L полотно =высота+(раппорт⋅n), где n — минимальное целое, при котором стык совпадает. Количество полотен: N полотен =⌈S полезная /(L полотно ⋅ширина)⌉. Количество рулонов: N рулонов =⌈(N полотен ⋅L полотно ⋅ширина)/(ширина⋅длина)⌉, округление вверх. Стоимость: Стоимость=N рулонов ⋅цена. Запас: коэффициент (по умолчанию 1.10, диапазон 1.05–1.20). Округления выполнять через Math.ceil (или аналог) и проверять на граничных значениях. 6. Требования к качеству и тестированию Все формулы вынести в отдельные функции и покрыть юнит‑тестами. Добавить негативные тесты: отрицательные значения, нули, слишком большие числа. Для API — тесты валидации и проверки кодов ответов. В CI SourceCraft: lint → unit-тесты → сборка образа → (опционально) интеграционные тесты. Примеры тестовых кейсов: Комната 4×5 м, высота 2.7 м, 1 окно 1.5×1.2 м, 1 дверь 0.9×2.1 м. Рулон 1.06×10 м, раппорт 0.64 м, цена 2500 руб. Ожидаемый результат: количество рулонов и стоимость (с запасом 10 %). | 25 | 113 дней назад | 0 | ||||
| 13470–162584988Опустился на 4988 мест за 30 дней | Дашборд производителей и объемов производства | 25 | 166 дней назад | 0 | HTML | |||
| 13470–16258 | 25 | 123 дня назад | 0 | |||||
| 13470–16258 | Albion Online network analyzer | 25 | 289 дней назад | 0 | ||||
| 13470–16258 | Тестовый репозиторий | 25 | 289 дней назад | 0 | ||||
| 13470–16258 | Тестовый репозиторий | 25 | 44 дня назад | 0 | ||||
| 13470–162583253Опустился на 3253 места за 30 дней | Демонстрационный лендинг для онбординга в SourceCraft | 25 | 270 дней назад | 0 | HTML | |||
| 13470–162584988Опустился на 4988 мест за 30 дней | 25 | 188 дней назад | 0 | Python | ||||
| 13470–16258 | 25 | 369 дней назад | 0 | |||||
| 13470–1625810677Опустился на 10677 мест за 30 дней | 25 | 47 дней назад | 0 | Python |
- 13470–16258roflyanxgod/landing-page25
Лендинг для ИТ-стартапа
HTML51 день назад0лайков - 13470–16258rogov-ks-phystech-edu/hw025271 день назад0лайков
- 13470–16258rogoveo/tree25340 дней назад0лайков
- 13470–16258roman-barlos/sc-quest-christmas-tree25336 дней назад0лайков
- 13470–16258roman-barlos/sc-serve-salad25334 дня назад0лайков
- 13470–16258roman-kuzmenko96/test25JavaScript528 дней назад0лайков
- 13470–16258roman-lab/roman-lab25
Лаборатория кода: учебные проекты, автоматизация рутины, учебные материалы по программированию и наброски на Python
131 день назад0лайков - 13470–16258romanoffbahdan/name-coderun2525338 дней назад0лайков
- 13470–16258romanova211080/proekty25
Тестовый репозиторий
HTML259 дней назад0лайков - 13470–16258romaobraztzov/safe25
/
398 дней назад0лайков - 13470–16258romm1-rut/vpochte25
Тестовый+репозиторий
141 день назад0лайков - 13470–16258rosi-kanal2017/happy-tree25337 дней назад0лайков
- 13470–16258rossomaaha/cherep25
Тестовый репозиторий
HTML324 дня назад0лайков - 13470–16258rostislav-kassikhin/pestraia-kompaniia25296 дней назад0лайков
- 13470–16258roz4lina1/first-rep25
for cpp
284 дня назад0лайков - 13470–16258roza-1040/kalkuliator-oboev25
1. Структура репозитория Рекомендуемая структура папок: text Переносить Свернуть Копировать /src /core /calculator # чистая логика расчётов (без UI и API) - calculate.ts - types.ts - utils.ts /api - handler.ts # основной хендлер (FastAPI/Express/etc.) - routes.ts # роуты - validators.ts # валидация запросов /catalog - sync.ts # импорт/синхронизация каталога (CSV/API) - search.ts # поиск и фильтрация /tests - calculator.spec.ts - api.spec.ts /docs - architecture.md - api-spec.md - data-model.md /data - sample-catalog.json - sample-catalog.csv /scripts - sync-catalog.sh # скрипт синхронизации /docker - Dockerfile - docker-compose.yml .gitignore README.md package.json / pyproject.toml 2. Стек технологий (рекомендуемый) Язык: TypeScript (Node.js) или Python (FastAPI) — выбрать один. HTTP: Express (TS) или FastAPI (Py). Валидация: Zod (TS) / Pydantic (Py). Тестирование: Vitest (TS) / pytest (Py), плюс unit-тесты для формул. CI/CD: встроенный в SourceCraft пайплайн (lint → test → build → deploy). Контейнеризация: Docker. Хранение данных каталога: локальный JSON/SQLite для MVP; в будущем — внешняя БД. 3. Требования к функционалу 3.1. Ядро калькулятора (src/core/calculator) Должны быть чистые функции без побочных эффектов: calculateRoomMetrics(room) → периметр, площадь стен, площадь проёмов, полезная площадь. calculatePatternLength(height, rapport) → длина полотна с учётом раппорта. calculateRollsNeeded(params) → количество полотен, рулонов, стоимость, запас. Все расчёты должны быть детерминированными и покрытыми тестами. 3.2. API (src/api) Эндпоинты: POST /api/calculate — принимает параметры комнаты и рулона, возвращает расчёт. GET /api/catalog — список товаров с фильтрами (ширина, раппорт, цена, наличие). POST /api/sync-catalog — загрузка каталога из CSV/JSON или триггер синхронизации. Валидация входных данных обязательна (диапазоны, типы, обязательность полей). 3.3. Каталог (src/catalog) Поддержка двух режимов: Импорт из файла: CSV/JSON с жёсткой схемой (см. ниже). Синхронизация: скрипт, который обновляет локальные данные из внешнего источника. Поиск и фильтрация по: ширине рулона, раппорту, цене, наличию, коллекции, цвету (текстовый поиск). 4. Модель данных каталога (JSON-пример) json Переносить Свернуть Копировать [ { "article": "OB-12345", "name": "Обои Коллекция Весна", "collection": "Весна 2026", "roll_width_m": 1.06, "roll_length_m": 10, "rapport_m": 0.64, "price_rub": 2500, "stock_qty": 42, "join_type": "смещённая", "color": "бежевый", "material": "флизелин" } ] Для CSV — строго фиксированные заголовки колонок, совпадающие с JSON-ключами. 5. Формулы и правила расчёта (для реализации в коде) Периметр: P=2⋅(длина+ширина). Площадь стен: S стен =P⋅высота. Площадь проёмов: S проёмов =∑(ширина⋅высота) по всем окнам и дверям. Полезная площадь: S полезная =S стен −S проёмов . Длина полотна: L полотно =высота+(раппорт⋅n), где n — минимальное целое, при котором стык совпадает. Количество полотен: N полотен =⌈S полезная /(L полотно ⋅ширина)⌉. Количество рулонов: N рулонов =⌈(N полотен ⋅L полотно ⋅ширина)/(ширина⋅длина)⌉, округление вверх. Стоимость: Стоимость=N рулонов ⋅цена. Запас: коэффициент (по умолчанию 1.10, диапазон 1.05–1.20). Округления выполнять через Math.ceil (или аналог) и проверять на граничных значениях. 6. Требования к качеству и тестированию Все формулы вынести в отдельные функции и покрыть юнит‑тестами. Добавить негативные тесты: отрицательные значения, нули, слишком большие числа. Для API — тесты валидации и проверки кодов ответов. В CI SourceCraft: lint → unit-тесты → сборка образа → (опционально) интеграционные тесты. Примеры тестовых кейсов: Комната 4×5 м, высота 2.7 м, 1 окно 1.5×1.2 м, 1 дверь 0.9×2.1 м. Рулон 1.06×10 м, раппорт 0.64 м, цена 2500 руб. Ожидаемый результат: количество рулонов и стоимость (с запасом 10 %).
113 дней назад0лайков - 13470–16258rozzzzdi/nambe-325
Дашборд производителей и объемов производства
HTML166 дней назад0лайков - 13470–16258rpmedia/resourses25123 дня назад0лайков
- 13470–16258rpornis/albion-network25
Albion Online network analyzer
289 дней назад0лайков - 13470–16258rpornis/ruslan25
Тестовый репозиторий
289 дней назад0лайков - 13470–16258rreyzov/you25
Тестовый репозиторий
44 дня назад0лайков - 13470–16258rstick-07/landing-page-demo25
Демонстрационный лендинг для онбординга в SourceCraft
HTML270 дней назад0лайков - 13470–16258ru-loba/voronezh-lobanov25Python188 дней назад0лайков
- 13470–16258rudnev-e-y/jjabrams25369 дней назад0лайков
- 13470–16258rumandemilhanov/ania-lysaia25Python47 дней назад0лайков
15 601–15 625 из 21 918