diff --git a/docs/deployment/netlify.mdx b/docs/deployment/netlify.mdx
index 0f426036..ca3796fa 100644
--- a/docs/deployment/netlify.mdx
+++ b/docs/deployment/netlify.mdx
@@ -3,6 +3,10 @@ title: Deploying to Netlify
description: How to deploy next-forge to Netlify
---
+
+
+
+
To deploy next-forge on Netlify, you need to create 3 new projects for the `app`, `api` and `web` apps. After selecting your repository, change the "Site to deploy" selection to the app of choice e.g. `apps/app`. This should automatically detect the Next.js setup and as such, the build command and output directory.
Then, add all your environment variables to the project.
diff --git a/docs/deployment/vercel.mdx b/docs/deployment/vercel.mdx
index 0dffede3..ac0d61ca 100644
--- a/docs/deployment/vercel.mdx
+++ b/docs/deployment/vercel.mdx
@@ -26,6 +26,10 @@ import { VercelButton } from '/snippets/vercel.mdx';
},
}]} />
+
+
+
+
To deploy next-forge on Vercel, you need to create 3 new projects for the `app`, `api` and `web` apps. After selecting your repository, change the Root Directory option to the app of choice e.g. `apps/app`. This should automatically detect the Next.js setup and as such, the build command and output directory.
Then, add all your environment variables to the project.
diff --git a/docs/features/testing.mdx b/docs/features/testing.mdx
index aa8bb22d..c537b814 100644
--- a/docs/features/testing.mdx
+++ b/docs/features/testing.mdx
@@ -3,6 +3,10 @@ title: Testing
description: How we've configured testing in next-forge.
---
+
+
+
+
next-forge uses [Vitest](https://vitest.dev/) for unit testing. It's a fast and lightweight testing framework that's compatible with Jest's API. Unit tests are run automatically as part of the `build` task in Turborepo.
## Running Tests
diff --git a/docs/images/deployment/netlify.png b/docs/images/deployment/netlify.png
new file mode 100644
index 00000000..88784a88
Binary files /dev/null and b/docs/images/deployment/netlify.png differ
diff --git a/docs/images/deployment/vercel.png b/docs/images/deployment/vercel.png
new file mode 100644
index 00000000..1e1e5206
Binary files /dev/null and b/docs/images/deployment/vercel.png differ
diff --git a/docs/images/structure/apps.png b/docs/images/structure/apps.png
new file mode 100644
index 00000000..77fe6b58
Binary files /dev/null and b/docs/images/structure/apps.png differ
diff --git a/docs/images/structure/packages.png b/docs/images/structure/packages.png
new file mode 100644
index 00000000..e78b29ea
Binary files /dev/null and b/docs/images/structure/packages.png differ
diff --git a/docs/images/testing.png b/docs/images/testing.png
new file mode 100644
index 00000000..5831c7cf
Binary files /dev/null and b/docs/images/testing.png differ
diff --git a/docs/structure/apps.mdx b/docs/structure/apps.mdx
index a1826baf..f276fc89 100644
--- a/docs/structure/apps.mdx
+++ b/docs/structure/apps.mdx
@@ -3,6 +3,10 @@ title: Apps
description: The apps of next-forge
---
+
+
+
+
next-forge is a monorepo, which means it contains multiple packages in a single repository. This is a common pattern for modern web applications, as it allows you to share code between different parts of the application, and manage them all together.
The monorepo is managed by [Turborepo](https://turbo.build/repo), which is a tool for managing monorepos. It provides a simple way to manage multiple packages in a single repository, and is designed to work with modern web applications.
diff --git a/docs/structure/packages.mdx b/docs/structure/packages.mdx
index 140fdd62..d6b51038 100644
--- a/docs/structure/packages.mdx
+++ b/docs/structure/packages.mdx
@@ -3,6 +3,10 @@ title: Packages
description: The packages of next-forge
---
+
+
+
+
next-forge contains a number of shared packages that are used across the monorepo. The purpose of these packages is to isolate shared code from the main app, making it easier to manage and update.
Additionally, it makes it easier to swap out parts of the app for different implementations. For example, the `database` package contains everything related to the database, including the schema and migrations. This allows us to easily swap out the database provider or ORM without impacting other parts of the app.