diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 6de7e01442e..19285205f41 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -88,6 +88,22 @@ Release workflow:
```
more details: [sccache - Shared Compilation Cache](https://github.com/mozilla/sccache)
+8. (Optional) Enable LFS to pull assets under `assets-lfs`
+ 1. Install `git-lfs`:
+ - MacOS
+ ```
+ brew install git-lfs
+ ```
+ - Ubuntu
+ ```
+ curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash
+ sudo apt-get install git-lfs
+ ```
+ 2. Pull
+ ```
+ git lfs install
+ git lfs pull
+ ```
Bash scripts that might be of help:
* `format.sh` - Formats the entire repo
@@ -96,6 +112,26 @@ Bash scripts that might be of help:
* `test_extra.sh` - Runs the additional tests
* `assets/update-assets.sh` - Updates `Account`/`Faucet` scrypto packages (needed when your change would affect the output WASM)
+## Project Layout
+
+- `radix-blueprint-schema-init`: Blueprint schema initialization structures, used by Radix Package Definition (RPD).
+- `radix-clis`: Various CLI tools, like `resim`, `scrypto`, `rtmc` and `rtmd`.
+- `radix-common-derive`: Macros for defining `Decimal` and `PreciseDecimal`.
+- `radix-common`: Common libraries used by Radix Engine and Scrypto.
+- `radix-engine`: The Radix Engine implementation.
+- `radix-native-sdk`: Library to assist native blueprint development.
+- `radix-sbor-derives`: Macros for encoding and decoding Scrypto SBOR and Manifest SBOR data.
+- `radix-substate-store-impls`: Various substate store implementations.
+- `radix-substate-store-interface`: The interface of any substate store.
+- `radix-substate-store-queries`: Interprets data in substate data by injecting high-level knowledge.
+- `radix-transaction-scenarios`: Defines various transaction scenarios, for testing.
+- `radix-transactions`: Radix transaction manifest compiler, transaction models, signing and validating logic.
+- `sbor-derive`: Macros for encoding and decoding SBOR data.
+- `sbor`: A generic binary data format, upon which Scrypto SBOR and Manifest SBOR are built.
+- `scrypto-derive`: Macros for defining blueprints.
+- `scrypto-test`: Library for testing Scrypto blueprints.
+- `scrypto`: Scrypto language abstraction.
+
## Branching strategy
### Branches
diff --git a/README.md b/README.md
index 29d06871222..1769a89b6a4 100644
--- a/README.md
+++ b/README.md
@@ -6,195 +6,16 @@ Language for building DeFi apps on Radix.
Documentation: https://docs.radixdlt.com/docs/scrypto-1
-
-## Installation
-
-1. Install Rust - we recommend to use Rust 1.81.0
- - Install Rust (if Rust is installed you can skip this step)
- - Windows:
- - Download and install [`rustup-init.exe`](https://win.rustup.rs/x86_64)
- - Install "Desktop development with C++" with [Build Tools for Visual Studio 2019](https://visualstudio.microsoft.com/thank-you-downloading-visual-studio/?sku=BuildTools&rel=16)
- - Install [LLVM 13.0.1](https://github.com/llvm/llvm-project/releases/download/llvmorg-13.0.1/LLVM-13.0.1-win64.exe) (make sure you tick the option that adds LLVM to the system PATH)
- - Enable git long path support:
- ```bash
- git config --system core.longpaths true
- ```
- - macOS:
- - Make sure you have the `xcode` command line tools: `xcode-select --install`.
- - Install cmake: `brew install cmake llvm`
- Add LLVM to the system path by adding below line to the:
- - `~/.profile` if `bash` is the default shell
- - `~/.zshrc` if `zsh` is the default shell
- - respective config file in case of other shell
- ```
- PATH="$(brew --prefix llvm)/bin:$PATH"
- ```
-
- You can check, which shell is the default one by inspecting `$SHELL` variable:
- ```bash
- echo $SHELL
- ```
-
- - Install the Rust compiler:
- ```bash
- curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
- ```
- - Linux:
- - Make sure a C++ compiler, LLVM, cmake and clang is installed:
- ```bash
- sudo apt install build-essential llvm cmake clang
- ```
- - Install the Rust compiler:
- ```bash
- curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
- ```
- - Set Rust version
- ```bash
- rustup update
- rustup default 1.81.0
- ```
-
-2. Enable `cargo` in the current shell:
- - Windows:
- - Start a new PowerShell
- - Linux and macOS:
- ```bash
- source $HOME/.cargo/env
- ```
-3. Add WebAssembly target
- ```bash
- rustup target add wasm32-unknown-unknown
- ```
-4. Install Radix CLIs
- ```bash
- cargo install radix-clis
- ```
-
-## Getting Started
-
-If you want a quick walkthrough of how to deploy and run some code, please see the [Run Your First Project](https://docs-babylon.radixdlt.com/main/getting-started-developers/first-component/run-first-project.html) tutorial. If you prefer to soldier through on your own, keep reading below.
-
-### Writing Scrypto Code
-
-1. Start by creating a new package:
-
-```bash
-scrypto new-package
-cd
-```
-
-2. Check out the files under your current directory:
-
-- Source code is within `src/lib.rs`;
-- Test code is within `tests/lib.rs`.
-
-3. Build your package:
-
-```bash
-scrypto build
-```
-
-4. Run tests:
-
-```bash
-scrypto test
-```
-
-### Playing with Radix Engine
-
-| Action | Command |
-| ---------------------------------- | -------------------------------------------------------------------------- |
-| Create an account | `resim new-account` |
-| Change the default account | `resim set-default-account ` |
-| Create a token with fixed supply | `resim new-token-fixed ` |
-| Create a token with mutable supply | `resim new-token-mutable ` |
-| Create a badge with fixed supply | `resim new-badge-fixed ` |
-| Create a badge with mutable supply | `resim new-badge-mutable ` |
-| Mint resource | `resim mint ` |
-| Transfer resource | `resim transfer ` |
-| Publish a package | `resim publish ` |
-| Call a function | `resim call-function ` |
-| Call a method | `resim call-method ` |
-| Export the definition of a package | `resim export-package-definition