1. What is a Server Action in Next.js App Router?
Server Actions are async functions marked with 'use server' directive that run on the server but can be called directly from Client Components like regular functions, eliminating the need for separate API routes for many use cases. They provide a seamless way to mutate data, handle form submissions, or perform server-side operations with automatic serialization and progressive enhancement for forms that work without JavaScript. Server Actions can be defined inline in Server Components or in separate files, support TypeScript for type-safe server functions, and integrate with React's useFormStatus and useFormState hooks for optimistic updates and pending states.