diff --git a/README.md b/README.md
index bf04011e47654083d407edb41bdf3d11100007f2..18f3a5decd45dbbbf2ee9eae57c03dbc825b85a8 100644
--- a/README.md
+++ b/README.md
@@ -1,7 +1,47 @@
 # proximity-cache
 
-Various experiments on approximate vector search in high-dimensional spaces.
+Proximity is a research project exploring the optimization and speed-recall tradeoffs of approximate vector search in high-dimensional spaces.
+We provide an approximate cache for vector databases that is written in Rust and exposes Python bindings.
 
-Research conducted by the SaCS team at EPFL, licensed under MIT.
+More information is available in our [EuroMLSys '25 publication](https://doi.org/10.1145/3721146.3721938).
+
+Note: This code is under active development and is not recommended for production systems.
+
+## Installation
+
+### Prerequisites
+
+Ensure you have the following dependencies installed:
+
+- the Rust toolkit (Cargo and rustup are encouraged). For now, nightly is required, but a regular (non-nightly) install on your machine will automatically download the nightly compiler and use it only in this project, making this effectively transparent for the user.
+- Python 3.8+
+- Maturin for Rust-Python interactions (we recommend installing by running ```pip install maturin```)
+
+## Build Instructions
+
+``` 
+python3 -m venv proxi-env
+source proxi-env/bin/activate
+git clone https://gitlab.epfl.ch/randl/proximity.git
+cd proximity/bindings
+maturin develop -r
+```
+
+## Usage
+
+todo
+
+## Repository Structure
+
+```proximity/
+├── bindings/       # Python bindings
+├── core/           # Rust source code
+├── ci/             # Continuous integration build scripts
+├── README.md
+└── LICENSE         # MIT License
+```
+## License
+
+This project is licensed under the MIT License. See LICENSE for details.
 
 This code is meant as a beta/development playground. It should not be used for production systems.