docs(root): improve docs a bit

This commit is contained in:
Even Stensberg 2026-08-07 18:00:18 +02:00
parent 4290ea7539
commit 4bf2016ccc
No known key found for this signature in database
GPG Key ID: 3865A86FA6FDA9B2

View File

@ -12,11 +12,30 @@ CyberChef is a simple, intuitive web app for carrying out all manner of "cyber"
The tool is designed to enable both technical and non-technical analysts to manipulate data in complex ways without having to deal with complex tools or algorithms. It was conceived, designed, built and incrementally improved by an analyst in their 10% innovation time over several years. The tool is designed to enable both technical and non-technical analysts to manipulate data in complex ways without having to deal with complex tools or algorithms. It was conceived, designed, built and incrementally improved by an analyst in their 10% innovation time over several years.
## Contents
- [Official website](#official-website)
- [Running Locally](#running-locally)
- [With Docker](#with-docker)
- [From source](#from-source)
- [How it works](#how-it-works)
- [Features](#features)
- [Deep linking](#deep-linking)
- [Browser support](#browser-support)
- [Node.js support](#nodejs-support)
- [Security](#security)
- [Contributing](#contributing)
- [Licencing](#licencing)
## Official website ## Official website
[CyberChef's official website can be found here][1] - have fun! [CyberChef's official website can be found here][1] - have fun!
## Running Locally with Docker ## Running Locally
You can run CyberChef with Docker (no toolchain required) or build it from source with Node.js.
### With Docker
**Prerequisites** **Prerequisites**
@ -46,7 +65,41 @@ docker run -it -p 8080:8080 ghcr.io/gchq/cyberchef:latest
Just like before, navigate to `http://localhost:8080` in your browser. Just like before, navigate to `http://localhost:8080` in your browser.
This image is built and published through our [GitHub Workflows](.github/workflows/releases.yml) This image is built and published through our [GitHub Workflows](.github/workflows/releases.yml).
### From source
If you want to develop CyberChef or run it without Docker, you can build it directly with Node.js.
**Prerequisites**
- [Node.js](https://nodejs.org/) `v24` (see [Node.js support](#nodejs-support))
> [!NOTE]
> You can use [nvm](https://github.com/nvm-sh/nvm) to manage Node.js versions and use the current development version in [this project](./.nvmrc) to avoid conflicts with other projects on your machine.
**Setup**
```bash
git clone https://github.com/gchq/CyberChef.git
cd CyberChef
npm install
```
**Common tasks**
| Command | Description |
| --- | --- |
| `npm start` | Run the development server with live reload at `http://localhost:8080`. |
| `npm run build` | Produce a production build in the `build/prod` directory. |
| `npm test` | Run the Node.js and operation test suites. |
| `npm run testui` | Run the browser (UI) tests. |
| `npm run lint` | Check the code against the linting rules. |
| `npm run newop` | Scaffold a new operation via the interactive quickstart script. |
If you hit an out-of-memory error while building large recipes, increase Node's heap size with `npm run setheapsize`.
## How it works ## How it works
@ -117,7 +170,7 @@ CyberChef is built to support
## Node.js support ## Node.js support
CyberChef is built to fully support Node.js `v24`. For more information, see the ["Node API" wiki page](https://github.com/gchq/CyberChef/wiki/Node-API) CyberChef is built to fully support Node.js `v24`. For more information, see the ["Node API" wiki page](https://github.com/gchq/CyberChef/wiki/Node-API).
## Security ## Security