Updated Repository structure

GCHQDeveloper581 2026-04-29 17:44:28 +01:00
parent 29ad9fce2f
commit bc71a4ce39

@ -41,94 +41,64 @@ npm test
```
> This will run all the pre-configured tests and output the results to stdout.
## Repository structure
- `build/`
- `prod/` - This folder contains the most recently built production version of CyberChef including the inline version. It is populated by running `grunt prod`.
- `src/`
- `core/` - Core CyberChef files that make up the heart of the application
- `config/` - Files specifying the operation configurations
- `modules/` - Automatically generated module references
- `lib/` - Libraries containing shared code for multiple operations
- `errors/` - Custom error types
- `operations/` - Operation objects
- `vendor/` - Libraries that cannot currently be imported through npm
- `node/` - Wrappers for the NodeJS version of CyberChef
- `web/` - The code which makes up the CyberChef web app
- `css/`
- `lib/` - Library CSS and Less files
- `structure/` - Structural styles to lay out the stage
- `themes/` - Look and feel styles
- `html/`
- `index.html` - The CyberChef page structure
- `static/` - Static files like images
- `test/`
- `tests/` - Configuration for tests on operations and recipes
- `babel.config.js` - Babel transpilation configuration
- `.editorconfig` - Text editor conventions stored in a cross-compatible format
- `Gruntfile.js` - Grunt build process configuration
- `webpack.config.js` - Webpack configuration
- `postcss.config.js` - PostCSS configuration
- `LICENSE` - The Apache 2.0 licence information
- `package.json` - npm configuration and a list of all the dependencies
- `README.md` - An introduction to CyberChef
+ babel.config.js - - Babel transpilation configuration
+ build/
+ prod/ - This folder contains the most recently built production version of CyberChef including the inline version. It is populated by running `grunt prod`.
+ CHANGELOG.md
+ CODE_OF_CONDUCT.md
+ CONTRIBUTING.md
+ Dockerfile - Dockerfile for building a containerised deployment of CyberChef
+ eslint.config.mjs - ESLint code linting configuration
+ Gruntfile.js - Grunt build process configuration
+ LICENSE - The Apache 2.0 licence information
+ nightwatch.json - Nightwatch browser testing configuation
+ package.json - npm configuration and a list of all the dependencies
+ package-lock.json - frozen version of the above with all dependencies (automatically generated by `npm install`)
+ postcss.config.js - PostCSS configuration
+ README.md - An introduction to CyberChef
+ SECURITY.md
+ src/
+ core/ - Core CyberChef files that make up the heart of the application
+ config/ - Files specifying the operation configurations
+ modules/ - Automatically generated module references
+ scripts/ - Scripts for automating parts of the maintenance and build processes
+ dishTypes/ - definitions of the types that can be passed in and out of operations
+ errors/ - Custom error types
+ lib/ - Libraries containing shared code for multiple operations
+ operations/ - Operation objects
+ vendor/ - Libraries that cannot currently be imported through npm
+ node/ - Wrappers for the NodeJS version of CyberChef
+ config/ - Files specifying the special operation configurations for the NodeJS version
+ scripts/ - Scripts for automating parts of the maintenance and build processes
+ web/ - The code which makes up the CyberChef web app
+ html/
+ index.html - The CyberChef page structure
+ static/ - files included as-is in the web app
+ fonts/ - font files
+ images/ - various images used within the web app
+ logo/ - logos
+ stylesheets/ - styling for the app
+ components/ - individual UI components
+ layout/ - layout for main UI compnonents
+ operations/
+ themes/ - Look and feel styles
+ utils/ - additional style compononents
+ utils/ - functionality for major UI components
+ waiters/
+ workers/
+ tests/ - CyberChef test suite
+ browser/ - Browser functional tests
+ output/ - Output/logs from the browser tests
+ lib/ - library files used by individual tests
+ node/ - tests for Node API
+ sampleData/
+ tests/ - individual test suites
+ lib/ - libraries used by test suites
+ operations/ - Unit tests for the Operations
+ tests/ - Individual operation test suites
+ samples/ - Sample data used in testing
+ files/ - Sample file data
+ webpack.config.js - Webpack configuration
+ `.editorconfig` - Text editor conventions stored in a cross-compatible format
+ `babel.config.js` - - Babel transpilation configuration
+ `build/`
+ `prod/` - This folder contains the most recently built production version of CyberChef including the inline version. It is populated by running `grunt prod`.
+ `CHANGELOG.md`
+ `CODE_OF_CONDUCT.md`
+ `CONTRIBUTING.md`
+ `Dockerfile` - Dockerfile for building a containerised deployment of CyberChef
+ `eslint.config.mjs` - ESLint code linting configuration
+ `Gruntfile.js` - Grunt build process configuration
+ `LICENSE` - The Apache 2.0 licence information
+ `nightwatch.json` - Nightwatch browser testing configuation
+ `package.json` - npm configuration and a list of all the dependencies
+ `package-lock.json` - frozen version of the above with all dependencies (automatically generated by `npm install`)
+ `postcss.config.js` - PostCSS configuration
+ `README.md` - An introduction to CyberChef
+ `SECURITY.md`
+ `src/`
+ `core/` - Core CyberChef files that make up the heart of the application
+ `config/` - Files specifying the operation configurations
+ `modules/` - Automatically generated module references
+ `scripts/` - Scripts for automating parts of the maintenance and build processes
+ `dishTypes/` - definitions of the types that can be passed in and out of operations
+ `errors/` - Custom error types
+ `lib/` - Libraries containing shared code for multiple operations
+ `operations/` - Operation objects
+ `vendor/` - Libraries that cannot currently be imported through npm
+ `node/` - Wrappers for the NodeJS version of CyberChef
+ `config/` - Files specifying the special operation configurations for the NodeJS version
+ `scripts/` - Scripts for automating parts of the maintenance and build processes
+ `web/ - The code which makes up the CyberChef web app
+ `html/
+ `index.html - The CyberChef page structure
+ `static/` - files included as-is in the web app
+ `fonts/` - font files
+ `images/` - various images used within the web app
+ `logo/` - logos
+ `stylesheets/` - styling for the app
+ `components/` - individual UI components
+ `layout/` - layout for main UI compnonents
+ `operations/`
+ `themes/` - Look and feel styles
+ `utils/` - additional style compononents
+ `utils/` - functionality for major UI components
+ `waiters/`
+ `workers/`
+ `tests/` - CyberChef test suite
+ `browser/` - Browser functional tests
+ `output/` - Output/logs from the browser tests
+ `lib/` - library files used by individual tests
+ `node/` - tests for Node API
+ `sampleData/`
+ `tests/` - individual test suites
+ `lib/` - libraries used by test suites
+ `operations/` - Unit tests for the Operations
+ `tests/` - Individual operation test suites
+ `samples/` - Sample data used in testing
+ `files/` - Sample file data
+ `webpack.config.js` - Webpack configuration