Go to file
Alexander Bakiev 30ad64933a Refine translations in English common.ts file
This commit contains text updates to the English common.ts file to improve clarity and readability. Specific changes include refinement to phrases for more natural language and eliminating redundancies. The aim is to overall enhance the user experience.
2023-11-30 01:18:23 +01:00
build JIRA-1234 fix(doc): some some 2023-11-27 15:46:48 +03:00
public Change website language to English 2023-11-30 01:00:30 +01:00
src Refine translations in English common.ts file 2023-11-30 01:18:23 +01:00
.eslintrc JIRA-1234 feat(lang): test test test 2023-10-13 15:17:53 +03:00
.gitignore JIRA-1234 feat(lang): test test test 2023-10-13 15:17:53 +03:00
.stylelintrc.json JIRA-1234 feat(lang): test test test 2023-10-13 15:17:53 +03:00
config-overrides.js JIRA-1234 fix(doc): some some 2023-11-27 15:45:54 +03:00
declaration.d.ts GIT-0000 feat: add first version 2023-05-12 14:47:48 +03:00
Dockerfile JIRA-1111 feat(ci-cd): some text 2023-09-22 15:29:50 +03:00
LICENSE TEST-0001 feat(doc): add licence 2023-09-25 10:15:24 +03:00
package-lock.json JIRA-1234 fix(doc): some some 2023-11-27 15:45:54 +03:00
package.json JIRA-1234 fix(doc): some some 2023-11-27 15:45:54 +03:00
README.md JIRA-1234 fix(doc): some some 2023-11-27 15:45:54 +03:00
tsconfig.json GIT-0000 feat: add first version 2023-05-12 14:47:48 +03:00

Assayo

Визуализация и анализ данных вашего git-репозитория (демо).

Сотрудник может оценить новое место работы
  • темп работы;
  • количество переработок;
  • зоны ответственности;
  • объем фичей и багов;
  • стиль работы коллег;
Руководитель может оценить сотрудников
  • выявить бездельников;
  • прикинуть объём кода;
  • узнать скорость работы;
  • заметить аномалии поведения;
  • посмотреть динамику работы по неделям;
Инвестор может оценить продукт
  • стоимость продукта;
  • стоимость фичей;
  • время на разработку;
  • прогноз времени доработок;
  • прогноз стоимости;

Как быстро посмотреть количество коммитов?

В корневой директории вашего проекта выполнить:

git shortlog -s -n -e

Как объединить авторов?

В корневой директории вашего проекта нужно создать файл .mailmap. Пример содержания файла:

Alex B <alex@mail.uk>
Alex B <alex@mail.uk> <alex@gov.tk>
Alex B <alex@mail.uk> <bakhirev@ya.kz>
Alex B <alex@mail.uk> <man64@yahoo.com>

Подробнее про формат этого файла можно прочитать тут.

Как выгрузить данные из git?

Для онлайн просмотра

В корневой директории вашего проекта выполнить:

git --no-pager log --numstat --oneline --all --reverse --date=iso-strict --pretty=format:"%ad>%cN>%cE>%s" > log.txt

Для офлайн просмотра

git --no-pager log --numstat --oneline --all --reverse --date=iso-strict --pretty=format:"%ad>%cN>%cE>%s" | sed -e 's/\\/\\\\/g' | sed -e 's/`/"/g' | sed -e 's/^/report.push(\`/g' | sed 's/$/\`\);/g' | sed 's/\$/_/g' > log.txt

Git создаст файл log.txt. Он содержит данные для построения отчёта.

Разница между онлайн и офлайн форматом в наличие обёртки для строк. Оффлайн формат будет подтягиваться, как js файл если вы просто открыли /build/index.html

Как посмотреть отчёт онлайн?

  • Перейти на сайт
  • Нажать кнопку «Демо»
  • Перетащить файл log.txt в окно браузера

Как посмотреть отчёт офлайн?

  • Скачать этот репозиторий
  • Перетащить файл log.txt в папку /build
  • Запустить /build/index.html
  • Или перетащить папку /build к себе в репозиторий (туда, где лежит log.txt). Можно сменить название. Например с /build на /report

