Skip to content

Publish TanStack Form v2 Alpha announcement - #1125

Merged
crutchcorn merged 12 commits into
TanStack:mainfrom
LeCarbonator:form-v2-alpha-blog
Aug 10, 2026
Merged

Publish TanStack Form v2 Alpha announcement#1125
crutchcorn merged 12 commits into
TanStack:mainfrom
LeCarbonator:form-v2-alpha-blog

Conversation

@LeCarbonator

@LeCarbonator LeCarbonator commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Summary by CodeRabbit

  • New Features

    • Added an announcement article for TanStack Form v2 alpha, covering key updates, limitations, migration guidance, and testing resources.
    • Added TanStack Form v2 alpha to the available documentation versions.
  • Documentation

    • Documented redesigned validation and listener pipelines, schema-oriented options, type-safe React composition, and improved SSR validation and state handling.
    • Included details about current alpha omissions and guidance for evaluating the new version.

@coderabbitai

coderabbitai Bot commented Aug 6, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

The PR adds a technical article for the TanStack Form v2 alpha. It documents pipeline, schema, type-safety, and SSR changes. It also lists migration resources and exposes alpha alongside v1 in the documentation versions.

Changes

TanStack Form v2 alpha announcement

Layer / File(s) Summary
Core pipeline and type-system documentation
src/blog/announcing-tanstack-form-v2-alpha.md
Documents validator and listener pipelines, schema modes, and type-safe React form composition.
SSR validation documentation
src/blog/announcing-tanstack-form-v2-alpha.md
Documents shared form options, typed validation results, serverState integration, and updated SSR examples.
Alpha scope and documentation availability
src/blog/announcing-tanstack-form-v2-alpha.md, src/libraries/libraries.ts
Lists omitted alpha features, migration resources, adapter and RFC information, and feedback guidance. Adds alpha to the available TanStack Form documentation versions.

Estimated code review effort: 2 (Simple) | ~15 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the main change: publishing an announcement for the TanStack Form v2 alpha.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Comment thread src/blog/announcing-tanstack-form-v2-alpha.md Outdated
@crutchcorn

crutchcorn commented Aug 6, 2026

Copy link
Copy Markdown
Member
image

v1 and V2 needs consolidation when v is upper or lower

@crutchcorn

Copy link
Copy Markdown
Member

Tabs are inituitive here:

image

But wrong. We WANT the kind of attention a screenshot of BEFORE and AFTER would give us.

@crutchcorn

Copy link
Copy Markdown
Member
image

Since the v2 has the comment showing the error, we should also have a comment explaining that no error occurs in v1 even tho it should

@crutchcorn

Copy link
Copy Markdown
Member

Things to add:

  • A "Thank you" note at the bottom to read more organically
  • A "What's missing from v2" that's more explicit and uses bulletpoints to catch eye better

Comment thread src/blog/announcing-tanstack-form-v2-alpha.md Outdated
@crutchcorn
crutchcorn marked this pull request as ready for review August 10, 2026 13:16

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@src/blog/announcing-tanstack-form-v2-alpha.md`:
- Around line 283-284: Update the age validation message in both examples using
the z.coerce.number().min validation to say “You must be at least 13,” removing
the duplicated “13” while preserving the existing validation rule.
- Line 219: Update the “Before (v1)” Markdown heading to level three (`###`) so
it follows the preceding level-two “Form Composition type safety” heading
correctly.
- Around line 282-284: Add the missing zod import to the snippets using z.object
or z.coerce, including shared-code.ts and action.ts, so each standalone example
defines z before use. Use the existing import style: import { z } from 'zod'.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: ffd16c93-1bb7-4a11-9637-86a952b6131c

📥 Commits

Reviewing files that changed from the base of the PR and between e75db37 and 0932871.

