diff --git a/docs/CreateReactAdmin.md b/docs/CreateReactAdmin.md
new file mode 100644
index 00000000000..ea1a9a65b5c
--- /dev/null
+++ b/docs/CreateReactAdmin.md
@@ -0,0 +1,25 @@
+---
+layout: default
+title: "The create-react-admin CLI"
+---
+
+# `create-react-admin`
+
+This CLI generates a new react-admin application using [Vite](https://vitejs.dev/). Use it by running the following command:
+
+```sh
+npx create react-admin@latest your-admin-name
+# or
+yarn create react-admin your-admin-name
+```
+
+It will then ask you to choose:
+- a data provider
+- a auth provider
+- the names of the resources to add
+- the package manager to use to install the dependencies
+
+
\ No newline at end of file
diff --git a/docs/Tutorial.md b/docs/Tutorial.md
index 75183e1394f..ab587aa17f4 100644
--- a/docs/Tutorial.md
+++ b/docs/Tutorial.md
@@ -17,18 +17,24 @@ Here is an overview of the result:
## Setting Up
-React-admin uses React. We'll use [Vite](https://vitejs.dev/) to create an empty React app, and install the `react-admin` package:
+React-admin uses React. We'll use [create-react-admin](https://github.com/marmelab/react-admin/tree/master/packages/create-react-admin) to bootstrap a new admin:
```sh
-yarn create vite test-admin --template react-ts
-cd test-admin/
-yarn add react-admin ra-data-json-server
+yarn create react-admin test-admin
+```
+
+Choose **JSON Server** as the data provider, then **None** as the auth provider. Don't add any resource for now and just press **Enter**. Finally, choose either `npm` or `yarn` and press **Enter**. Once everything is installed, enter the following commands:
+
+```sh
+cd test-admin
+npm run dev
+# or
yarn dev
```
-You should be up and running with an empty React application on port 5173.
+You should be up and running with an empty React admin application on port 5173.
-**Tip**: Although this tutorial uses a TypeScript template, you can use react-admin with JavaScript if you prefer. Also, you can use [create-react-app](./CreateReactApp.md), [Next.js](./NextJs.md), [Remix](./Remix.md), or any other React framework to create your admin app. React-admin is framework-agnostic.
+**Tip**: Although this tutorial uses a TypeScript template, you can use react-admin with JavaScript if you prefer. Also, you can use [Vite](https://vitejs.dev/), [create-react-app](./CreateReactApp.md), [Next.js](./NextJs.md), [Remix](./Remix.md), or any other React framework to create your admin app. React-admin is framework-agnostic.
## Using an API As Data Source
@@ -70,57 +76,10 @@ JSONPlaceholder provides endpoints for users, posts, and comments. The admin we'
## Making Contact With The API Using a Data Provider
-Bootstrap the admin app by replacing the `src/App.tsx` by the following code:
-
-```jsx
-// in src/App.tsx
-import { Admin } from "react-admin";
-import jsonServerProvider from "ra-data-json-server";
-
-const dataProvider = jsonServerProvider('https://jsonplaceholder.typicode.com');
-
-const App = () =>