diff --git a/docs/docs/developer/architecture.md b/docs/docs/developer/architecture.mdx
similarity index 88%
rename from docs/docs/developer/architecture.md
rename to docs/docs/developer/architecture.mdx
index c2f7d40391c43..17908bf8f6856 100644
--- a/docs/docs/developer/architecture.md
+++ b/docs/docs/developer/architecture.mdx
@@ -2,15 +2,17 @@
sidebar_position: 1
---
+import AppArchitecture from './img/app-architecture.png';
+
# Architecture
-Immich uses a traditional client-server design, with a dedicated database for data persistence. The frontend clients communicate with backend services over HTTP using REST APIs.
+Immich uses a traditional client-server design, with a dedicated database for data persistence. The frontend clients communicate with backend services over HTTP using REST APIs. Below is a high level diagram of the architecture.
## High Level Diagram
-
+
-The diagram shows clients communicating with the server via REST, as well as the flow of database between backend services.
+The diagram shows clients communicating with the server's API via REST. The server communicates with downstream systems (i.e. Redis, Postgres, Machine Learning, file system) through repository interfaces. Not shown in the diagram, is that the server is split into two separate containers `immich-server` and `immich-microservices`. The microservices container does not handle API requests or schedule cron jobs, but primarily handles incoming job requests from Redis.
## Clients
diff --git a/docs/docs/developer/img/app-architecture.drawio.xml b/docs/docs/developer/img/app-architecture.drawio.xml
new file mode 100644
index 0000000000000..f30abb62e67fd
--- /dev/null
+++ b/docs/docs/developer/img/app-architecture.drawio.xml
@@ -0,0 +1,132 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/docs/developer/img/app-architecture.png b/docs/docs/developer/img/app-architecture.png
index ed91fe40a0915..68f20633c5cc0 100644
Binary files a/docs/docs/developer/img/app-architecture.png and b/docs/docs/developer/img/app-architecture.png differ
diff --git a/docs/docs/overview/support-the-project.md b/docs/docs/overview/support-the-project.md
index 7bd473eb1e569..cdd458fccedf1 100644
--- a/docs/docs/overview/support-the-project.md
+++ b/docs/docs/overview/support-the-project.md
@@ -24,7 +24,7 @@ There are lots of non-monetary ways to contribute to Immich as well.
1. Testing - Using Immich and reporting bugs is a great way to help support the project. Found a bug? [Open an issue on GitHub][github-issue].
1. Translations - The Immich mobile app has been translated into [17 languages][github-langs] so far! To contribute with translations, email me at alex.tran1502@gmail.com or send me a message on discord.
-1. Development - If you are a programmer or developer, take a look at Immich's [technology stack](/docs/developer/architecture.md) and consider fixing bugs or building new features. The team and I are always looking for new contributors. For information about how to contribute as a developer, see the [Developer](/docs/developer/architecture.md) section.
+1. Development - If you are a programmer or developer, take a look at Immich's [technology stack](/docs/developer/architecture.mdx) and consider fixing bugs or building new features. The team and I are always looking for new contributors. For information about how to contribute as a developer, see the [Developer](/docs/developer/architecture.mdx) section.
[github-issue]: https://github.com/immich-app/immich/issues/new/choose
[github-langs]: https://github.com/immich-app/immich/tree/main/mobile/assets/i18n