diff --git a/crates/divan_compat/README.md b/crates/divan_compat/README.md
index 1333ed7..832c29b 100644
--- a/crates/divan_compat/README.md
+++ b/crates/divan_compat/README.md
@@ -1 +1,81 @@
-TODO
+
+
codspeed-divan-compat
+
+[](https://github.com/CodSpeedHQ/codspeed-rust/actions/workflows/ci.yml)
+[](https://crates.io/crates/codspeed-divan-compat)
+[](https://discord.com/invite/MxpaCfKSqF)
+[](https://codspeed.io/CodSpeedHQ/codspeed-rust)
+
+Divan compatibility layer for CodSpeed
+
+
+
+## Installation
+
+```sh
+cargo add --dev codspeed-divan-compat --rename divan
+```
+
+> [!NOTE]
+> This will install the `codspeed-divan-compat` crate and rename it to `divan` in your `Cargo.toml`.
+> This way, you can keep your existing imports and the compatibility layer will take care of the rest.
+>
+> Using the compatibility layer won't change the behavior of your benchmark suite and divan will still run it as usual.
+>
+> If you prefer, you can also install `codspeed-divan-compat` as is and change your imports to use this new crate name.
+
+## Usage
+
+Let's start with the example from the [divan documentation](https://docs.rs/divan/0.1.17/divan/index.html#getting-started),
+creating a benchmark suite for the Fibonacci function (in `benches/my_benchmark.rs`):
+
+```rust
+fn main() {
+ // Run registered benchmarks.
+ divan::main();
+}
+
+// Register a `fibonacci` function and benchmark it over multiple cases.
+#[divan::bench(args = [1, 2, 4, 8, 16, 32])]
+fn fibonacci(n: u64) -> u64 {
+ if n <= 1 {
+ 1
+ } else {
+ fibonacci(n - 2) + fibonacci(n - 1)
+ }
+}
+```
+
+The last step in creating the divan benchmark is to add the new benchmark target in your `Cargo.toml`:
+
+```toml title="Cargo.toml"
+[[bench]]
+name = "my_benchmark"
+harness = false
+```
+
+And that's it! You can now run your benchmark suite with `cargo-codspeed`:
+
+```
+$ cargo codspeed build
+ Finished release [optimized] target(s) in 0.12s
+ Finished built 1 benchmark suite(s)
+
+$ cargo codspeed run
+ Collected 1 benchmark suite(s) to run
+Running my_benchmark
+NOTICE: codspeed is enabled, but no performance measurement will be made since it's running in an unknown environment.
+Checked: benches/my_benchmark.rs::fibonacci[1]
+Checked: benches/my_benchmark.rs::fibonacci[2]
+Checked: benches/my_benchmark.rs::fibonacci[4]
+Checked: benches/my_benchmark.rs::fibonacci[8]
+Checked: benches/my_benchmark.rs::fibonacci[16]
+Checked: benches/my_benchmark.rs::fibonacci[32]
+Done running my_benchmark
+Finished running 1 benchmark suite(s)
+```
+
+### Not supported:
+
+- `divan::bench(const = xxx)`: we do not support this feature yet, if you need it don't hesitate to create an issue.
+- `divan::bench(crate = xxx)`: due to how the compatibility layer works internally, we do not plan to support this feature.