Skip to content

Main - #1

Open
miracleweasel wants to merge 77 commits into
step/J1-dbfrom
main
Open

miracleweasel wants to merge 77 commits into
step/J1-dbfrom
main

Conversation

@miracleweasel

Copy link
Copy Markdown
Owner

No description provided.

miracleweasel and others added 15 commits February 17, 2026 09:34
Spacious layouts, softer shadows, larger radii, Inter font, pill CTAs,
table-based submissions, grid form cards, breadcrumbs, empty states,
gradient CTA section, trust bar, SVG icons, white filter bar, and
improved i18n copy across landing, dashboard, and public form pages.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
… Sentry, Plausible, Railway

- Onboarding checklist (3-step) on /forms dashboard with inline Backlog config
- Settings page (/settings) with reusable BacklogConnectionForm component
- Sentry error monitoring (client/server/edge, global-error.tsx, sanitized)
- Plausible analytics (conditional script via NEXT_PUBLIC_PLAUSIBLE_DOMAIN)
- Railway deployment config (standalone output, railway.json, healthcheck)
- CSP updated for plausible.io + sentry.io
- i18n: onboarding + settings sections (JA/EN)
- Nav: Settings link added between Forms and Billing
- proxy.ts: /settings route protected by auth

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The standalone server doesn't serve .next/static by default, causing
CSS/JS to not load in production.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add magic link authentication (email-only, no password)
- Add users and magic_links tables (migration 0006)
- Add Resend email integration for magic link delivery
- Rewrite all API routes for multi-user scoping (user_email on forms)
- Add /api/auth/verify endpoint for magic link verification
- Auto-register users on first login (upsert)
- Scope forms, submissions, billing, integrations per user
- Update login UI (email-only, "check your email" flow)
- Remove password.ts, admin.ts, hash-password.ts
- Add lib/auth/cookies.ts, getSessionEmail.ts, requireUser.ts
- Update all tests (279 pass, 0 fail)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…tadata

- Add pain point section (before/after comparison) to landing page
- Add FAQ section with 5 common questions (JA/EN)
- Add Open Graph + Twitter Card metadata for SEO
- Add keywords meta tag
- Improve magic link email template (proper HTML email, text fallback)
- Update privacy page (remove password references, magic link auth)
- Update README.md and CLAUDE.md with current state

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Date objects cannot be passed directly to sql`` template literals
in Drizzle - the pg driver expects strings. Convert firstOfMonth
to ISO string and cast to timestamptz in the query.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Display the complete URL (with domain) instead of just the path, add a
one-click copy button with clipboard API fallback, and improve the
preview button with an external-link icon.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…riting polish

- Send email notification to form owner on each new submission (fire-and-forget)
- Send welcome email on first signup with quick-start tips
- Add /help page with comprehensive user guide in Japanese (5 sections)
- Add Help nav link in dashboard header
- Polish copywriting across JA/EN: friendlier errors, motivating empty states,
  stronger CTAs, less alarming billing messages

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…update

- Click-to-expand rows in submissions list showing all payload fields
- Auto-cleanup expired magic link tokens (opportunistic + API endpoint)
- Add nixpacks.toml for Railway Node 22
- Complete .env.example with all LemonSqueezy + TRUSTED_PROXY vars
- Update README.md and CLAUDE.md with current feature status

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Remove unused legacy schema.ts from health endpoint dir.
Add .claude/ settings.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Railway ignores railway.json buildCommand. Move the static file
copy step into package.json build script so it always runs.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Nixpacks was not copying static assets into standalone output.
Custom Dockerfile with multi-stage build ensures static files
(CSS, JS, fonts) are properly included.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Standalone output requires manual static file copying which
Nixpacks doesn't handle. Standard mode works out of the box.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@railway-app
railway-app Bot temporarily deployed to formgate / production February 26, 2026 12:52 Inactive
- Remove Dockerfile/.dockerignore (Railway uses Nixpacks)
- Remove default create-next-app SVGs from public/
- Replace default favicon with FormGate branded icon (gate + form + checkmark)
- Add Apple Touch Icon for mobile

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@railway-app
railway-app Bot temporarily deployed to formgate / production February 26, 2026 12:59 Inactive
- robots.txt: allow public pages, block dashboard/API
- sitemap.ts: dynamic sitemap with public pages
- opengraph-image.tsx: branded OG image (gradient, flow diagram)
- twitter-image.tsx: Twitter card image

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add url, phone, date, checkbox, and radio field types with full
server-side validation, client-side rendering, field builder support,
and i18n translations (JA/EN). Add 6 pre-configured form templates
(blank, contact, bug report, feature request, feedback, support) with
a template selector on the form creation page.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Three differentiating features for Backlog integration:

- Auto-assignment: static (always same member) or field_match
  (conditional rules based on form field values, with fallback)
- Sub-tasks: auto-create up to 5 child issues after parent ticket,
  with {field} template support in summaries
- File attachments: new "file" field type (11 total), FormData upload
  to Backlog via multipart API, max 10MB/file, 3 files/submission,
  MIME validation, backward-compatible JSON flow

Includes full i18n (JA/EN), project members in project-meta API,
BacklogSettingsClient UI for all three features, and updated tests.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…xporting

Next.js 16 requires route segment config exports like `runtime` to be
declared directly in the file, not re-exported from another module.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant