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