diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
new file mode 100644
index 0000000000000000000000000000000000000000..f7f503a3ca86469da5dfce0a68d6b90884613bfb
--- /dev/null
+++ b/CONTRIBUTING.md
@@ -0,0 +1,52 @@
+# Contributing
+
+Before contributing, please make sure that your development environment is properly configured by following this tutorial :
+
+[Setting up your development environment]
+
+Sign-ups on our gitlab are disabled. If you would like to contribute, please ask for its creation on [the technical forum].
+
+When contributing to this repository, please first discuss the change you wish to make via issue and
+via [the technical forum] before making a change.
+
+Please note we have a specific workflow, please follow it in all your interactions with the project.
+
+## Workflow
+
+- You must create an issue for each feature you wish to develop, with a precise title and a
+  description of your feature. Then, assign it to yourself and click on the button
+  **`Create a merge request`**. GitLab will create a branch dedicated to the issue as well as a
+  *Work in Progress* merge request of this branch into the main branch (`dev`).
+- Please use tags to specify feature domains and concerned modules.
+- Never contribute to a branch whose issue has not been assigned to you! If the contributor make a
+  `git rebase` your commit will be lost !
+- Before you push your commit:
+  - Document your code.
+  - Write unit tests, and verify that they **all** pass.
+  - Apply the [project's git conventions]
+
+## Merge Process
+
+1. Ensure you rebased your branch on the latest `dev` commit to avoid any merge conflicts.
+
+2. Ensure that you respect the [commit naming conventions].
+
+3. Ensure that all automated tests pass with the `yarn test` command.
+
+4. Update the documentation with details of changes to the interface, this includes new environment
+    variables, exposed ports, useful file locations and container parameters.
+
+5. Push your branch on the gitlab and create a merge request. Briefly explain the purpose of your contribution in the description of the merge request.
+
+6. Tag a Duniter reviewer so he will review your contribution. If you still have no news after several weeks, tag another reviewer or/and talk about your contribution on [the technical forum].
+
+## List of Duniter's reviewers
+
+- @librelois
+- @Moul
+- @c-geek
+
+[Setting up your development environment]: ./doc/dev/setup_env_dev.md
+[the technical forum]: https://forum.duniter.org
+[project's git conventions]: ./doc/dev/git-conventions.md
+[commit naming conventions]: ./doc/dev/git-conventions.md#naming-commits
diff --git a/README.md b/README.md
index 410936dd8918f4495b47aabb55bf278337af30d4..666422946a7b5d7a6e9cad21df65ca6cbd982e9a 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
 ![Duniter logo](https://git.duniter.org/nodes/typescript/duniter/raw/dev/images/250%C3%97250.png)
 
-# Duniter [![Build Status](https://api.travis-ci.org/duniter/duniter.png)](https://travis-ci.org/duniter/duniter) [![Coverage Status](https://coveralls.io/repos/github/duniter/duniter/badge.svg?branch=master)](https://coveralls.io/github/duniter/duniter?branch=master) [![Dependencies](https://david-dm.org/duniter/duniter.svg)](https://david-dm.org/duniter/duniter)
+# Duniter [![build status](https://git.duniter.org/nodes/typescript/duniter/badges/dev/pipeline.svg)](https://git.duniter.org/nodes/typescript/duniter/commits/dev) [![Coverage Status](https://coveralls.io/repos/github/duniter/duniter/badge.svg?branch=master)](https://coveralls.io/github/duniter/duniter?branch=master) [![Dependencies](https://david-dm.org/duniter/duniter.svg)](https://david-dm.org/duniter/duniter)
 
 Duniter (previously uCoin) is a libre software allowing to create a new kind of P2P crypto-currencies based on individuals and Universal Dividend.
 
@@ -39,9 +39,8 @@ See [Install a node documentation](https://duniter.org/en/wiki/duniter/install/)
 
 ### Contribute
 
-- [Quick-start-guide : start a duniter node with web-ui from source](https://git.duniter.org/nodes/typescript/duniter/blob/dev/doc/quick-start.md)
-- [Guide (fr)](https://git.duniter.org/nodes/typescript/duniter/blob/dev/doc/contribute-french.md)
-- [Developer guide](https://git.duniter.org/nodes/typescript/duniter/blob/dev/doc/developer-guide.md)
+- See [CONTRIBUTING](./CONTRIBUTING.md).
+- [Guide (fr)](./doc/dev/contribute-french.md)
 
 ### Documentation
 
@@ -60,18 +59,23 @@ If you wish to participate/debate on Duniter, you can:
 
 ### Developement
 
-Duniter is using modules on different git repositories:
+Duniter is currently migrating from [Typescript] to [Rust].
+This migration is being done gradually via a [NodeJs]<->[Rust] binding provided by [Neon].
+The fact of migrating from code to [Rust] is commonly called "oxidation", so we speak of "Duniter's oxidation".
 
-- [Duniteroxyde](https://git.duniter.org/nodes/typescript/duniteroxyde): Neon binding for rust DUBP libs.
-- [Debug](https://github.com/duniter/duniter-debug): debug tool.
+The long-term goal is to oxidize Duniter entirely, but it is a long process that will take several years.
+
+Duniter is divided into several  git repositories:
+
+- [Duniter](https://git.duniter.org/nodes/typescript/duniter): this repository.
+- [Dubp-rs-libs](https://git.duniter.org/libs/dubp-rs-libs): Set of Rust libraries common to Duniter and a possible future Rust client/wallet.
 - [Web admin](https://git.duniter.org/nodes/typescript/modules/duniter-ui): web administration interface (optional).
 - [GVA](https://git.duniter.org/nodes/typescript/modules/gva-api): Future client API aimed to replace BMA. GVA stands for GraphQL Validation API.
 
-Optional modules:
+Optional repositories:
 
 - [Currency monit](https://git.duniter.org/nodes/typescript/modules/duniter-currency-monit): charts to monitor currency and web of trust state.
 - [Remuniter](https://github.com/duniter/remuniter): service to remunerate blocks issuers.
-- [Wot explorer](https://github.com/c-geek/wotex): Web of Trust explorer.
 
 # References
 
@@ -88,3 +92,8 @@ Optional modules:
 # License
 
 This software is distributed under [GNU AGPLv3](https://git.duniter.org/nodes/typescript/duniter/blob/dev/LICENSE).
+
+[Neon]: https://neon-bindings.com/
+[NodeJs]: https://nodejs.org/en/
+[Rust]: https://www.rust-lang.org/
+[Typescript]: https://www.typescriptlang.org/
diff --git a/doc/dev/contribute-french.md b/doc/dev/contribute-french.md
new file mode 100644
index 0000000000000000000000000000000000000000..15411fda3364683fc16bf539c2f8bc1c6d52cfd9
--- /dev/null
+++ b/doc/dev/contribute-french.md
@@ -0,0 +1,7 @@
+# Contribuer au code de Duniter
+
+Le tutoriel le plus récent est ici : [https://duniter.org/fr/contribuer/blockchain-nodejs/tutoriel-dev/](https://duniter.org/fr/contribuer/blockchain-nodejs/tutoriel-dev/)
+
+Son contenu est en grande partie encore valable, même si certaines parties ne sont plus tout à fait exactes, notamment avec la migration en cours vers du Rust.
+
+Un nouveau tutoriel sera rédigé dans les mois a venir, en attendant nous vous recommandons la lecture du tutoriel cité ci-dessus.