diff --git a/docs/articles/add-project-collaborators.md b/docs/articles/add-project-collaborators.mdx
similarity index 100%
rename from docs/articles/add-project-collaborators.md
rename to docs/articles/add-project-collaborators.mdx
diff --git a/docs/articles/advanced-path-matching.md b/docs/articles/advanced-path-matching.mdx
similarity index 100%
rename from docs/articles/advanced-path-matching.md
rename to docs/articles/advanced-path-matching.mdx
diff --git a/docs/articles/api-key-administration.md b/docs/articles/api-key-administration.mdx
similarity index 100%
rename from docs/articles/api-key-administration.md
rename to docs/articles/api-key-administration.mdx
diff --git a/docs/articles/api-key-api.md b/docs/articles/api-key-api.mdx
similarity index 100%
rename from docs/articles/api-key-api.md
rename to docs/articles/api-key-api.mdx
diff --git a/docs/articles/api-key-authentication.md b/docs/articles/api-key-authentication.mdx
similarity index 100%
rename from docs/articles/api-key-authentication.md
rename to docs/articles/api-key-authentication.mdx
diff --git a/docs/articles/api-key-buckets.md b/docs/articles/api-key-buckets.mdx
similarity index 100%
rename from docs/articles/api-key-buckets.md
rename to docs/articles/api-key-buckets.mdx
diff --git a/docs/articles/api-key-end-users.md b/docs/articles/api-key-end-users.mdx
similarity index 100%
rename from docs/articles/api-key-end-users.md
rename to docs/articles/api-key-end-users.mdx
diff --git a/docs/articles/api-key-leak-detection.md b/docs/articles/api-key-leak-detection.mdx
similarity index 100%
rename from docs/articles/api-key-leak-detection.md
rename to docs/articles/api-key-leak-detection.mdx
diff --git a/docs/articles/api-key-management.md b/docs/articles/api-key-management.mdx
similarity index 100%
rename from docs/articles/api-key-management.md
rename to docs/articles/api-key-management.mdx
diff --git a/docs/articles/api-key-react-component.md b/docs/articles/api-key-react-component.mdx
similarity index 100%
rename from docs/articles/api-key-react-component.md
rename to docs/articles/api-key-react-component.mdx
diff --git a/docs/articles/api-key-service-limits.md b/docs/articles/api-key-service-limits.mdx
similarity index 100%
rename from docs/articles/api-key-service-limits.md
rename to docs/articles/api-key-service-limits.mdx
diff --git a/docs/articles/archiving-requests-to-storage.md b/docs/articles/archiving-requests-to-storage.mdx
similarity index 100%
rename from docs/articles/archiving-requests-to-storage.md
rename to docs/articles/archiving-requests-to-storage.mdx
diff --git a/docs/articles/audit-log.md b/docs/articles/audit-log.mdx
similarity index 100%
rename from docs/articles/audit-log.md
rename to docs/articles/audit-log.mdx
diff --git a/docs/articles/cache.md b/docs/articles/cache.mdx
similarity index 99%
rename from docs/articles/cache.md
rename to docs/articles/cache.mdx
index 157bdb91..b25ddfa3 100644
--- a/docs/articles/cache.md
+++ b/docs/articles/cache.mdx
@@ -69,7 +69,7 @@ interface CacheQueryOptions {
}
```
-:::warning
+:::caution
At this time, the `options` parameter will be ignored entirely when running on
in a developer environment (i.e. working copy). In non-developer environments,
diff --git a/docs/articles/check-ip-address.md b/docs/articles/check-ip-address.mdx
similarity index 100%
rename from docs/articles/check-ip-address.md
rename to docs/articles/check-ip-address.mdx
diff --git a/docs/articles/cloudflare-settings.md b/docs/articles/cloudflare-settings.mdx
similarity index 100%
rename from docs/articles/cloudflare-settings.md
rename to docs/articles/cloudflare-settings.mdx
diff --git a/docs/articles/configure-ide-for-local-development.md b/docs/articles/configure-ide-for-local-development.mdx
similarity index 100%
rename from docs/articles/configure-ide-for-local-development.md
rename to docs/articles/configure-ide-for-local-development.mdx
diff --git a/docs/articles/context-data.md b/docs/articles/context-data.mdx
similarity index 100%
rename from docs/articles/context-data.md
rename to docs/articles/context-data.mdx
diff --git a/docs/articles/custom-audit-log-policy.md b/docs/articles/custom-audit-log-policy.mdx
similarity index 100%
rename from docs/articles/custom-audit-log-policy.md
rename to docs/articles/custom-audit-log-policy.mdx
diff --git a/docs/articles/custom-ci-cd.md b/docs/articles/custom-ci-cd.mdx
similarity index 100%
rename from docs/articles/custom-ci-cd.md
rename to docs/articles/custom-ci-cd.mdx
diff --git a/docs/articles/custom-cors-policy.md b/docs/articles/custom-cors-policy.mdx
similarity index 99%
rename from docs/articles/custom-cors-policy.md
rename to docs/articles/custom-cors-policy.mdx
index f7b17f50..87f8a152 100644
--- a/docs/articles/custom-cors-policy.md
+++ b/docs/articles/custom-cors-policy.mdx
@@ -22,7 +22,7 @@ policies:
A CORS policy consists of a name and set of CORS headers to be returned for
cross-origin requests (both the simple type and pre-flight request).
-:::warning
+:::caution
Make sure to not have a trailing `/` on your allowedOrigins. e.g.
`https://example.com` is valid, `https://example.com/` will not work.
diff --git a/docs/articles/custom-domains.md b/docs/articles/custom-domains.mdx
similarity index 100%
rename from docs/articles/custom-domains.md
rename to docs/articles/custom-domains.mdx
diff --git a/docs/articles/custom-log-level.md b/docs/articles/custom-log-level.mdx
similarity index 93%
rename from docs/articles/custom-log-level.md
rename to docs/articles/custom-log-level.mdx
index b8fd1655..106750f7 100644
--- a/docs/articles/custom-log-level.md
+++ b/docs/articles/custom-log-level.mdx
@@ -17,7 +17,7 @@ else. You can override this by setting an
[environment variable](../articles/environment-variables) called
`ZUPLO_LOG_LEVEL` to one of the values above.
-:::warning The log levels are case sensitive - they must be entered correctly,
+:::caution The log levels are case sensitive - they must be entered correctly,
in lower case for logging to work. :::
The log levels map to the different methods on `context.log`, e.g.
diff --git a/docs/articles/custom-logging-example.md b/docs/articles/custom-logging-example.mdx
similarity index 100%
rename from docs/articles/custom-logging-example.md
rename to docs/articles/custom-logging-example.mdx
diff --git a/docs/articles/dev-portal-adding-pages.md b/docs/articles/dev-portal-adding-pages.mdx
similarity index 100%
rename from docs/articles/dev-portal-adding-pages.md
rename to docs/articles/dev-portal-adding-pages.mdx
diff --git a/docs/articles/dev-portal-auth.md b/docs/articles/dev-portal-auth.mdx
similarity index 100%
rename from docs/articles/dev-portal-auth.md
rename to docs/articles/dev-portal-auth.mdx
diff --git a/docs/articles/dev-portal-configuration.md b/docs/articles/dev-portal-configuration.mdx
similarity index 100%
rename from docs/articles/dev-portal-configuration.md
rename to docs/articles/dev-portal-configuration.mdx
diff --git a/docs/articles/dev-portal-configuring-sidebar.md b/docs/articles/dev-portal-configuring-sidebar.mdx
similarity index 100%
rename from docs/articles/dev-portal-configuring-sidebar.md
rename to docs/articles/dev-portal-configuring-sidebar.mdx
diff --git a/docs/articles/dev-portal-create-consumer-on-auth.md b/docs/articles/dev-portal-create-consumer-on-auth.mdx
similarity index 100%
rename from docs/articles/dev-portal-create-consumer-on-auth.md
rename to docs/articles/dev-portal-create-consumer-on-auth.mdx
diff --git a/docs/articles/dev-portal-json.md b/docs/articles/dev-portal-json.mdx
similarity index 100%
rename from docs/articles/dev-portal-json.md
rename to docs/articles/dev-portal-json.mdx
diff --git a/docs/articles/dev-portal-setup.md b/docs/articles/dev-portal-setup.mdx
similarity index 100%
rename from docs/articles/dev-portal-setup.md
rename to docs/articles/dev-portal-setup.mdx
diff --git a/docs/articles/dev-portal-supabase-auth.md b/docs/articles/dev-portal-supabase-auth.mdx
similarity index 100%
rename from docs/articles/dev-portal-supabase-auth.md
rename to docs/articles/dev-portal-supabase-auth.mdx
diff --git a/docs/articles/dev-portal-theme.md b/docs/articles/dev-portal-theme.mdx
similarity index 100%
rename from docs/articles/dev-portal-theme.md
rename to docs/articles/dev-portal-theme.mdx
diff --git a/docs/articles/developer-api.md b/docs/articles/developer-api.mdx
similarity index 100%
rename from docs/articles/developer-api.md
rename to docs/articles/developer-api.mdx
diff --git a/docs/articles/developer-portal.md b/docs/articles/developer-portal.mdx
similarity index 100%
rename from docs/articles/developer-portal.md
rename to docs/articles/developer-portal.mdx
diff --git a/docs/articles/environment-variables.md b/docs/articles/environment-variables.mdx
similarity index 100%
rename from docs/articles/environment-variables.md
rename to docs/articles/environment-variables.mdx
diff --git a/docs/articles/environments.md b/docs/articles/environments.mdx
similarity index 98%
rename from docs/articles/environments.md
rename to docs/articles/environments.mdx
index 988aba63..a028c52d 100644
--- a/docs/articles/environments.md
+++ b/docs/articles/environments.mdx
@@ -23,7 +23,7 @@ There are two distinct types of environment:
shared with anybody else. If you share a project with another person, they
will have their own working-copy environment.
-:::warning Never use a working-copy environment in a production setting. They
+:::caution Never use a working-copy environment in a production setting. They
offer no SLA, and will often sleep after inactivity leading to slower cold-start
times. There can be occasional downtime of a few seconds for upgrades. :::
diff --git a/docs/articles/github-source-control.md b/docs/articles/github-source-control.mdx
similarity index 100%
rename from docs/articles/github-source-control.md
rename to docs/articles/github-source-control.mdx
diff --git a/docs/articles/gke-with-upstream-auth-policy.md b/docs/articles/gke-with-upstream-auth-policy.mdx
similarity index 100%
rename from docs/articles/gke-with-upstream-auth-policy.md
rename to docs/articles/gke-with-upstream-auth-policy.mdx
diff --git a/docs/articles/going-live.md b/docs/articles/going-live.mdx
similarity index 100%
rename from docs/articles/going-live.md
rename to docs/articles/going-live.mdx
diff --git a/docs/articles/graphql-security.md b/docs/articles/graphql-security.mdx
similarity index 100%
rename from docs/articles/graphql-security.md
rename to docs/articles/graphql-security.mdx
diff --git a/docs/articles/handling-form-data.md b/docs/articles/handling-form-data.mdx
similarity index 100%
rename from docs/articles/handling-form-data.md
rename to docs/articles/handling-form-data.mdx
diff --git a/docs/articles/how-to-upgrade.md b/docs/articles/how-to-upgrade.mdx
similarity index 100%
rename from docs/articles/how-to-upgrade.md
rename to docs/articles/how-to-upgrade.mdx
diff --git a/docs/articles/http-problems.md b/docs/articles/http-problems.mdx
similarity index 100%
rename from docs/articles/http-problems.md
rename to docs/articles/http-problems.mdx
diff --git a/docs/articles/key-value-store.md b/docs/articles/key-value-store.mdx
similarity index 100%
rename from docs/articles/key-value-store.md
rename to docs/articles/key-value-store.mdx
diff --git a/docs/articles/lazy-load-configuration-into-cache.md b/docs/articles/lazy-load-configuration-into-cache.mdx
similarity index 99%
rename from docs/articles/lazy-load-configuration-into-cache.md
rename to docs/articles/lazy-load-configuration-into-cache.mdx
index f7213428..1b3d3a71 100644
--- a/docs/articles/lazy-load-configuration-into-cache.md
+++ b/docs/articles/lazy-load-configuration-into-cache.mdx
@@ -18,7 +18,7 @@ single location worldwide).
The MemoryZoneReadthroughCache offers the best of both worlds - it uses memory
and zone cache in combination to afford the lowest possible latency.
-:::warning
+:::caution
Do take care not to load so much data into memory that you OOM (out-of-memory)
your process. Processes in Zuplo typically have ~120MB of memory to perform all
diff --git a/docs/articles/local-development.md b/docs/articles/local-development.mdx
similarity index 99%
rename from docs/articles/local-development.md
rename to docs/articles/local-development.mdx
index 395dd380..541e75e9 100644
--- a/docs/articles/local-development.md
+++ b/docs/articles/local-development.mdx
@@ -122,7 +122,7 @@ locally.
## Configuring API Keys
-:::warning
+:::caution
As the .env.zuplo file could contain sensitive information, it should not be
committed to your version system. Consider adding .env to your .gitignore file.
@@ -146,7 +146,7 @@ You will be using the API keys from the working-copy of your project.
## Configuring Environment variables
-:::warning
+:::caution
As the .env file could contain sensitive information, it should not be committed
to your version system. Consider adding .env to your .gitignore file.
diff --git a/docs/articles/log-export.md b/docs/articles/log-export.mdx
similarity index 100%
rename from docs/articles/log-export.md
rename to docs/articles/log-export.mdx
diff --git a/docs/articles/log-plugin-vmware-log-insight.md b/docs/articles/log-plugin-vmware-log-insight.mdx
similarity index 100%
rename from docs/articles/log-plugin-vmware-log-insight.md
rename to docs/articles/log-plugin-vmware-log-insight.mdx
diff --git a/docs/articles/log-plugins.md b/docs/articles/log-plugins.mdx
similarity index 100%
rename from docs/articles/log-plugins.md
rename to docs/articles/log-plugins.mdx
diff --git a/docs/articles/metrics-plugins.md b/docs/articles/metrics-plugins.mdx
similarity index 99%
rename from docs/articles/metrics-plugins.md
rename to docs/articles/metrics-plugins.mdx
index 238ce643..d859ed70 100644
--- a/docs/articles/metrics-plugins.md
+++ b/docs/articles/metrics-plugins.mdx
@@ -123,7 +123,7 @@ export default async function (request: ZuploRequest, context: ZuploContext) {
By default, we send all metrics to Dynatrace. However, you have the option below
to configure which metrics you want to send.
-:::warning Strict format
+:::caution Strict format
Dynatrace has a strict format for its payload, which has some _surprising_
requirements.
diff --git a/docs/articles/multiple-auth-policies.md b/docs/articles/multiple-auth-policies.mdx
similarity index 99%
rename from docs/articles/multiple-auth-policies.md
rename to docs/articles/multiple-auth-policies.mdx
index eed88f43..22f9ed4f 100644
--- a/docs/articles/multiple-auth-policies.md
+++ b/docs/articles/multiple-auth-policies.mdx
@@ -18,7 +18,7 @@ everything organized). The three policies required are:
1. [Any JWT Authentication Policy](../policies/open-id-jwt-auth-inbound.md)
1. [A Custom Policy](../policies/custom-code-inbound.md)
-:::warning
+:::caution
The order of these policies is critical. Placing them in the wrong order can
cause errors or lead to security issues.
diff --git a/docs/articles/node-modules.mdx b/docs/articles/node-modules.mdx
new file mode 100644
index 00000000..b70a9f86
--- /dev/null
+++ b/docs/articles/node-modules.mdx
@@ -0,0 +1,15 @@
+---
+title: Node Modules
+---
+
+import BundlesTable from "@site/src/components/mdx/BundlesTable";
+
+Zuplo generally supports node modules, but to ensure the security and
+performance of each API Gateway we must approve each module. This process only
+takes a few hours so if you need something new please reach out to use on
+twitter [@zuplo](https://twitter.com/zuplo) or through email
+[whatzup@zuplo.com](mailto:whatzup@zuplo.com)
+
+Below are the currently installed modules.
+
+
diff --git a/docs/articles/not-found-handler.md b/docs/articles/not-found-handler.mdx
similarity index 99%
rename from docs/articles/not-found-handler.md
rename to docs/articles/not-found-handler.mdx
index 10d818a0..1d462d04 100644
--- a/docs/articles/not-found-handler.md
+++ b/docs/articles/not-found-handler.mdx
@@ -36,7 +36,7 @@ export function runtimeInit(runtime: RuntimeExtensions) {
```
-:::warning
+:::caution
An error in your `zuplo.runtime.ts` can break your gateway for all requests. Be
sure to carefully review any custom code in this file and add generous error
diff --git a/docs/articles/oauth-authentication.md b/docs/articles/oauth-authentication.mdx
similarity index 100%
rename from docs/articles/oauth-authentication.md
rename to docs/articles/oauth-authentication.mdx
diff --git a/docs/articles/open-api.md b/docs/articles/open-api.mdx
similarity index 100%
rename from docs/articles/open-api.md
rename to docs/articles/open-api.mdx
diff --git a/docs/articles/partials/github-setup.md b/docs/articles/partials/github-setup.mdx
similarity index 100%
rename from docs/articles/partials/github-setup.md
rename to docs/articles/partials/github-setup.mdx
diff --git a/docs/articles/per-user-rate-limits-using-db.md b/docs/articles/per-user-rate-limits-using-db.mdx
similarity index 100%
rename from docs/articles/per-user-rate-limits-using-db.md
rename to docs/articles/per-user-rate-limits-using-db.mdx
diff --git a/docs/articles/policies.md b/docs/articles/policies.mdx
similarity index 100%
rename from docs/articles/policies.md
rename to docs/articles/policies.mdx
diff --git a/docs/articles/rename-or-move-project.md b/docs/articles/rename-or-move-project.mdx
similarity index 100%
rename from docs/articles/rename-or-move-project.md
rename to docs/articles/rename-or-move-project.mdx
diff --git a/docs/articles/reusing-code.md b/docs/articles/reusing-code.mdx
similarity index 100%
rename from docs/articles/reusing-code.md
rename to docs/articles/reusing-code.mdx
diff --git a/docs/articles/rick-and-morty-api-developer-portal-example.md b/docs/articles/rick-and-morty-api-developer-portal-example.mdx
similarity index 100%
rename from docs/articles/rick-and-morty-api-developer-portal-example.md
rename to docs/articles/rick-and-morty-api-developer-portal-example.mdx
diff --git a/docs/articles/route-raw.md b/docs/articles/route-raw.mdx
similarity index 100%
rename from docs/articles/route-raw.md
rename to docs/articles/route-raw.mdx
diff --git a/docs/articles/routes-json-deprecation-for-openapi.md b/docs/articles/routes-json-deprecation-for-openapi.mdx
similarity index 100%
rename from docs/articles/routes-json-deprecation-for-openapi.md
rename to docs/articles/routes-json-deprecation-for-openapi.mdx
diff --git a/docs/articles/runtime-behaviors.md b/docs/articles/runtime-behaviors.mdx
similarity index 100%
rename from docs/articles/runtime-behaviors.md
rename to docs/articles/runtime-behaviors.mdx
diff --git a/docs/articles/runtime-extensions.md b/docs/articles/runtime-extensions.mdx
similarity index 99%
rename from docs/articles/runtime-extensions.md
rename to docs/articles/runtime-extensions.mdx
index 9cda747b..326a0326 100644
--- a/docs/articles/runtime-extensions.md
+++ b/docs/articles/runtime-extensions.mdx
@@ -7,7 +7,7 @@ per-policy basis, there are times when behaviors need to be modified globally.
To plug into the global initialization of your gateway, create a file called
`zuplo.runtime.ts` in the `modules` folder with the following code.
-:::warning
+:::caution
Any error thrown in the `runtimeInit` method will prevent the gateway from
starting and yield a 500 error for all requests. Be sure to add only reliable
diff --git a/docs/articles/safely-clone-a-request-or-response.md b/docs/articles/safely-clone-a-request-or-response.mdx
similarity index 100%
rename from docs/articles/safely-clone-a-request-or-response.md
rename to docs/articles/safely-clone-a-request-or-response.mdx
diff --git a/docs/articles/secure-tunnel.md b/docs/articles/secure-tunnel.mdx
similarity index 100%
rename from docs/articles/secure-tunnel.md
rename to docs/articles/secure-tunnel.mdx
diff --git a/docs/articles/securing-your-backend.md b/docs/articles/securing-your-backend.mdx
similarity index 100%
rename from docs/articles/securing-your-backend.md
rename to docs/articles/securing-your-backend.mdx
diff --git a/docs/articles/security.md b/docs/articles/security.mdx
similarity index 100%
rename from docs/articles/security.md
rename to docs/articles/security.mdx
diff --git a/docs/articles/source-control.md b/docs/articles/source-control.mdx
similarity index 89%
rename from docs/articles/source-control.md
rename to docs/articles/source-control.mdx
index 98879393..d10c6c75 100644
--- a/docs/articles/source-control.md
+++ b/docs/articles/source-control.mdx
@@ -2,8 +2,6 @@
title: Source Control
---
-import GithubSetup from './\_github-setup.md';
-
:::info
Gitlab and Bitbucket Support
@@ -23,8 +21,6 @@ benefits, including:
- ability to deploy an [edge-deployment](../articles/environments.md) just by
adding a branch or making a commit.
-
-
## Connecting Existing Repositories
If you have an existing GitHub repository that contains a Zuplo project, you can
@@ -32,8 +28,9 @@ connect to that repository when you create a new project. Select **Advanced**
then select your GitHub organization and repository.
+ src="https://cdn.zuplo.com/assets/f09aa7ac-abc0-4f20-9e41-df42b7761748.png"
+ size="sm"
+/>
## Limitations
diff --git a/docs/articles/step-1-setup-basic-gateway.md b/docs/articles/step-1-setup-basic-gateway.mdx
similarity index 100%
rename from docs/articles/step-1-setup-basic-gateway.md
rename to docs/articles/step-1-setup-basic-gateway.mdx
diff --git a/docs/articles/step-2-add-api-key-auth.md b/docs/articles/step-2-add-api-key-auth.mdx
similarity index 100%
rename from docs/articles/step-2-add-api-key-auth.md
rename to docs/articles/step-2-add-api-key-auth.mdx
diff --git a/docs/articles/step-3-add-rate-limiting.md b/docs/articles/step-3-add-rate-limiting.mdx
similarity index 100%
rename from docs/articles/step-3-add-rate-limiting.md
rename to docs/articles/step-3-add-rate-limiting.mdx
diff --git a/docs/articles/step-4-deploying-to-the-edge.md b/docs/articles/step-4-deploying-to-the-edge.mdx
similarity index 100%
rename from docs/articles/step-4-deploying-to-the-edge.md
rename to docs/articles/step-4-deploying-to-the-edge.mdx
diff --git a/docs/articles/support.md b/docs/articles/support.mdx
similarity index 99%
rename from docs/articles/support.md
rename to docs/articles/support.mdx
index 4a1a0ce6..2ee9ba90 100644
--- a/docs/articles/support.md
+++ b/docs/articles/support.mdx
@@ -106,7 +106,7 @@ After entering your support code a ticket will be opened and our on call support
team will reach out to you within a few minutes. We suggest you sign in to
discord as well so we can chat in real time.
-:::warning
+:::caution
Calling this number will alert our on call team at any hour. Please only use
this number for urgent, business critical issues.
diff --git a/docs/articles/testing-graphql.md b/docs/articles/testing-graphql.mdx
similarity index 100%
rename from docs/articles/testing-graphql.md
rename to docs/articles/testing-graphql.mdx
diff --git a/docs/articles/testing.md b/docs/articles/testing.mdx
similarity index 100%
rename from docs/articles/testing.md
rename to docs/articles/testing.mdx
diff --git a/docs/articles/tunnel-setup.md b/docs/articles/tunnel-setup.mdx
similarity index 100%
rename from docs/articles/tunnel-setup.md
rename to docs/articles/tunnel-setup.mdx
diff --git a/docs/articles/web-crypto-apis.md b/docs/articles/web-crypto-apis.mdx
similarity index 100%
rename from docs/articles/web-crypto-apis.md
rename to docs/articles/web-crypto-apis.mdx
diff --git a/docs/articles/web-standard-apis.md b/docs/articles/web-standard-apis.mdx
similarity index 100%
rename from docs/articles/web-standard-apis.md
rename to docs/articles/web-standard-apis.mdx
diff --git a/docs/articles/what-is-zuplo.md b/docs/articles/what-is-zuplo.mdx
similarity index 100%
rename from docs/articles/what-is-zuplo.md
rename to docs/articles/what-is-zuplo.mdx
diff --git a/docs/articles/who-uses-and-why.md b/docs/articles/who-uses-and-why.mdx
similarity index 100%
rename from docs/articles/who-uses-and-why.md
rename to docs/articles/who-uses-and-why.mdx
diff --git a/docs/articles/zone-cache.md b/docs/articles/zone-cache.mdx
similarity index 100%
rename from docs/articles/zone-cache.md
rename to docs/articles/zone-cache.mdx
diff --git a/docs/articles/zp-body-removed.md b/docs/articles/zp-body-removed.mdx
similarity index 100%
rename from docs/articles/zp-body-removed.md
rename to docs/articles/zp-body-removed.mdx
diff --git a/docs/articles/zup-its.md b/docs/articles/zup-its.mdx
similarity index 100%
rename from docs/articles/zup-its.md
rename to docs/articles/zup-its.mdx
diff --git a/docs/articles/zuplo-context.md b/docs/articles/zuplo-context.mdx
similarity index 100%
rename from docs/articles/zuplo-context.md
rename to docs/articles/zuplo-context.mdx
diff --git a/docs/articles/zuplo-in-your-stack.md b/docs/articles/zuplo-in-your-stack.mdx
similarity index 100%
rename from docs/articles/zuplo-in-your-stack.md
rename to docs/articles/zuplo-in-your-stack.mdx
diff --git a/docs/articles/zuplo-json.md b/docs/articles/zuplo-json.mdx
similarity index 99%
rename from docs/articles/zuplo-json.md
rename to docs/articles/zuplo-json.mdx
index b5a20b68..dd930f8e 100644
--- a/docs/articles/zuplo-json.md
+++ b/docs/articles/zuplo-json.mdx
@@ -17,7 +17,7 @@ of the file is `1`.
}
```
-:::warning
+:::caution
The `zuplo.jsonc` file is not currently shown or editable in the Zuplo portal.
Connect your project to source control and edit inside your source control
diff --git a/docs/articles/zuplo-request.md b/docs/articles/zuplo-request.mdx
similarity index 100%
rename from docs/articles/zuplo-request.md
rename to docs/articles/zuplo-request.mdx
diff --git a/docs/cli/analytics.md b/docs/cli/analytics.mdx
similarity index 100%
rename from docs/cli/analytics.md
rename to docs/cli/analytics.mdx
diff --git a/docs/cli/authentication.md b/docs/cli/authentication.mdx
similarity index 100%
rename from docs/cli/authentication.md
rename to docs/cli/authentication.mdx
diff --git a/docs/cli/convert.md b/docs/cli/convert.mdx
similarity index 100%
rename from docs/cli/convert.md
rename to docs/cli/convert.mdx
diff --git a/docs/cli/deployments.md b/docs/cli/deployments.mdx
similarity index 100%
rename from docs/cli/deployments.md
rename to docs/cli/deployments.mdx
diff --git a/docs/cli/index.md b/docs/cli/index.md
deleted file mode 100644
index 28606361..00000000
--- a/docs/cli/index.md
+++ /dev/null
@@ -1,9 +0,0 @@
----
-title: Zuplo CLI
----
-
-The Zuplo CLI, `zup`, provides convenient tooling for common tasks that you
-might want to automate. You can use it to deploy zups through CI/CD, create and
-update environment variables, manage your tunnels, and more! It is powered by
-the [Zuplo Developer API](https://dev.zuplo.com/docs), which you can also call
-directly, if you want to create your own tooling.
diff --git a/docs/cli/installation.md b/docs/cli/installation.mdx
similarity index 100%
rename from docs/cli/installation.md
rename to docs/cli/installation.mdx
diff --git a/docs/cli/local-development.md b/docs/cli/local-development.mdx
similarity index 100%
rename from docs/cli/local-development.md
rename to docs/cli/local-development.mdx
diff --git a/docs/cli/project.md b/docs/cli/project.mdx
similarity index 100%
rename from docs/cli/project.md
rename to docs/cli/project.mdx
diff --git a/docs/cli/test.md b/docs/cli/test.mdx
similarity index 100%
rename from docs/cli/test.md
rename to docs/cli/test.mdx
diff --git a/docs/cli/tunnels.md b/docs/cli/tunnels.mdx
similarity index 100%
rename from docs/cli/tunnels.md
rename to docs/cli/tunnels.mdx
diff --git a/docs/cli/variables.md b/docs/cli/variables.mdx
similarity index 100%
rename from docs/cli/variables.md
rename to docs/cli/variables.mdx
diff --git a/docs/conferences/conference-prize-terms.md b/docs/conferences/conference-prize-terms.mdx
similarity index 100%
rename from docs/conferences/conference-prize-terms.md
rename to docs/conferences/conference-prize-terms.mdx
diff --git a/docs/errors/bad-request.md b/docs/errors/bad-request.mdx
similarity index 100%
rename from docs/errors/bad-request.md
rename to docs/errors/bad-request.mdx
diff --git a/docs/errors/build-error.md b/docs/errors/build-error.mdx
similarity index 100%
rename from docs/errors/build-error.md
rename to docs/errors/build-error.mdx
diff --git a/docs/errors/fatal-project-error.md b/docs/errors/fatal-project-error.mdx
similarity index 100%
rename from docs/errors/fatal-project-error.md
rename to docs/errors/fatal-project-error.mdx
diff --git a/docs/errors/get-head-body-error.md b/docs/errors/get-head-body-error.mdx
similarity index 100%
rename from docs/errors/get-head-body-error.md
rename to docs/errors/get-head-body-error.mdx
diff --git a/docs/errors/invalid-settings-dev-portal-auth-audience.md b/docs/errors/invalid-settings-dev-portal-auth-audience.mdx
similarity index 100%
rename from docs/errors/invalid-settings-dev-portal-auth-audience.md
rename to docs/errors/invalid-settings-dev-portal-auth-audience.mdx
diff --git a/docs/errors/invalid-settings-dev-portal-auth.md b/docs/errors/invalid-settings-dev-portal-auth.mdx
similarity index 100%
rename from docs/errors/invalid-settings-dev-portal-auth.md
rename to docs/errors/invalid-settings-dev-portal-auth.mdx
diff --git a/docs/errors/main-mod-error.md b/docs/errors/main-mod-error.mdx
similarity index 100%
rename from docs/errors/main-mod-error.md
rename to docs/errors/main-mod-error.mdx
diff --git a/docs/errors/no-project-set.md b/docs/errors/no-project-set.mdx
similarity index 100%
rename from docs/errors/no-project-set.md
rename to docs/errors/no-project-set.mdx
diff --git a/docs/errors/not-found.md b/docs/errors/not-found.mdx
similarity index 100%
rename from docs/errors/not-found.md
rename to docs/errors/not-found.mdx
diff --git a/docs/errors/schema-validation-failed.md b/docs/errors/schema-validation-failed.mdx
similarity index 100%
rename from docs/errors/schema-validation-failed.md
rename to docs/errors/schema-validation-failed.mdx
diff --git a/docs/errors/settings-to-dev-portal-migration.md b/docs/errors/settings-to-dev-portal-migration.mdx
similarity index 100%
rename from docs/errors/settings-to-dev-portal-migration.md
rename to docs/errors/settings-to-dev-portal-migration.mdx
diff --git a/docs/errors/system-configuration-error.md b/docs/errors/system-configuration-error.mdx
similarity index 100%
rename from docs/errors/system-configuration-error.md
rename to docs/errors/system-configuration-error.mdx
diff --git a/docs/errors/unauthorized.md b/docs/errors/unauthorized.mdx
similarity index 100%
rename from docs/errors/unauthorized.md
rename to docs/errors/unauthorized.mdx
diff --git a/docs/errors/unknown-error.md b/docs/errors/unknown-error.mdx
similarity index 100%
rename from docs/errors/unknown-error.md
rename to docs/errors/unknown-error.mdx
diff --git a/docs/handlers/aws-lambda.md b/docs/handlers/aws-lambda.mdx
similarity index 99%
rename from docs/handlers/aws-lambda.md
rename to docs/handlers/aws-lambda.mdx
index bf568ac2..58424576 100644
--- a/docs/handlers/aws-lambda.md
+++ b/docs/handlers/aws-lambda.mdx
@@ -33,7 +33,7 @@ on any route.
Configure the properties for your AWS Lambda function.
-:::warning
+:::caution
Don't add the AWS Secure Access Key directly in the `routes.oas.json` file.
Instead use environment variables like `$env(AWS_SECURE_ACCESS_KEY)`
diff --git a/docs/handlers/custom-handler.md b/docs/handlers/custom-handler.mdx
similarity index 100%
rename from docs/handlers/custom-handler.md
rename to docs/handlers/custom-handler.mdx
diff --git a/docs/handlers/index.mdx b/docs/handlers/index.mdx
deleted file mode 100644
index 1ce70b58..00000000
--- a/docs/handlers/index.mdx
+++ /dev/null
@@ -1,14 +0,0 @@
----
-title: Handlers
----
-
-import ItemCatalog from "@site/src/components/ItemCatalog";
-import handlers from "@site/src/data/handlers";
-
-Handlers are the core of the Zuplo API gateway. Handlers are responsible for streaming a response from your downstream API or a place where you can write custom code for any scenario.
-
-Handlers are in the middle of the request lifecycle of Zuplo between inbound and outbound [policies](/docs/policies).
-
-Zuplo comes with several built-in handlers as well as the ability to write your own with a custom module.
-
-
diff --git a/docs/handlers/openapi.md b/docs/handlers/openapi.mdx
similarity index 100%
rename from docs/handlers/openapi.md
rename to docs/handlers/openapi.mdx
diff --git a/docs/handlers/redirect.md b/docs/handlers/redirect.mdx
similarity index 100%
rename from docs/handlers/redirect.md
rename to docs/handlers/redirect.mdx
diff --git a/docs/handlers/system-handlers.md b/docs/handlers/system-handlers.mdx
similarity index 100%
rename from docs/handlers/system-handlers.md
rename to docs/handlers/system-handlers.mdx
diff --git a/docs/handlers/url-forward.md b/docs/handlers/url-forward.mdx
similarity index 100%
rename from docs/handlers/url-forward.md
rename to docs/handlers/url-forward.mdx
diff --git a/docs/handlers/url-rewrite.md b/docs/handlers/url-rewrite.mdx
similarity index 100%
rename from docs/handlers/url-rewrite.md
rename to docs/handlers/url-rewrite.mdx
diff --git a/docs/handlers/websocket-handler.md b/docs/handlers/websocket-handler.mdx
similarity index 100%
rename from docs/handlers/websocket-handler.md
rename to docs/handlers/websocket-handler.mdx
diff --git a/docs/intro.mdx b/docs/intro.mdx
deleted file mode 100644
index e942b970..00000000
--- a/docs/intro.mdx
+++ /dev/null
@@ -1,42 +0,0 @@
----
-title: Zuplo Docs
----
-
-import Link from "@docusaurus/Link";
-
-import {
- CustomTOCList,
- CustomTOCListSection,
- CustomTOCListHead,
- CustomTOCListContent,
-} from "@site/src/components/CustomTOCList";
-
-Learn how to use Zuplo to add API-key management, developer documentation, and rate-limiting, for any stack.
-
-
-
- OVERVIEW
-
- What is Zuplo?
- Who uses Zuplo, and why?
- Zuplo in your stack
-
-
-
- Getting Started
-
-
- Step 1 - Setup Basic Gateway
-
-
- Step 2 - API Key Auth
-
-
- Step 3 - Rate Limiting
-
-
- Step 4 - Deploying to the Edge
-
-
-
-
diff --git a/docs/overview/policies.md b/docs/overview/policies.mdx
similarity index 100%
rename from docs/overview/policies.md
rename to docs/overview/policies.mdx
diff --git a/docs/sample-apis.md b/docs/sample-apis.mdx
similarity index 100%
rename from docs/sample-apis.md
rename to docs/sample-apis.mdx
diff --git a/policies/composite-inbound/intro.md b/policies/composite-inbound/intro.md
index 1cdda396..6903550a 100644
--- a/policies/composite-inbound/intro.md
+++ b/policies/composite-inbound/intro.md
@@ -1,7 +1,7 @@
The Composite policy allows you to create groups of other policies, for easy
reuse across multiple routes. Other policies are referenced by their `name`.
-:::warning
+:::caution
Be careful not to create circular references which can cause your gateway to
fail.
diff --git a/policies/geo-filter-inbound/doc.md b/policies/geo-filter-inbound/doc.md
index 6a012153..f835b67e 100644
--- a/policies/geo-filter-inbound/doc.md
+++ b/policies/geo-filter-inbound/doc.md
@@ -11,7 +11,7 @@ Specify an allow list or block list of:
example, "TX"
- **ASNs** - ASN of the incoming request, for example, 395747.
-:::warning
+:::caution
If you specify an allow and block list for the same location type (e.g.
`country`) may have no effect or block all requests.
diff --git a/static/img/key.svg b/public/img/key.svg
similarity index 100%
rename from static/img/key.svg
rename to public/img/key.svg
diff --git a/static/media/api-keys/zuplo-api-keys.png b/public/media/api-keys/zuplo-api-keys.png
similarity index 100%
rename from static/media/api-keys/zuplo-api-keys.png
rename to public/media/api-keys/zuplo-api-keys.png
diff --git a/static/media/app-user-zuplo-api.png b/public/media/app-user-zuplo-api.png
similarity index 100%
rename from static/media/app-user-zuplo-api.png
rename to public/media/app-user-zuplo-api.png
diff --git a/static/media/change-environments.png b/public/media/change-environments.png
similarity index 100%
rename from static/media/change-environments.png
rename to public/media/change-environments.png
diff --git a/static/media/developer-portal/adding-pages/docs-folder.png b/public/media/developer-portal/adding-pages/docs-folder.png
similarity index 100%
rename from static/media/developer-portal/adding-pages/docs-folder.png
rename to public/media/developer-portal/adding-pages/docs-folder.png
diff --git a/static/media/developer-portal/adding-pages/style-preview.png b/public/media/developer-portal/adding-pages/style-preview.png
similarity index 100%
rename from static/media/developer-portal/adding-pages/style-preview.png
rename to public/media/developer-portal/adding-pages/style-preview.png
diff --git a/static/media/developer-portal/configuration/faker.png b/public/media/developer-portal/configuration/faker.png
similarity index 100%
rename from static/media/developer-portal/configuration/faker.png
rename to public/media/developer-portal/configuration/faker.png
diff --git a/static/media/developer-portal/overview/developer-portal.png b/public/media/developer-portal/overview/developer-portal.png
similarity index 100%
rename from static/media/developer-portal/overview/developer-portal.png
rename to public/media/developer-portal/overview/developer-portal.png
diff --git a/static/media/developer-portal/setup/dev-portal-auth0.png b/public/media/developer-portal/setup/dev-portal-auth0.png
similarity index 100%
rename from static/media/developer-portal/setup/dev-portal-auth0.png
rename to public/media/developer-portal/setup/dev-portal-auth0.png
diff --git a/static/media/developer-portal/setup/dev-portal-okta.png b/public/media/developer-portal/setup/dev-portal-okta.png
similarity index 100%
rename from static/media/developer-portal/setup/dev-portal-okta.png
rename to public/media/developer-portal/setup/dev-portal-okta.png
diff --git a/static/media/embed/getting-started/api-key-consumers.png b/public/media/embed/getting-started/api-key-consumers.png
similarity index 100%
rename from static/media/embed/getting-started/api-key-consumers.png
rename to public/media/embed/getting-started/api-key-consumers.png
diff --git a/static/media/embed/getting-started/auth-policy.png b/public/media/embed/getting-started/auth-policy.png
similarity index 100%
rename from static/media/embed/getting-started/auth-policy.png
rename to public/media/embed/getting-started/auth-policy.png
diff --git a/static/media/embed/getting-started/open-portal.png b/public/media/embed/getting-started/open-portal.png
similarity index 100%
rename from static/media/embed/getting-started/open-portal.png
rename to public/media/embed/getting-started/open-portal.png
diff --git a/static/media/embed/getting-started/route.png b/public/media/embed/getting-started/route.png
similarity index 100%
rename from static/media/embed/getting-started/route.png
rename to public/media/embed/getting-started/route.png
diff --git a/static/media/embed/getting-started/settings.png b/public/media/embed/getting-started/settings.png
similarity index 100%
rename from static/media/embed/getting-started/settings.png
rename to public/media/embed/getting-started/settings.png
diff --git a/static/media/embed/getting-started/test-api.png b/public/media/embed/getting-started/test-api.png
similarity index 100%
rename from static/media/embed/getting-started/test-api.png
rename to public/media/embed/getting-started/test-api.png
diff --git a/static/media/embed/getting-started/test-console.png b/public/media/embed/getting-started/test-console.png
similarity index 100%
rename from static/media/embed/getting-started/test-console.png
rename to public/media/embed/getting-started/test-console.png
diff --git a/static/media/getting-started-hello-world/default-route.png b/public/media/getting-started-hello-world/default-route.png
similarity index 100%
rename from static/media/getting-started-hello-world/default-route.png
rename to public/media/getting-started-hello-world/default-route.png
diff --git a/static/media/getting-started-hello-world/project-url.png b/public/media/getting-started-hello-world/project-url.png
similarity index 100%
rename from static/media/getting-started-hello-world/project-url.png
rename to public/media/getting-started-hello-world/project-url.png
diff --git a/static/media/getting-started-hello-world/request-handler-link.png b/public/media/getting-started-hello-world/request-handler-link.png
similarity index 100%
rename from static/media/getting-started-hello-world/request-handler-link.png
rename to public/media/getting-started-hello-world/request-handler-link.png
diff --git a/static/media/getting-started-hello-world/test-client.png b/public/media/getting-started-hello-world/test-client.png
similarity index 100%
rename from static/media/getting-started-hello-world/test-client.png
rename to public/media/getting-started-hello-world/test-client.png
diff --git a/static/media/getting-started-old/2021-11-15_15.06.39.gif b/public/media/getting-started-old/2021-11-15_15.06.39.gif
similarity index 100%
rename from static/media/getting-started-old/2021-11-15_15.06.39.gif
rename to public/media/getting-started-old/2021-11-15_15.06.39.gif
diff --git a/static/media/getting-started-old/2021-11-15_15.27.35.gif b/public/media/getting-started-old/2021-11-15_15.27.35.gif
similarity index 100%
rename from static/media/getting-started-old/2021-11-15_15.27.35.gif
rename to public/media/getting-started-old/2021-11-15_15.27.35.gif
diff --git a/static/media/getting-started-old/2021-11-15_15.44.11.gif b/public/media/getting-started-old/2021-11-15_15.44.11.gif
similarity index 100%
rename from static/media/getting-started-old/2021-11-15_15.44.11.gif
rename to public/media/getting-started-old/2021-11-15_15.44.11.gif
diff --git a/static/media/getting-started-old/2021-12-02_20.39.21.gif b/public/media/getting-started-old/2021-12-02_20.39.21.gif
similarity index 100%
rename from static/media/getting-started-old/2021-12-02_20.39.21.gif
rename to public/media/getting-started-old/2021-12-02_20.39.21.gif
diff --git a/static/media/getting-started-old/Untitled.png b/public/media/getting-started-old/Untitled.png
similarity index 100%
rename from static/media/getting-started-old/Untitled.png
rename to public/media/getting-started-old/Untitled.png
diff --git a/static/media/getting-started-old/Untitled_1.png b/public/media/getting-started-old/Untitled_1.png
similarity index 100%
rename from static/media/getting-started-old/Untitled_1.png
rename to public/media/getting-started-old/Untitled_1.png
diff --git a/static/media/getting-started-old/Untitled_2.png b/public/media/getting-started-old/Untitled_2.png
similarity index 100%
rename from static/media/getting-started-old/Untitled_2.png
rename to public/media/getting-started-old/Untitled_2.png
diff --git a/static/media/getting-started/add-policy.png b/public/media/getting-started/add-policy.png
similarity index 100%
rename from static/media/getting-started/add-policy.png
rename to public/media/getting-started/add-policy.png
diff --git a/static/media/getting-started/add-route.png b/public/media/getting-started/add-route.png
similarity index 100%
rename from static/media/getting-started/add-route.png
rename to public/media/getting-started/add-route.png
diff --git a/static/media/getting-started/path.png b/public/media/getting-started/path.png
similarity index 100%
rename from static/media/getting-started/path.png
rename to public/media/getting-started/path.png
diff --git a/static/media/getting-started/rate-limit.png b/public/media/getting-started/rate-limit.png
similarity index 100%
rename from static/media/getting-started/rate-limit.png
rename to public/media/getting-started/rate-limit.png
diff --git a/static/media/getting-started/rewrite.png b/public/media/getting-started/rewrite.png
similarity index 100%
rename from static/media/getting-started/rewrite.png
rename to public/media/getting-started/rewrite.png
diff --git a/static/media/getting-started/route-matched.png b/public/media/getting-started/route-matched.png
similarity index 100%
rename from static/media/getting-started/route-matched.png
rename to public/media/getting-started/route-matched.png
diff --git a/static/media/getting-started/route-tester.png b/public/media/getting-started/route-tester.png
similarity index 100%
rename from static/media/getting-started/route-tester.png
rename to public/media/getting-started/route-tester.png
diff --git a/static/media/getting-started/test-client.png b/public/media/getting-started/test-client.png
similarity index 100%
rename from static/media/getting-started/test-client.png
rename to public/media/getting-started/test-client.png
diff --git a/static/media/github-app-install-perms.png b/public/media/github-app-install-perms.png
similarity index 100%
rename from static/media/github-app-install-perms.png
rename to public/media/github-app-install-perms.png
diff --git a/static/media/github-deployment-in-progress.png b/public/media/github-deployment-in-progress.png
similarity index 100%
rename from static/media/github-deployment-in-progress.png
rename to public/media/github-deployment-in-progress.png
diff --git a/static/media/github-deployment-succeed.png b/public/media/github-deployment-succeed.png
similarity index 100%
rename from static/media/github-deployment-succeed.png
rename to public/media/github-deployment-succeed.png
diff --git a/static/media/github-project-environments.png b/public/media/github-project-environments.png
similarity index 100%
rename from static/media/github-project-environments.png
rename to public/media/github-project-environments.png
diff --git a/static/media/github-settings-connected.png b/public/media/github-settings-connected.png
similarity index 100%
rename from static/media/github-settings-connected.png
rename to public/media/github-settings-connected.png
diff --git a/static/media/github-settings.png b/public/media/github-settings.png
similarity index 100%
rename from static/media/github-settings.png
rename to public/media/github-settings.png
diff --git a/static/media/guides/archiving-requests-to-storage/2021-11-21_22.51.33.gif b/public/media/guides/archiving-requests-to-storage/2021-11-21_22.51.33.gif
similarity index 100%
rename from static/media/guides/archiving-requests-to-storage/2021-11-21_22.51.33.gif
rename to public/media/guides/archiving-requests-to-storage/2021-11-21_22.51.33.gif
diff --git a/static/media/guides/archiving-requests-to-storage/Untitled.png b/public/media/guides/archiving-requests-to-storage/Untitled.png
similarity index 100%
rename from static/media/guides/archiving-requests-to-storage/Untitled.png
rename to public/media/guides/archiving-requests-to-storage/Untitled.png
diff --git a/static/media/guides/archiving-requests-to-storage/Untitled_1.png b/public/media/guides/archiving-requests-to-storage/Untitled_1.png
similarity index 100%
rename from static/media/guides/archiving-requests-to-storage/Untitled_1.png
rename to public/media/guides/archiving-requests-to-storage/Untitled_1.png
diff --git a/static/media/guides/archiving-requests-to-storage/Untitled_2.png b/public/media/guides/archiving-requests-to-storage/Untitled_2.png
similarity index 100%
rename from static/media/guides/archiving-requests-to-storage/Untitled_2.png
rename to public/media/guides/archiving-requests-to-storage/Untitled_2.png
diff --git a/static/media/guides/proxy-a-simple-get-request/2021-11-21_20.12.10.gif b/public/media/guides/proxy-a-simple-get-request/2021-11-21_20.12.10.gif
similarity index 100%
rename from static/media/guides/proxy-a-simple-get-request/2021-11-21_20.12.10.gif
rename to public/media/guides/proxy-a-simple-get-request/2021-11-21_20.12.10.gif
diff --git a/static/media/guides/proxy-a-simple-get-request/2021-11-21_20.34.38.gif b/public/media/guides/proxy-a-simple-get-request/2021-11-21_20.34.38.gif
similarity index 100%
rename from static/media/guides/proxy-a-simple-get-request/2021-11-21_20.34.38.gif
rename to public/media/guides/proxy-a-simple-get-request/2021-11-21_20.34.38.gif
diff --git a/static/media/guides/safely-cone-a-request-or-response/Untitled.png b/public/media/guides/safely-cone-a-request-or-response/Untitled.png
similarity index 100%
rename from static/media/guides/safely-cone-a-request-or-response/Untitled.png
rename to public/media/guides/safely-cone-a-request-or-response/Untitled.png
diff --git a/static/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_16.23.562x.png b/public/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_16.23.562x.png
similarity index 100%
rename from static/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_16.23.562x.png
rename to public/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_16.23.562x.png
diff --git a/static/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_16.30.402x.png b/public/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_16.30.402x.png
similarity index 100%
rename from static/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_16.30.402x.png
rename to public/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_16.30.402x.png
diff --git a/static/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_16.35.432x.png b/public/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_16.35.432x.png
similarity index 100%
rename from static/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_16.35.432x.png
rename to public/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_16.35.432x.png
diff --git a/static/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_16.47.242x.png b/public/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_16.47.242x.png
similarity index 100%
rename from static/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_16.47.242x.png
rename to public/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_16.47.242x.png
diff --git a/static/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_16.51.592x.png b/public/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_16.51.592x.png
similarity index 100%
rename from static/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_16.51.592x.png
rename to public/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_16.51.592x.png
diff --git a/static/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_16.55.432x.png b/public/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_16.55.432x.png
similarity index 100%
rename from static/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_16.55.432x.png
rename to public/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_16.55.432x.png
diff --git a/static/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_17.03.342x.png b/public/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_17.03.342x.png
similarity index 100%
rename from static/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_17.03.342x.png
rename to public/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_17.03.342x.png
diff --git a/static/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_17.06.082x.png b/public/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_17.06.082x.png
similarity index 100%
rename from static/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_17.06.082x.png
rename to public/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_17.06.082x.png
diff --git a/static/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_17.17.072x.png b/public/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_17.17.072x.png
similarity index 100%
rename from static/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_17.17.072x.png
rename to public/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_17.17.072x.png
diff --git a/static/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_17.39.352x.png b/public/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_17.39.352x.png
similarity index 100%
rename from static/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_17.39.352x.png
rename to public/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_17.39.352x.png
diff --git a/static/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_17.41.042x.png b/public/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_17.41.042x.png
similarity index 100%
rename from static/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_17.41.042x.png
rename to public/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_17.41.042x.png
diff --git a/static/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_17.44.552x.png b/public/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_17.44.552x.png
similarity index 100%
rename from static/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_17.44.552x.png
rename to public/media/guides/setup-jwt-auth-with-auth0/CleanShot_2021-11-29_at_17.44.552x.png
diff --git a/static/media/guides/setup-jwt-auth-with-auth0/Untitled.png b/public/media/guides/setup-jwt-auth-with-auth0/Untitled.png
similarity index 100%
rename from static/media/guides/setup-jwt-auth-with-auth0/Untitled.png
rename to public/media/guides/setup-jwt-auth-with-auth0/Untitled.png
diff --git a/static/media/guides/setup-jwt-auth-with-auth0/Untitled_1.png b/public/media/guides/setup-jwt-auth-with-auth0/Untitled_1.png
similarity index 100%
rename from static/media/guides/setup-jwt-auth-with-auth0/Untitled_1.png
rename to public/media/guides/setup-jwt-auth-with-auth0/Untitled_1.png
diff --git a/static/media/guides/testing-graphql/test-request.png b/public/media/guides/testing-graphql/test-request.png
similarity index 100%
rename from static/media/guides/testing-graphql/test-request.png
rename to public/media/guides/testing-graphql/test-request.png
diff --git a/static/media/performance.png b/public/media/performance.png
similarity index 100%
rename from static/media/performance.png
rename to public/media/performance.png
diff --git a/static/media/policies/2021-11-21_21.32.35.gif b/public/media/policies/2021-11-21_21.32.35.gif
similarity index 100%
rename from static/media/policies/2021-11-21_21.32.35.gif
rename to public/media/policies/2021-11-21_21.32.35.gif
diff --git a/static/media/policies/2021-11-21_21.44.35.gif b/public/media/policies/2021-11-21_21.44.35.gif
similarity index 100%
rename from static/media/policies/2021-11-21_21.44.35.gif
rename to public/media/policies/2021-11-21_21.44.35.gif
diff --git a/static/media/policies/Untitled.png b/public/media/policies/Untitled.png
similarity index 100%
rename from static/media/policies/Untitled.png
rename to public/media/policies/Untitled.png
diff --git a/static/media/policies/policy-diagram1.png b/public/media/policies/policy-diagram1.png
similarity index 100%
rename from static/media/policies/policy-diagram1.png
rename to public/media/policies/policy-diagram1.png
diff --git a/static/media/portal/Untitled.png b/public/media/portal/Untitled.png
similarity index 100%
rename from static/media/portal/Untitled.png
rename to public/media/portal/Untitled.png
diff --git a/static/media/portal/route-path.png b/public/media/portal/route-path.png
similarity index 100%
rename from static/media/portal/route-path.png
rename to public/media/portal/route-path.png
diff --git a/static/media/quickstarts/create-new-empty-module.gif b/public/media/quickstarts/create-new-empty-module.gif
similarity index 100%
rename from static/media/quickstarts/create-new-empty-module.gif
rename to public/media/quickstarts/create-new-empty-module.gif
diff --git a/static/media/quickstarts/gateway-over-airtable/airtable-curl.png b/public/media/quickstarts/gateway-over-airtable/airtable-curl.png
similarity index 100%
rename from static/media/quickstarts/gateway-over-airtable/airtable-curl.png
rename to public/media/quickstarts/gateway-over-airtable/airtable-curl.png
diff --git a/static/media/quickstarts/gateway-over-airtable/airtable-start-from-template.png b/public/media/quickstarts/gateway-over-airtable/airtable-start-from-template.png
similarity index 100%
rename from static/media/quickstarts/gateway-over-airtable/airtable-start-from-template.png
rename to public/media/quickstarts/gateway-over-airtable/airtable-start-from-template.png
diff --git a/static/media/quickstarts/gateway-over-airtable/environment-variables.png b/public/media/quickstarts/gateway-over-airtable/environment-variables.png
similarity index 100%
rename from static/media/quickstarts/gateway-over-airtable/environment-variables.png
rename to public/media/quickstarts/gateway-over-airtable/environment-variables.png
diff --git a/static/media/quickstarts/gateway-over-airtable/new-request-handler.png b/public/media/quickstarts/gateway-over-airtable/new-request-handler.png
similarity index 100%
rename from static/media/quickstarts/gateway-over-airtable/new-request-handler.png
rename to public/media/quickstarts/gateway-over-airtable/new-request-handler.png
diff --git a/static/media/quickstarts/gateway-over-airtable/route-path.png b/public/media/quickstarts/gateway-over-airtable/route-path.png
similarity index 100%
rename from static/media/quickstarts/gateway-over-airtable/route-path.png
rename to public/media/quickstarts/gateway-over-airtable/route-path.png
diff --git a/static/media/quickstarts/gateway-over-airtable/test-route.png b/public/media/quickstarts/gateway-over-airtable/test-route.png
similarity index 100%
rename from static/media/quickstarts/gateway-over-airtable/test-route.png
rename to public/media/quickstarts/gateway-over-airtable/test-route.png
diff --git a/static/media/quickstarts/gateway-over-salesforce/environment-variables.png b/public/media/quickstarts/gateway-over-salesforce/environment-variables.png
similarity index 100%
rename from static/media/quickstarts/gateway-over-salesforce/environment-variables.png
rename to public/media/quickstarts/gateway-over-salesforce/environment-variables.png
diff --git a/static/media/quickstarts/gateway-over-salesforce/function-picker.png b/public/media/quickstarts/gateway-over-salesforce/function-picker.png
similarity index 100%
rename from static/media/quickstarts/gateway-over-salesforce/function-picker.png
rename to public/media/quickstarts/gateway-over-salesforce/function-picker.png
diff --git a/static/media/quickstarts/gateway-over-salesforce/route-path.png b/public/media/quickstarts/gateway-over-salesforce/route-path.png
similarity index 100%
rename from static/media/quickstarts/gateway-over-salesforce/route-path.png
rename to public/media/quickstarts/gateway-over-salesforce/route-path.png
diff --git a/static/media/quickstarts/gateway-over-salesforce/test-route.png b/public/media/quickstarts/gateway-over-salesforce/test-route.png
similarity index 100%
rename from static/media/quickstarts/gateway-over-salesforce/test-route.png
rename to public/media/quickstarts/gateway-over-salesforce/test-route.png
diff --git a/static/media/quickstarts/instant-developer-portal/dev-portal-example.png b/public/media/quickstarts/instant-developer-portal/dev-portal-example.png
similarity index 100%
rename from static/media/quickstarts/instant-developer-portal/dev-portal-example.png
rename to public/media/quickstarts/instant-developer-portal/dev-portal-example.png
diff --git a/static/media/quickstarts/instant-developer-portal/dev-portal-link.png b/public/media/quickstarts/instant-developer-portal/dev-portal-link.png
similarity index 100%
rename from static/media/quickstarts/instant-developer-portal/dev-portal-link.png
rename to public/media/quickstarts/instant-developer-portal/dev-portal-link.png
diff --git a/static/media/quickstarts/per-customer-rate-limits/add-route.png b/public/media/quickstarts/per-customer-rate-limits/add-route.png
similarity index 100%
rename from static/media/quickstarts/per-customer-rate-limits/add-route.png
rename to public/media/quickstarts/per-customer-rate-limits/add-route.png
diff --git a/static/media/quickstarts/per-customer-rate-limits/rate-limit-policy.png b/public/media/quickstarts/per-customer-rate-limits/rate-limit-policy.png
similarity index 100%
rename from static/media/quickstarts/per-customer-rate-limits/rate-limit-policy.png
rename to public/media/quickstarts/per-customer-rate-limits/rate-limit-policy.png
diff --git a/static/media/readme/create-job.png b/public/media/readme/create-job.png
old mode 100755
new mode 100644
similarity index 100%
rename from static/media/readme/create-job.png
rename to public/media/readme/create-job.png
diff --git a/static/media/readme/create_review_app.png b/public/media/readme/create_review_app.png
similarity index 100%
rename from static/media/readme/create_review_app.png
rename to public/media/readme/create_review_app.png
diff --git a/static/media/readme/deployed.png b/public/media/readme/deployed.png
similarity index 100%
rename from static/media/readme/deployed.png
rename to public/media/readme/deployed.png
diff --git a/static/media/readme/job-settings.png b/public/media/readme/job-settings.png
old mode 100755
new mode 100644
similarity index 100%
rename from static/media/readme/job-settings.png
rename to public/media/readme/job-settings.png
diff --git a/static/media/readme/requested_deployment.png b/public/media/readme/requested_deployment.png
similarity index 100%
rename from static/media/readme/requested_deployment.png
rename to public/media/readme/requested_deployment.png
diff --git a/static/media/readme/structure.png b/public/media/readme/structure.png
similarity index 100%
rename from static/media/readme/structure.png
rename to public/media/readme/structure.png
diff --git a/static/media/runtime/path-matching/route-test-result.png b/public/media/runtime/path-matching/route-test-result.png
similarity index 100%
rename from static/media/runtime/path-matching/route-test-result.png
rename to public/media/runtime/path-matching/route-test-result.png
diff --git a/static/media/runtime/path-matching/route-tester.png b/public/media/runtime/path-matching/route-tester.png
similarity index 100%
rename from static/media/runtime/path-matching/route-tester.png
rename to public/media/runtime/path-matching/route-tester.png
diff --git a/static/media/scale.png b/public/media/scale.png
similarity index 100%
rename from static/media/scale.png
rename to public/media/scale.png
diff --git a/static/media/supabase-auth/copy-key.png b/public/media/supabase-auth/copy-key.png
similarity index 100%
rename from static/media/supabase-auth/copy-key.png
rename to public/media/supabase-auth/copy-key.png
diff --git a/static/media/supabase-auth/dev-portal-loaded.png b/public/media/supabase-auth/dev-portal-loaded.png
similarity index 100%
rename from static/media/supabase-auth/dev-portal-loaded.png
rename to public/media/supabase-auth/dev-portal-loaded.png
diff --git a/static/media/supabase-auth/dev-portal.png b/public/media/supabase-auth/dev-portal.png
similarity index 100%
rename from static/media/supabase-auth/dev-portal.png
rename to public/media/supabase-auth/dev-portal.png
diff --git a/static/media/supabase-auth/email.png b/public/media/supabase-auth/email.png
similarity index 100%
rename from static/media/supabase-auth/email.png
rename to public/media/supabase-auth/email.png
diff --git a/static/media/supabase-auth/initial-login.png b/public/media/supabase-auth/initial-login.png
similarity index 100%
rename from static/media/supabase-auth/initial-login.png
rename to public/media/supabase-auth/initial-login.png
diff --git a/static/media/supabase-auth/supabase-github-login.gif b/public/media/supabase-auth/supabase-github-login.gif
similarity index 100%
rename from static/media/supabase-auth/supabase-github-login.gif
rename to public/media/supabase-auth/supabase-github-login.gif
diff --git a/static/media/supabase-auth/supabase-login.gif b/public/media/supabase-auth/supabase-login.gif
similarity index 100%
rename from static/media/supabase-auth/supabase-login.gif
rename to public/media/supabase-auth/supabase-login.gif
diff --git a/static/media/supabase-auth/supabase-site-url.png b/public/media/supabase-auth/supabase-site-url.png
similarity index 100%
rename from static/media/supabase-auth/supabase-site-url.png
rename to public/media/supabase-auth/supabase-site-url.png
diff --git a/static/media/url-rewrite-handler-selection.png b/public/media/url-rewrite-handler-selection.png
similarity index 100%
rename from static/media/url-rewrite-handler-selection.png
rename to public/media/url-rewrite-handler-selection.png
diff --git a/static/media/user-zuplo-api.png b/public/media/user-zuplo-api.png
similarity index 100%
rename from static/media/user-zuplo-api.png
rename to public/media/user-zuplo-api.png
diff --git a/src/app/articles/node-modules/page.tsx b/src/app/articles/node-modules/page.tsx
deleted file mode 100644
index 9886796c..00000000
--- a/src/app/articles/node-modules/page.tsx
+++ /dev/null
@@ -1,62 +0,0 @@
-import { DocsLayout } from "@/components/DocsLayout";
-import { Bundle } from "@/lib/types";
-import { readFile } from "fs/promises";
-import { Metadata } from "next";
-import Link from "next/link";
-import { join } from "path";
-
-export const metadata: Metadata = {
- title: "Node Modules",
-};
-
-export default async function Page() {
- const data = (
- (await readFile(join(process.cwd(), "./bundles.json"), "utf-8").then(
- JSON.parse,
- )) as { bundles: Bundle[] }
- ).bundles.filter((bundle) => bundle.public);
-
- return (
-
-
- Zuplo generally supports node modules, but to ensure the security and
- performance of each API Gateway we must approve each module. This
- process only takes a few hours so if you need something new please reach
- out to use on twitter{" "}
- @zuplo or through email{" "}
- whatzup@zuplo.com
-
-
-
Below are the currently installed modules.
-
-
-
-
-
Module
-
Version
-
Description
-
-
-
- {data.map((bundle) => (
-
-
-
- {bundle.name}
-
-
-
{bundle.version}
-
{bundle.description}
-
- ))}
-
-
-
- );
-}
diff --git a/src/build/navigation.mjs b/src/build/navigation.mjs
index 50f355c5..a53392eb 100644
--- a/src/build/navigation.mjs
+++ b/src/build/navigation.mjs
@@ -28,7 +28,7 @@ function buildNavSection(rawSection) {
href: `/${item}`,
});
} else {
- const docPath = path.resolve(path.join("docs", `${item}.md`));
+ const docPath = path.resolve(path.join("docs", `${item}.mdx`));
const docMd = fs.readFileSync(docPath, "utf8");
const { data } = matter(docMd);
section.items.push({
diff --git a/src/components/mdx/BundlesTable.tsx b/src/components/mdx/BundlesTable.tsx
new file mode 100644
index 00000000..339c6c04
--- /dev/null
+++ b/src/components/mdx/BundlesTable.tsx
@@ -0,0 +1,38 @@
+import React from "react";
+import Link from "next/link";
+import data from "../../../bundles.json";
+
+const BundlesTable: React.FC<{ url: string }> = ({ url }) => {
+ return (
+