В этом случае важно, чтобы файл log.txt был сгенерирован командой для офлайн просмотра.

Как пересобрать билд отчёта?

  • Скачать этот репозиторий
  • Выполнить npm install
  • Выполнить npm run build
  • Свежая сборка будет в папке /build

Как посмотреть отчёт по группе микросервисов?

  • Сгенерировать для каждого микросервиса log.txt (log-1.txt, log-2.txt, log-3.txt и т.д.)
  • См. «Как посмотреть отчёт онлайн?». На последнем шаге перетащить сразу все файлы в окно браузера.
  • См. «Как посмотреть отчёт офлайн?». На втором шаге перетащить все файлы микросервисов (log-1.txt, log-2.txt, log-3.txt и т.д.) в папку отчета (/build).

Как брендировать интерфейс?

Вы можете написать свою тему для интерфейса. Можно менять:

  • Заголовок. Вы можете указать его в URL-параметре title. Например: ?title=You Company
  • Визуальную тему. Для этого нужно подготовить CSS файл с новыми стилями и указать его адрес в URL-параметре theme. Например: ?theme=//company.com/some.css. Вы можете использовать имена классов в качестве селекторов. Большинство из них не меняется в при выходе новой версий.
  • Язык. Вы можете указать его в URL-параметре lang. Например: ?lang=es

Как добавить или отредактировать перевод?

Вы можете добавить новый перевод или поправить текущий в разделе ts/translations/ и создать Pull Request.

Как подписывать коммиты?

Следуйте практике Conventional Commits 1.0.0. Например:

JIRA-1234 feat(profile): Added avatar for user 
  • номер задачи в таск трекере (JIRA-1234)
  • тип работы (feat, fix, style, refactor, test, doc и т.д.)
  • фича (profile - раздел сайта, страница или новый функционал, одним словом)
  • какую проблему решали (Added avatar for user)

Как автоматизировать сбор данных?

Без бекенда

  • создайте клон нужного вам репозитория;
  • скопируйте в корень папку build;
  • откройте build/index.html в браузере и добавьте в закладки;
  • добавьте ярлык на build/assets/ci-cd.sh в папку автозагрузки (Windows);

Каждый раз, при перезагрузке компьютера, скрипт будет обновлять статистику по всем данным, которые автоматически влились в основную ветку.

DevOps (CI/CD)

Публичный сервер

Вы можете выкладывать файл с данными для построения отчёта на публичный URL. А для его визуализации использовать веб-интерфейс сайта assayo. Просто укажите адресс, где лежат данные, в URL-параметре dump:

https://assayo.jp/demo/?dump=//you_site.com/some/log.txt

Приватный сервер

  • скачайте docker образ;
  • поднимите его в локальной сети;
  • для просмотра отчётов используйте веб-интерфейс указывая ему адресс, где лежат данные, в URL-параметре dump:
http://assayo_url/?dump=//you_url/some/log.txt
assayo_url - URL адресс контейнера assayo, он слушает 80 порт;
you_url    - URL адресс вашего контейнера с логами git;

По умолчанию образ запустится по адресу http://127.0.0.1:80/. Если не получилось проверьте свободен ли у вас 80 порт.

Обновление Docker-образа

  • удилить метрику, аллерты, старые билды;
  • собрать билд npm run build
  • собрать образ docker build -t assayo .
  • визуально проверить образ docker run --name assayo -p 80:80 -d assayo;
  • поставить тег docker tag IMAGE_ID bakhirev/assayo:latest;
  • запушить образ в Docker Hub

Релизы, примерно, раз в полгода. Что дальше:

  • больше советов и достижений;
  • итоги года / месяца, печать отчётов;
  • локализация и интернационализация;
  • анализ файлов;
  • разные роли для статистики (скрытие финансов);
  • разработка бекенда, интеграции с другими системами;

Пожелания, предложения, замечания