MCPcopy
hub / github.com/Raathigesh/majestic

github.com/Raathigesh/majestic @v1.7.0 sqlite

repository ↗ · DeepWiki ↗ · release v1.7.0 ↗
195 symbols 422 edges 76 files 0 documented · 0%
README

Join the community on Spectrum

Majestic is a GUI for Jest

  • ✅ Run all the tests or a single file
  • ⏱ Toggle watch mode
  • 📸 Update snapshots
  • ❌ Examine test failures as they happen
  • ⏲ Console.log() to the UI for debugging
  • 🚔 Built-in coverage report
  • 🔍 Search tests
  • 💎 Works with flow and typescript projects
  • 📦 Works with Create react app

Majestic supports Jest 20 and above

Get started

Run majestic via npx in a project directory

cd ./my-jest-project # go into a project with Jest
npx majestic # execute majestic

or install Majestic globally via Yarn and run majestic

yarn global add majestic # install majestic globally
cd ./my-jest-project # go into a project with Jest
majestic # execute majestic

or install Majestic globally via Npm and run majestic

npm install majestic -g # install majestic globally
cd ./my-jest-project # go into a project with Jest
majestic # execute majestic

Running as an app

Running with the --app flag will launch Majestic as a chrome app.

Optional configuration

You can configure Majestic by adding majestic key to package.json.

// package.json
{
    "majestic": {
        // if majestic fails to find the Jest package, you can provide it here. Should be relative to the package.json
        "jestScriptPath": "../node_modules/jest/bin/jest.js",
        // if you want to pass additional arguments to Jest, do it here
        "args": ['--config=./path/to/config/file/jest.config.js'],
        // environment variables to pass to the process
        "env": {
          "CI": "true"
        }
    }
}

Optional configuration in project with multiple Jest configuration files

{
    "majestic": {
        "jestScriptPath": "../node_modules/jest/bin/jest.js",
        "configs": {
          "config1": {
            "args": [],
            "env": {}
          },
          "config2": {
            "args": [],
            "env": {}
          }
        }
    }
}

Arguments

--config - Will use this config from the list supplied in optional configuration.

--debug - Will output extra debug info to console. Helps with debugging.

--noOpen - Will prevent from automatically opening the UI url in the browser.

--port - Will use this port if available, else Majestic will pick another free port.

--version - Will print the version of Majestic and will exit.

Shortcut keys

alt+t - run all tests

alt+enter - run selected file

alt+w - watch

alt+s - search

escape - close search

Troubleshooting

Have a look at some of the common workarounds.

Contribute

Have a look at the contribution guide.

Contributors

Thanks goes to these wonderful people (emoji key):

Duncan Beevers 💻 Max Bridgland 📖 🤔 🐛 💻 Yuraima Estevez 💻 Jake Crosby 💻 Gavin Henderson 💻 briwa 💻 Luan Ferreira 💻
Tushar Gupta 💻 Agusti Fernandez 💻 🤔 Moos 🐛 💻 📖 MacZel 💻 🤔 Vikram Dighe 💻 John Smey 💻 🤔 🐛 BuckAMayzing 💻 🐛
Rahul A. Krishna 💻 🤔 🔧 Amila Welihinda 🚇 gregveres 🐛 💻 adam klein ⚠️ 💻

This project follows the all-contributors specification. Contributions of any kind welcome!

Extension points exported contracts — how you extend this code

CoverageSummary (Interface)
(no doc)
server/services/results.ts
AppResult (Interface)
(no doc)
ui/app.tsx
Props (Interface)
(no doc)
ui/search/index.tsx
TestFileItem (Interface)
(no doc)
ui/test-file/transformer.ts
Props (Interface)
(no doc)
ui/sidebar/tree.tsx
ResultEvent (Interface)
(no doc)
server/services/result-handler-api.ts
WorkspaceResult (Interface)
(no doc)
ui/app.tsx
Props (Interface)
(no doc)
ui/test-file/test-indicator.tsx

Core symbols most depended-on inside this repo

createLogger
called by 6
server/logger.ts
useSubscription
called by 4
ui/test-file/use-subscription.tsx
hasKeys
called by 4
ui/hooks/use-keys.ts
checkIfCoverageReportExists
called by 3
server/services/results.ts
hasExecutable
called by 3
server/services/config-resolver.ts
getTemplateLiteralName
called by 3
server/services/ast/inspector.ts
executeJest
called by 3
server/services/jest-manager/index.ts
getReporterPath
called by 3
server/services/jest-manager/index.ts

Shape

Method 72
Function 52
Class 48
Interface 23

Languages

TypeScript100%

Modules by API surface

server/services/jest-manager/index.ts19 symbols
server/services/results.ts18 symbols
server/api/runner/resolver.ts12 symbols
server/api/workspace/resolver.ts10 symbols
server/services/config-resolver.ts9 symbols
server/services/jest-manager/scripts/reporter.js8 symbols
ui/sidebar/transformer.ts6 symbols
server/api/app/resolver.ts6 symbols
ui/sidebar/index.tsx5 symbols
ui/test-file/test-item.tsx4 symbols
ui/hooks/use-keys.ts4 symbols
ui/error.tsx4 symbols

Dependencies from manifests, versioned

@babel/core7.1.2 · 1×
@babel/parser7.2.3 · 1×
@babel/plugin-proposal-class-properties7.0.0 · 1×
@babel/plugin-proposal-decorators7.1.2 · 1×
@babel/plugin-proposal-object-rest-spread7.0.0 · 1×
@babel/plugin-proposal-optional-chaining7.8.3 · 1×
@babel/polyfill7.0.0 · 1×
@babel/preset-env7.0.0 · 1×
@babel/preset-react7.0.0 · 1×
@babel/preset-typescript7.0.0 · 1×
@babel/traverse7.2.3 · 1×
@types/babel-traverse6.25.4 · 1×

For agents

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

⬇ download graph artifact