[PR #1015] [MERGED] docs: per-template setup instructions for Supabase and Trigger.dev #16323

Closed
opened 2026-07-14 23:19:16 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/Dokploy/templates/pull/1015
Author: @Siumauricio
Created: 7/14/2026
Status: Merged
Merged: 7/14/2026
Merged by: @Siumauricio

Base: canaryHead: docs/template-instructions


📝 Commits (1)

  • 03a60bb docs: add per-template setup instructions (supabase, trigger.dev)

📊 Changes

6 files changed (+349 additions, -11 deletions)

View changed files

📝 app/src/components/TemplateDialog.tsx (+36 -1)
📝 app/src/components/TemplateGrid.tsx (+21 -6)
app/src/components/ui/markdown.tsx (+177 -0)
blueprints/ackee/instructions.md (+0 -4)
blueprints/supabase/instructions.md (+61 -0)
blueprints/triggerdotdev/instructions.md (+54 -0)

📄 Description

What this PR does

This PR adds a per-template setup instructions mechanism and uses it to document the Supabase and Trigger.dev templates.

Instructions mechanism (#107)

The repo had no way to ship setup docs with a template (there was a single placeholder blueprints/ackee/instructions.md that nothing rendered). This PR implements the mechanism end to end:

  • Templates can now include an optional blueprints/<id>/instructions.md.
  • The template browser fetches it together with docker-compose.yml / template.toml and shows it as a new Instructions tab in the template dialog (it becomes the default tab when present). Rendering uses a small dependency-free markdown component (app/src/components/ui/markdown.tsx), so no new packages or lockfile changes.
  • Missing files are handled safely: the SPA fallback on Cloudflare Pages returns index.html with a 200 for non-existent paths, so the fetch guards on the text/html content type (verified against vite preview: real files serve as text/markdown, missing ones as text/html).
  • The ackee placeholder ("We don't have nothing to show here....") was removed so it does not surface as a junk tab.

Supabase instructions (#80, #816)

blueprints/supabase/instructions.md covers deploying, logging in to Studio (main domain routes to Kong, basic auth with DASHBOARD_USERNAME/DASHBOARD_PASSWORD), where to find ANON_KEY/SERVICE_ROLE_KEY, and recommended env review (SITE_URL, SMTP_*).

It also documents the invalid_password pitfall from #816: the Postgres data directory and the internal Supabase roles are initialized with the first POSTGRES_PASSWORD (the roles init script only runs on first boot), so changing the env var later does not change the database. The doc gives both fixes: ALTER USER ... for all affected roles inside the db container (keeps data), or deleting files/volumes/db/data and redeploying (destroys data).

Trigger.dev instructions (#106)

blueprints/triggerdotdev/instructions.md explains first login: no email transport is configured by default, so the magic link is printed to the logs of the webapp container (Dokploy: service -> Logs -> webapp, search for magic). It also documents optional email delivery (EMAIL_TRANSPORT=smtp/resend with the related vars), TRIGGER_PROTOCOL=https for HTTPS domains, and restricting signup with WHITELISTED_EMAILS.

Verification

  • pnpm build in app/ passes (tsc + vite build, 476 templates validated).
  • Served files smoke-tested through vite preview.

Closes #80
Closes #816
Closes #106
Closes #107

🤖 Generated with Claude Code


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/Dokploy/templates/pull/1015 **Author:** [@Siumauricio](https://github.com/Siumauricio) **Created:** 7/14/2026 **Status:** ✅ Merged **Merged:** 7/14/2026 **Merged by:** [@Siumauricio](https://github.com/Siumauricio) **Base:** `canary` ← **Head:** `docs/template-instructions` --- ### 📝 Commits (1) - [`03a60bb`](https://github.com/Dokploy/templates/commit/03a60bb417fcbd6030dee00d2c3f4eca3c8d3dea) docs: add per-template setup instructions (supabase, trigger.dev) ### 📊 Changes **6 files changed** (+349 additions, -11 deletions) <details> <summary>View changed files</summary> 📝 `app/src/components/TemplateDialog.tsx` (+36 -1) 📝 `app/src/components/TemplateGrid.tsx` (+21 -6) ➕ `app/src/components/ui/markdown.tsx` (+177 -0) ➖ `blueprints/ackee/instructions.md` (+0 -4) ➕ `blueprints/supabase/instructions.md` (+61 -0) ➕ `blueprints/triggerdotdev/instructions.md` (+54 -0) </details> ### 📄 Description ## What this PR does This PR adds a per-template setup instructions mechanism and uses it to document the Supabase and Trigger.dev templates. ### Instructions mechanism (#107) The repo had no way to ship setup docs with a template (there was a single placeholder `blueprints/ackee/instructions.md` that nothing rendered). This PR implements the mechanism end to end: - Templates can now include an optional `blueprints/<id>/instructions.md`. - The template browser fetches it together with `docker-compose.yml` / `template.toml` and shows it as a new **Instructions** tab in the template dialog (it becomes the default tab when present). Rendering uses a small dependency-free markdown component (`app/src/components/ui/markdown.tsx`), so no new packages or lockfile changes. - Missing files are handled safely: the SPA fallback on Cloudflare Pages returns `index.html` with a 200 for non-existent paths, so the fetch guards on the `text/html` content type (verified against `vite preview`: real files serve as `text/markdown`, missing ones as `text/html`). - The ackee placeholder ("We don't have nothing to show here....") was removed so it does not surface as a junk tab. ### Supabase instructions (#80, #816) `blueprints/supabase/instructions.md` covers deploying, logging in to Studio (main domain routes to Kong, basic auth with `DASHBOARD_USERNAME`/`DASHBOARD_PASSWORD`), where to find `ANON_KEY`/`SERVICE_ROLE_KEY`, and recommended env review (`SITE_URL`, `SMTP_*`). It also documents the `invalid_password` pitfall from #816: the Postgres data directory and the internal Supabase roles are initialized with the **first** `POSTGRES_PASSWORD` (the roles init script only runs on first boot), so changing the env var later does not change the database. The doc gives both fixes: `ALTER USER ...` for all affected roles inside the `db` container (keeps data), or deleting `files/volumes/db/data` and redeploying (destroys data). ### Trigger.dev instructions (#106) `blueprints/triggerdotdev/instructions.md` explains first login: no email transport is configured by default, so the magic link is printed to the logs of the `webapp` container (Dokploy: service -> Logs -> `webapp`, search for `magic`). It also documents optional email delivery (`EMAIL_TRANSPORT=smtp`/`resend` with the related vars), `TRIGGER_PROTOCOL=https` for HTTPS domains, and restricting signup with `WHITELISTED_EMAILS`. ### Verification - `pnpm build` in `app/` passes (tsc + vite build, 476 templates validated). - Served files smoke-tested through `vite preview`. Closes #80 Closes #816 Closes #106 Closes #107 🤖 Generated with [Claude Code](https://claude.com/claude-code) --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-07-14 23:19:16 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/templates#16323