Folder structure from GitRay - jonasyr/gitray GitHub Wiki

   ██████╗ ██╗████████╗██████╗  █████╗ ██╗   ██╗
  ██╔════╝ ██║╚══██╔══╝██╔══██╗██╔══██╗╚██╗ ██╔╝
  ██║  ███╗██║   ██║   ██████╔╝███████║ ╚████╔╝ 
  ██║   ██║██║   ██║   ██╔══██╗██╔══██║  ╚██╔╝  
  ╚██████╔╝██║   ██║   ██║  ██║██║  ██║   ██║   
   ╚═════╝ ╚═╝   ╚═╝   ╚═╝  ╚═╝╚═╝  ╚═╝   ╚═╝   
    Official Wiki of the GitRay Repository!

Table of Contents

Description

This is a structure of folder structure from GitRay. It is constantly updated.

Each file deals with:

  • Purpose of the folder / file
  • Content & Responsibilities
  • Important functions & variables
  • Dependencies
  • Note comments in the code

Structure

gitray/
├── package.json
├── tsconfig.json
├── sonar-project.properties
├── prettier.config.js
├── .npmrc
├── CLAUDE.md
├── eslint.config.mjs
├── AGENTS.md
├── .markdownlint-cli2.yaml
├── README.md
├── pnpm-workspace.yaml
├── jest.config.cjs
├── .gitignore
├── Strategy.md
├── .husky/
│   ├── pre-commit
│   └── _/
│       ├── husky.sh
│       └── .gitignore
├── apps/
│   ├── frontend/
│   │   ├── tsconfig.jest.json
│   │   ├── package.json
│   │   ├── tsconfig.json
│   │   ├── tsconfig.node.json
│   │   ├── jest.setup.react19.ts
│   │   ├── postcss.config.cjs
│   │   ├── tailwind.config.cjs
│   │   ├── jest.setup.ts
│   │   ├── README.md
│   │   ├── eslint.config.js
│   │   ├── jest.config.cjs
│   │   ├── index.html
│   │   ├── vite.config.ts
│   │   ├── .gitignore
│   │   ├── tsconfig.app.json
│   │   ├── src/
│   │   │   ├── main.tsx
│   │   │   ├── index.css
│   │   │   ├── App.css
│   │   │   ├── App.tsx
│   │   │   ├── vite-env.d.ts
│   │   │   ├── styles/
│   │   │   │   └── heatmap.css
│   │   │   ├── types/
│   │   │   │   └── react-calendar-heatmap.d.ts
│   │   │   ├── services/
│   │   │   │   └── api.ts
│   │   │   ├── pages/
│   │   │   │   └── MainPage.tsx
│   │   │   ├── components/
│   │   │   │   ├── CommitList.tsx
│   │   │   │   ├── RepoInput.tsx
│   │   │   │   └── ActivityHeatmap.tsx
│   │   │   ├── utils/
│   │   │   │   └── dateUtils.ts
│   │   │   └── assets/
│   │   │       └── react.svg
│   │   ├── __tests__/
│   │   │   ├── main.test.tsx
│   │   │   ├── App.test.tsx
│   │   │   ├── services/
│   │   │   │   ├── api.test.tsx
│   │   │   │   └── apiExtended.test.tsx
│   │   │   ├── pages/
│   │   │   │   └── MainPage.test.tsx
│   │   │   ├── components/
│   │   │   │   ├── ActivityHeatmap.test.tsx
│   │   │   │   └── CommitList.test.tsx
│   │   │   └── utils/
│   │   │       └── dateUtils.test.tsx
│   │   ├── __mocks__/
│   │   │   ├── fileMock.cjs
│   │   │   └── ansi-styles.cjs
│   │   └── public/
│   │       └── vite.svg
│   └── backend/
│       ├── package.json
│       ├── tsconfig.json
│       ├── package-lock.json
│       ├── .npmrc
│       ├── jest.config.js
│       ├── .tsbuildinfo
│       ├── .env
│       ├── src/
│       │   ├── config.ts
│       │   ├── index.ts
│       │   ├── middlewares/
│       │   │   ├── errorHandler.ts
│       │   │   ├── validation.ts
│       │   │   └── requestId.ts
│       │   ├── services/
│       │   │   ├── metrics.ts
│       │   │   ├── logger.ts
│       │   │   ├── gitService.ts
│       │   │   └── cache.ts
│       │   ├── routes/
│       │   │   ├── healthRoutes.ts
│       │   │   ├── repositoryRoutes.ts
│       │   │   ├── commitRoutes.js
│       │   │   ├── index.ts
│       │   │   └── commitRoutes.ts
│       │   └── utils/
│       │       ├── withTempRepository.ts
│       │       ├── gitUtils.ts
│       │       ├── gracefulShutdown.ts
│       │       └── cleanupScheduler.ts
│       ├── $HOME/
│       │   └── .cache/
│       │       └── gitray/
│       │           ├── ad257aadd1e63e268755a631bb610cccb8d16fa6/
│       │           ├── 00f621adc21aab65c84c0a78547518d8441edca7/
│       │           ├── 631e334753f9e9c72af943bdf54c06ab7283b2ec/
│       │           └── f51d9f4ea9c2c0afa0833a3e6f468966c8cd57f6/
│       ├── __tests__/
│       │   ├── aggregateCommits.test.ts
│       │   ├── index.test.ts
│       │   ├── middlewares/
│       │   │   └── errorHandler.test.ts
│       │   ├── services/
│       │   │   ├── cache.test.ts
│       │   │   └── gitService.test.ts
│       │   ├── routes/
│       │   │   ├── healthRoutes.test.ts
│       │   │   ├── commitRoutes.test.ts
│       │   │   ├── repositoryRoutes.test.ts
│       │   │   └── index.test.ts
│       │   └── utils/
│       │       └── gracefulShutdown.test.ts
│       ├── perf/
│       │   ├── report.json
│       │   ├── tsconfig.json
│       │   ├── install-k6.sh
│       │   ├── test-repos.csv
│       │   ├── load-test.ts
│       │   ├── README.md
│       │   ├── examples.sh
│       │   ├── .gitignore
│       │   └── report.html
│       └── coverage/
│           ├── clover.xml
│           ├── coverage-final.json
│           ├── lcov.info
│           └── lcov-report/
│               ├── prettify.css
│               ├── prettify.js
│               ├── favicon.png
│               ├── sorter.js
│               ├── base.css
│               ├── block-navigation.js
│               ├── index.html
│               └── sort-arrow-sprite.png
├── coverage/
│   ├── clover.xml
│   ├── coverage-final.json
│   ├── lcov.info
│   ├── lcov-report/
│   │   ├── prettify.css
│   │   ├── prettify.js
│   │   ├── favicon.png
│   │   ├── sorter.js
│   │   ├── base.css
│   │   ├── block-navigation.js
│   │   ├── index.html
│   │   ├── sort-arrow-sprite.png
│   │   ├── frontend/
│   │   │   └── src/
│   │   │       ├── App.tsx.html
│   │   │       ├── index.html
│   │   │       └── services/
│   │   │           ├── api.ts.html
│   │   │           └── index.html
│   │   └── apps/
│   │       ├── frontend/
│   │       │   └── src/
│   │       │       ├── App.tsx.html
│   │       │       ├── index.html
│   │       │       ├── services/
│   │       │       │   ├── api.ts.html
│   │       │       │   └── index.html
│   │       │       ├── pages/
│   │       │       │   ├── MainPage.tsx.html
│   │       │       │   └── index.html
│   │       │       ├── components/
│   │       │       │   ├── ActivityHeatmap.tsx.html
│   │       │       │   ├── CommitList.tsx.html
│   │       │       │   ├── index.html
│   │       │       │   └── RepoInput.tsx.html
│   │       │       └── utils/
│   │       │           ├── dateUtils.ts.html
│   │       │           └── index.html
│   │       └── backend/
│   │           └── src/
│   │               ├── config.ts.html
│   │               ├── index.ts.html
│   │               ├── index.html
│   │               ├── middlewares/
│   │               │   ├── validation.ts.html
│   │               │   ├── index.html
│   │               │   ├── errorHandler.ts.html
│   │               │   └── requestId.ts.html
│   │               ├── services/
│   │               │   ├── metrics.ts.html
│   │               │   ├── gitService.ts.html
│   │               │   ├── logger.ts.html
│   │               │   ├── cache.ts.html
│   │               │   └── index.html
│   │               ├── routes/
│   │               │   ├── healthRoutes.ts.html
│   │               │   ├── commitRoutes.ts.html
│   │               │   ├── repositoryRoutes.ts.html
│   │               │   ├── index.ts.html
│   │               │   └── index.html
│   │               └── utils/
│   │                   ├── withTempRepository.ts.html
│   │                   ├── cleanupScheduler.ts.html
│   │                   ├── gitUtils.ts.html
│   │                   ├── gracefulShutdown.ts.html
│   │                   └── index.html
│   └── backend/
│       └── src/
│           ├── services/
│           │   ├── index.html
│           │   └── gitService.js.html
│           └── routes/
│               ├── index.html
│               └── repositoryRoutes.js.html
│   └── packages/
│       └── shared-types/
│           └── src/
│               ├── index.ts.html
│               └── index.html
├── packages/
│   └── shared-types/
│       ├── package.json
│       ├── tsconfig.json
│       ├── tsconfig.esm.json
│       ├── tsconfig.tsbuildinfo
│       └── src/
│           ├── index.ts
│           ├── tsconfig.esm.tsbuildinfo
│           ├── tsconfig.tsbuildinfo
│           ├── cjs/
│           │   ├── index.js
│           │   ├── index.d.ts.map
│           │   └── index.d.ts
│           └── esm/
│               ├── index.js
│               ├── index.d.ts.map
│               └── index.d.ts
└── .github/
    ├── ISSUE_TEMPLATE/
    │   └── best-practice-issue-template.md
    └── workflows/
        └── ci.yml