⛔ Files ignored due to path filters (1)
  • public/blog-assets/announcing-tanstack-form-v2-alpha/header.png is excluded by !**/*.png
📒 Files selected for processing (2)
  • src/blog/announcing-tanstack-form-v2-alpha.md
  • src/libraries/libraries.ts

Comment thread src/blog/announcing-tanstack-form-v2-alpha.md Outdated
Comment thread src/blog/announcing-tanstack-form-v2-alpha.md
Comment thread src/blog/announcing-tanstack-form-v2-alpha.md Outdated

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (3)
src/blog/announcing-tanstack-form-v2-alpha.md (3)

410-427: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

Present the missing alpha features as explicit bullets.

Under What's missing from v2, list built-in persistence, non-React form composition, and submit metadata as separate bullets. State that these features are not included in the alpha.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@src/blog/announcing-tanstack-form-v2-alpha.md` around lines 410 - 427, Update
the “What’s missing in v2” section to present built-in form persistence,
non-React form composition, and submit metadata as separate explicit bullets,
clearly stating that each feature is not included in the alpha.

263-265: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

Replace the SSR tabs with explicit before-and-after blocks.

The SSR examples still use tabs wrappers around the v1 and v2 file groups. Render the file examples as ordinary code fences under the existing ### Before (v1) and ### After (v2) headings. This makes the comparison visible without requiring tab interaction.

Also applies to: 333-341

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@src/blog/announcing-tanstack-form-v2-alpha.md` around lines 263 - 265, In the
SSR examples of the blog post, replace the tabs wrappers around the v1 and v2
file groups with ordinary code fences. Keep the existing “### Before (v1)” and
“### After (v2)” headings and render each file example directly beneath its
corresponding heading, removing the tab interaction markers while preserving the
example contents.

104-116: 🎯 Functional Correctness | 🔵 Trivial | ⚡ Quick win

Add the missing v1 failure explanation.

This section describes validator control flow, but it does not show the reported case where v1 produces no error when an error should be shown. Add a concrete invalid input and the expected error. Clarify whether revalidateLogic() reproduces or avoids that case so the v2 when condition has a clear purpose.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@src/blog/announcing-tanstack-form-v2-alpha.md` around lines 104 - 116, The v1
example in the “Before (v1)” section needs a concrete failure case. Update the
surrounding explanation to show invalid input and the error that should appear,
then explicitly state whether using revalidateLogic() with onDynamic reproduces
or avoids the missing-error behavior, clarifying the purpose of the v2 when
condition.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@src/blog/announcing-tanstack-form-v2-alpha.md`:
- Line 24: Update each repeated comparison heading in the document, including
the headings identified by the Before/After pairs, to include its example topic
while preserving the version labels. Ensure every heading is unique and follows
the same topic-qualified pattern consistently.

---

Nitpick comments:
In `@src/blog/announcing-tanstack-form-v2-alpha.md`:
- Around line 410-427: Update the “What’s missing in v2” section to present
built-in form persistence, non-React form composition, and submit metadata as
separate explicit bullets, clearly stating that each feature is not included in
the alpha.
- Around line 263-265: In the SSR examples of the blog post, replace the tabs
wrappers around the v1 and v2 file groups with ordinary code fences. Keep the
existing “### Before (v1)” and “### After (v2)” headings and render each file
example directly beneath its corresponding heading, removing the tab interaction
markers while preserving the example contents.
- Around line 104-116: The v1 example in the “Before (v1)” section needs a
concrete failure case. Update the surrounding explanation to show invalid input
and the error that should appear, then explicitly state whether using
revalidateLogic() with onDynamic reproduces or avoids the missing-error
behavior, clarifying the purpose of the v2 when condition.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 51e70e52-7a9e-40fc-b7d3-03b7972ac588

📥 Commits

Reviewing files that changed from the base of the PR and between 0932871 and 5c7bfd8.

📒 Files selected for processing (1)
  • src/blog/announcing-tanstack-form-v2-alpha.md


### One validator, multiple triggers

### Before (v1)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Make the comparison headings unique.

Before (v1) and After (v2) repeat for separate examples. This triggers MD024 and makes document navigation ambiguous. Add the topic to each heading.

Proposed fix
-### Before (v1)
+### Before (v1): One validator, multiple triggers

-### After (v2)
+### After (v2): One validator, multiple triggers

Apply the same pattern to the other comparison pairs.

Also applies to: 40-40, 58-58, 78-78, 104-104, 118-118

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@src/blog/announcing-tanstack-form-v2-alpha.md` at line 24, Update each
repeated comparison heading in the document, including the headings identified
by the Before/After pairs, to include its example topic while preserving the
version labels. Ensure every heading is unique and follows the same
topic-qualified pattern consistently.

Source: Linters/SAST tools

@crutchcorn
crutchcorn merged commit 19b0f00 into TanStack:main Aug 10, 2026
6 checks passed
@LeCarbonator
LeCarbonator deleted the form-v2-alpha-blog branch August 10, 2026 13:53
@JonasDoesThings

Copy link
Copy Markdown

@LeCarbonator sorry for the offtopic ping here, but I'm very curious: did you take the header photo on Madeira? Seemed so familiar when I opened the blog post, I think I was at the same location a few years ago.

Congrats on the v2 Alpha release anyways, thx for y'all's work :D

@LeCarbonator

Copy link
Copy Markdown
Contributor Author

Good eye! Yes, I took the photo on Madeira. I believe it was near Câmara de Lobos, along the southern shore. @JonasDoesThings

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.

3 participants