nextjs-server-actions | Skill Performance & Reviews | TopRankSkills

TopRank Skills

Home / Skills / tools / nextjs-server-actions

nextjs-server-actions

maintained by HoangNguyen0403

star 143 account_tree 48 verified_user MIT License
bolt View GitHub

name: Next.js Server Actions description: Mutations, Form handling, and RPC-style calls. metadata: labels: [nextjs, actions, mutations] triggers: files: ['/actions.ts', '/*.tsx'] keywords: [use server, Server Action, revalidatePath, useFormStatus]

Server Actions

Priority: P1 (HIGH)

Handle form submissions and mutations without creating API endpoints.

Implementation

  • Directive: Add 'use server' at the top of an async function.
  • Usage: Pass to action prop of <form> or invoke from event handlers.
// actions.ts
'use server';
export async function createPost(formData: FormData) {
  const title = formData.get('title');
  await db.post.create({ title });
  revalidatePath('/posts'); // Refresh UI
}

Client Invocation

  • Form: <form action={createPost}> (Progressive enhancements work without JS).
  • Event Handler: onClick={() => createPost(data)}.
  • Pending State: Use useFormStatus hook (must be inside a component rendered within the form).

Validation & Error Handling

  • Zod: Always validate FormData or arguments on the server.
  • Return Values: Return serializable objects { success: boolean, error?: string } to handle feedback on Client.

Security

  • Authentication: Check auth() (e.g., NextAuth) session inside every Server Action.
  • Closure: Be careful with closures in Server Actions defined inside Components (they capture context encrypted). Prefer defining actions in separate files (actions.ts).

chat Comments (0)

chat_bubble_outline

No comments yet. Be the first to share your thoughts!

Skill Details

GitHub Stars 143
GitHub Forks 48
Created Jan 2026
Last Updated 5个月前
tools tools productivity tools

Related Skills

planning-with-files
chevron_right
agent-browser
chevron_right
building-agents
chevron_right
notebooklm
chevron_right
grafana
chevron_right

Build your own?

Join 12,000+ developers contributing to the Claude ecosystem.