Create a production-ready Next.js note-taking application with the following specifications:
- Framework: Next.js 15 (App Router)
- Language: TypeScript
- Styling: Tailwind CSS (v3 or v4)
- UI Components: shadcn/ui (button, card, input, label, textarea, dialog, dropdown-menu, avatar, separator, sonner)