MCPcopy Index your code
hub / github.com/canyon-project/canyon

github.com/canyon-project/canyon @2024.8.13

Chat with this repo
repository ↗ · DeepWiki ↗ · release 2024.8.13 ↗ · + Follow
521 symbols 1,054 edges 230 files 5 documented · 1%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Canyon GitHub license build status contributions welcome

👋 Canyon is a JavaScript code coverage solution

Features

Bundling: Support for various bundling ecosystems.

  • vite - vite-plugin-istanbul
  • babel - babel-plugin-istanbul
  • swc - swc-coverage-instrument

React Native: Support for collecting coverage data in React Native.

File: Supports multiple file types, such as js, jsx, ts, and tsx.

Source Traceback: Enable the sourceMap option to trace back to the original source code coverage information.

CI: Provides coverage interfaces for easy integration with CI tools.

Changed Code: Configure the baseline commit SHA or branch name you want to compare, filter the coverage of changed files, and calculate the overall coverage of newly added lines.

Reporting Component: Build a minimal native JavaScript npm package, providing a modern frontend reporting hydration solution to replace traditional istanbul reports.

Browser Plugin: Provide a browser plugin for developers to detect application coverage details in real-time.

Canyon is a JavaScript code coverage collection platform. We address the difficulties developers and QA engineers encounter in collecting test case code coverage during end-to-end testing. It consists of three main parts:

  • A Babel plugin responsible for adapting to various CI tools and reading environment variables.

  • A backend service responsible for collecting and processing coverage data, and providing coverage reporting interfaces.

  • A frontend service responsible for displaying coverage reports.

Read the Docs to Learn More.

Architecture overview

WeChat Group

Contribution

See Contributing Guide.

License

MIT.

Extension points exported contracts — how you extend this code

CanyonLayoutBaseProps (Interface)
(no doc)
packages/canyon-ui-old/src/components/layout/Base.tsx
DataType (Interface)
(no doc)
packages/canyon-platform/src/components/app/SummarySearchTable.tsx
DiffLine (Interface)
(no doc)
packages/canyon-backend/src/utils/diffline.ts
CodeChange (Interface)
(no doc)
packages/canyon-data/src/summary/index.ts
HandleSelectFile (Interface)
(no doc)
packages/canyon-platform/src/pages/index/projects/[id]/commits/helper/index.ts
Oauthgitproviderparams (Interface)
(no doc)
packages/canyon-backend/src/auth/auth.controller.ts
CoverageSummaryDataMap (Interface)
(no doc)
packages/canyon-data/src/summary/index.ts
CrudTableProps (Interface)
(no doc)
packages/canyon-platform/src/pages/index/projects/[id]/configure/helper/crud.tsx

Core symbols most depended-on inside this repo

create
called by 14
packages/canyon-backend/src/coverage/services/common/coverage-data-adapter.service.ts
invoke
called by 8
packages/canyon-backend/src/project/services/get-projects.service.ts
update
called by 8
packages/canyon-backend/src/coverage/services/common/coverage-data-adapter.service.ts
getSummaryByPath
called by 6
packages/canyon-data/src/summary/index.ts
getCOlor
called by 5
packages/canyon-platform/src/helpers/utils/common.ts
removeNullKeys
called by 5
packages/canyon-backend/src/utils/utils.ts
invoke
called by 5
packages/canyon-backend/src/coverage/services/coverage-client.service.ts
percent
called by 4
packages/canyon-platform/src/helpers/utils/common.ts

Shape

Function 213
Class 160
Method 133
Interface 13
Enum 2

Languages

TypeScript100%
Python1%

Modules by API surface

packages/canyon-backend/src/project/project.resolver.ts16 symbols
packages/canyon-platform/src/components/CanyonReport/helper.tsx11 symbols
packages/canyon-backend/src/coverage/services/core/consumer-coverage.service.ts11 symbols
packages/canyon-backend/src/coverage/coverage.controller.ts10 symbols
examples/remix-vite/app/data.ts10 symbols
packages/canyon-backend/src/project/services/project.service.ts9 symbols
packages/canyon-backend/src/utils/coverage.ts8 symbols
packages/canyon-backend/src/project/project.model.ts8 symbols
packages/canyon-backend/src/coverage/services/coverage-client.service.ts8 symbols
packages/canyon-platform/src/pages/index/projects/[id]/configure/helper/crud.tsx7 symbols
packages/canyon-platform/src/components/app/SummarySearchTable.tsx7 symbols
packages/canyon-data/src/summary/index.ts7 symbols

Datastores touched

(mongodb)Database · 1 repos

For agents

$ claude mcp add canyon \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact