Marketing site: content hub (/blog) + email subscribe#7
Open
evangauer wants to merge 3 commits into
Open
Conversation
Two pre-existing breakages on main (from the TipTap PR) that fail CI and Vercel:
1. pnpm-lock.yaml was missing the @tiptap/* dependencies declared in
apps/web/package.json, so 'pnpm install --frozen-lockfile' (CI + Vercel)
failed with ERR_PNPM_OUTDATED_LOCKFILE. Regenerated the lockfile.
2. records/new-soap imported '@/components/SoapNoteEditor', but the component
lived in app/components/ (the @/ alias resolves to the app root, not app/).
Moved SoapNoteEditor + SoapNoteDisplay into components/ to match the
repo convention (components/{ui,layout,common}) so the import resolves.
Verified: pnpm install --frozen-lockfile, type-check, test (119), and build
all pass for both apps.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
A visitor who came straight to demo.openvpm.com hit a 307 to the marketing site (unauthenticated root -> NEXT_PUBLIC_WWW_URL), which dead-ended anyone trying to actually try the demo. Now unauthenticated root redirects to /login, which offers one-click demo access. Removes the funnel leak on the demo subdomain. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The veterinary space runs on thought leadership, so this stands up a real content engine to drive people to and grow a community around the open project: - /blog with a zero-dependency, type-safe post model and 3 seed essays carrying the thesis: why vet software should be open, owning your data via a second PIMS you connect by API key, and putting AI agents to work in the back office. - Email subscribe (/api/subscribe + form) framed for content, posting to Slack today; point at a real ESP list later (noted in the route). - Every post ends with a try-the-demo / star / subscribe call to action. - Wired into nav, footer, and sitemap (incl. per-post URLs). Marketing-site only; nothing touches the open-source app. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
Veterinary software adoption runs on thought leadership and community, not feature lists. This stands up a real content engine on the marketing site to drive people to, capture interest, and build a critical community around the open project.
What
/api/subscribe+ form) framed for content; posts to Slack today (same channel as the waitlist) so nothing is lost — point at a real ESP list when wired.Open-source safety
Marketing-site only (
apps/www). Nothing touches the open-source app; no telemetry added to the product.Notes
fix/lockfile-tiptap(PR Fix demo: lockfile drift, SOAP editor import, root-redirect funnel leak #3) for green CI. Minor nav/footer/sitemap overlap with PR Add feedback page to the marketing site #4 (feedback) — trivial rebase.Verified
pnpm --filter @openpims/www type-check+buildpass; /blog (+ 3 posts) prerender, /api/subscribe compiles.🤖 Generated with Claude Code