diff --git a/README.md b/README.md
index 33ddaa9..d457485 100644
--- a/README.md
+++ b/README.md
@@ -27,13 +27,13 @@ This repository contains the smart contracts of the Sismo Protocol.
There are three core contracts:
- - `core/AttestationsRegistry.sol`: The registry stores all attestations. It is owned by the governance that authorizes/unauthorize issuers to record in it
- - `core/Attester.sol` The standard abstract contract must be inherited by attesters. Attesters are issuers of attestations. They verify user requests and build attestations that will be recorded in the registry
- - `core/Badges.sol` Reads the registry. Stateless Non Transferable Token view of attestations (ERC1155)
+ - [`AttestationsRegistry.sol`](/contracts/core/AttestationsRegistry.sol): The registry stores all attestations. It is owned by the governance that authorizes/unauthorizes issuers to record in it
+ - [`Attester.sol`](/contracts/core/Attester.sol): The standard abstract contract must be inherited by attesters. Attesters are issuers of attestations. They verify users' requests and build attestations that will be recorded in the registry
+ - [`Badges.sol`](/contracts/core/Badges.sol): Reads the registry. Stateless Non Transferable Token view of attestations (ERC1155)
-It also contains implementations of attester in `attesters/`:
-- `HydraS1SimpleAttester.sol`: ZK Attester using the [Hydra S1 Proving Scheme](https://hydra-s1.docs.sismo.io) and the notion of nullifiers. Users must provide a ZK Proof along with their request to generate attestations
-- `HydraS1AccountboundAttester.sol`: Accountbound version of the Simple Hydra S1 Simple Attester. (Users can update at will where the attestation is stored)
+It also contains implementations of attester in [`attesters`](/contracts/attesters):
+- [`HydraS1SimpleAttester.sol`](/contracts/attesters/hydra-s1/HydraS1SimpleAttester.sol): ZK Attester using the [Hydra S1 Proving Scheme](https://hydra-s1.docs.sismo.io) and the notion of nullifiers. Users must provide a ZK Proof along with their request to generate attestations
+- [`HydraS1AccountboundAttester.sol`](/contracts/attesters/hydra-s1/HydraS1AccountboundAttester.sol): Accountbound version of the Simple Hydra S1 Simple Attester. (Users can update at will where the attestation is stored)
@@ -87,21 +87,21 @@ yarn deploy:local
## Create a new Attester
-To develop a new attester, you must inherit the `core/Attester.sol` abstract contract and implement the following functions:
+To develop a new attester, you must inherit the [`core/Attester.sol`](/contracts/core/Attester.sol) abstract contract and implement the following functions:
- `_verifyRequest(request, proofData)`: You must implement the user request verification against the proof provided by the user
-- `buildAttestations(request, proofData)`: You must build the attestations that will be recorded from a verified user request
+- `buildAttestations(request, proofData)`: You must build the attestations that will be recorded from a verified user's request
Other optional hook functions that can be implemented:
- `_beforeRecordAttestations(request, proofData)`
- `_afterRecordAttestations(request, proofData)`
-The `/attesters/hydra-s1/HydraS1SimpleAttester.sol` is a good example of an attester implementing those functions.
+The [`HydraS1SimpleAttester.sol`](/contracts/attesters/hydra-s1/HydraS1SimpleAttester.sol) is a good example of an attester implementing those functions.
A [guide](https://attesters.docs.sismo.io) is offered in our documentation.
-Feel free open a PR with your new attester in `/attester`!
+Feel free open a PR with your new attester in [`attesters`](/contracts/attesters)!
## License