diff --git a/docs/guides/example-projects/realtime-fal-ai.mdx b/docs/guides/example-projects/realtime-fal-ai.mdx
new file mode 100644
index 0000000000..7c156276b2
--- /dev/null
+++ b/docs/guides/example-projects/realtime-fal-ai.mdx
@@ -0,0 +1,42 @@
+---
+title: "Generate an image from a prompt using Fal.ai and Trigger.dev Realtime"
+sidebarTitle: "Realtime image gen with Fal.ai"
+description: "This example project generates an image from a prompt using Fal.ai and shows the progress of the task on the frontend using Trigger.dev Realtime."
+---
+
+## Overview
+
+This full stack Next.js project showcases the following:
+
+- A Trigger.dev task which [generates an image from a prompt using Fal.ai](https://github.com/triggerdotdev/examples/blob/main/realtime-fal-ai-image-generation/src/trigger/realtime-generate-image.ts)
+- When a [form is submitted](https://github.com/triggerdotdev/examples/blob/main/realtime-fal-ai-image-generation/src/app/page.tsx) in the UI, triggering the task using a [server action](https://github.com/triggerdotdev/examples/blob/main/realtime-fal-ai-image-generation/src/app/actions/process-image.ts)
+- Showing the [progress of the task](https://github.com/triggerdotdev/examples/blob/main/realtime-fal-ai-image-generation/src/app/processing/%5Bid%5D/ProcessingContent.tsx) on the frontend using Trigger.dev Realtime. This also includes error handling and a fallback UI
+- Once the task is completed, showing the generated image on the frontend next to the original image
+
+## GitHub repo
+
+
+ Click here to view the full code for this project in our examples repository on GitHub. You can
+ fork it and use it as a starting point for your own project.
+
+
+## Walkthrough video
+
+This video walks through the process of creating this task in a Next.js project.
+
+
+
+
diff --git a/docs/guides/examples/fal-ai-realtime.mdx b/docs/guides/examples/fal-ai-realtime.mdx
index 999ad6c438..2314f4d7cb 100644
--- a/docs/guides/examples/fal-ai-realtime.mdx
+++ b/docs/guides/examples/fal-ai-realtime.mdx
@@ -9,7 +9,16 @@ description: "This example task generates an image from a prompt using Fal.ai an
This video walks through the process of creating this task in a Next.js project.
-
+
## Prerequisites
@@ -20,7 +29,7 @@ This video walks through the process of creating this task in a Next.js project.
## Task code
-This task converts an image to a cartoon using fal AI, and uploads the result to Cloudflare R2.
+This task generates an image from a prompt using Fal.ai.
```ts trigger/fal-ai-image-from-prompt-realtime.ts
import * as fal from "@fal-ai/serverless-client";
diff --git a/docs/guides/introduction.mdx b/docs/guides/introduction.mdx
index 51d58b0a49..5ed3e4d4de 100644
--- a/docs/guides/introduction.mdx
+++ b/docs/guides/introduction.mdx
@@ -33,9 +33,17 @@ Get set up fast using our detailed walk-through guides.
| [Using webhooks in Remix](/guides/frameworks/remix-webhooks) | Trigger tasks from a webhook in Remix |
| [Stripe webhooks](/guides/examples/stripe-webhook) | Trigger tasks from incoming Stripe webhook events |
+## Example projects
+
+Example projects are full projects with example repos you can fork and use. These are a great way of learning how to encorporate Trigger.dev into your project.
+
+| Example project | Description | Framework | GitHub Repo |
+| :--------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------- | :-------- | :---------------------------------------------------------------------------------------------------- |
+| [Realtime Fal.ai image generation](/guides/example-projects/realtime-fal-ai) | Generate an image from a prompt using Fal.ai and show the progress of the task on the frontend using Realtime. | Next.js | [View the repo](https://github.com/triggerdotdev/examples/tree/main/realtime-fal-ai-image-generation) |
+
## Example tasks
-Tasks you can copy and paste to get started with Trigger.dev. They can all be extended and customized to fit your needs.
+Task code you can copy and paste to use in your project. They can all be extended and customized to fit your needs.
| Example task | Description |
| :---------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------- |
diff --git a/docs/mint.json b/docs/mint.json
index 0154122ef1..0ebf027168 100644
--- a/docs/mint.json
+++ b/docs/mint.json
@@ -1,10 +1,7 @@
{
"$schema": "https://mintlify.com/schema.json",
"name": "Trigger.dev",
- "openapi": [
- "/openapi.yml",
- "/v3-openapi.yaml"
- ],
+ "openapi": ["/openapi.yml", "/v3-openapi.yaml"],
"api": {
"playground": {
"mode": "simple"
@@ -140,30 +137,20 @@
"pages": [
{
"group": "Tasks",
- "pages": [
- "tasks/overview",
- "tasks/schemaTask",
- "tasks/scheduled"
- ]
+ "pages": ["tasks/overview", "tasks/schemaTask", "tasks/scheduled"]
},
"triggering",
"runs",
"apikeys",
{
"group": "Configuration",
- "pages": [
- "config/config-file",
- "config/extensions/overview"
- ]
+ "pages": ["config/config-file", "config/extensions/overview"]
}
]
},
{
"group": "Development",
- "pages": [
- "cli-dev",
- "run-tests"
- ]
+ "pages": ["cli-dev", "run-tests"]
},
{
"group": "Deployment",
@@ -173,9 +160,7 @@
"github-actions",
{
"group": "Deployment integrations",
- "pages": [
- "vercel-integration"
- ]
+ "pages": ["vercel-integration"]
}
]
},
@@ -187,13 +172,7 @@
"errors-retrying",
{
"group": "Wait",
- "pages": [
- "wait",
- "wait-for",
- "wait-until",
- "wait-for-event",
- "wait-for-request"
- ]
+ "pages": ["wait", "wait-for", "wait-until", "wait-for-event", "wait-for-request"]
},
"queue-concurrency",
"versioning",
@@ -238,10 +217,7 @@
"management/overview",
{
"group": "Tasks API",
- "pages": [
- "management/tasks/trigger",
- "management/tasks/batch-trigger"
- ]
+ "pages": ["management/tasks/trigger", "management/tasks/batch-trigger"]
},
{
"group": "Runs API",
@@ -280,9 +256,7 @@
},
{
"group": "Projects API",
- "pages": [
- "management/projects/runs"
- ]
+ "pages": ["management/projects/runs"]
}
]
},
@@ -328,17 +302,11 @@
},
{
"group": "Help",
- "pages": [
- "community",
- "help-slack",
- "help-email"
- ]
+ "pages": ["community", "help-slack", "help-email"]
},
{
"group": "",
- "pages": [
- "guides/introduction"
- ]
+ "pages": ["guides/introduction"]
},
{
"group": "Frameworks",
@@ -378,6 +346,10 @@
}
]
},
+ {
+ "group": "Example projects",
+ "pages": ["guides/example-projects/realtime-fal-ai"]
+ },
{
"group": "Example tasks",
"pages": [
@@ -404,15 +376,11 @@
},
{
"group": "Dashboard",
- "pages": [
- "guides/dashboard/creating-a-project"
- ]
+ "pages": ["guides/dashboard/creating-a-project"]
},
{
"group": "Migrations",
- "pages": [
- "guides/use-cases/upgrading-from-v2"
- ]
+ "pages": ["guides/use-cases/upgrading-from-v2"]
}
],
"footerSocials": {
@@ -420,4 +388,4 @@
"github": "https://github.com/triggerdotdev",
"linkedin": "https://www.linkedin.com/company/triggerdotdev"
}
-}
\ No newline at end of file
+}