├── .env.example ├── .gitignore ├── README.md ├── app ├── action.tsx ├── globals.css ├── layout.tsx └── page.tsx ├── components.json ├── components ├── chat-list.tsx ├── chat-message-actions.tsx ├── chat-message.tsx ├── empty-screen.tsx ├── external-link.tsx ├── footer.tsx ├── header.tsx ├── markdown.tsx ├── providers.tsx ├── quiz │ ├── index.tsx │ ├── message.tsx │ ├── quiz-question-skeleton.tsx │ ├── quiz-question.tsx │ ├── quiz-result-skeleton.tsx │ ├── quiz-result.tsx │ ├── quiz-start-nextjs.tsx │ ├── quiz-start-skeleton.tsx │ ├── quiz-start.tsx │ ├── show-answer-skeleton.tsx │ ├── show-answer.tsx │ ├── spinner.tsx │ └── topics.ts └── ui │ ├── button.tsx │ ├── card.tsx │ ├── command.tsx │ ├── dialog.tsx │ ├── icons.tsx │ ├── input.tsx │ ├── label.tsx │ ├── popover.tsx │ ├── select.tsx │ ├── separator.tsx │ ├── skeleton.tsx │ ├── switch.tsx │ ├── textarea.tsx │ ├── toast.tsx │ ├── toaster.tsx │ ├── tooltip.tsx │ └── use-toast.ts ├── lib ├── hooks │ ├── chat-scroll-anchor.tsx │ ├── use-at-bottom.tsx │ ├── use-copy-to-clipboard.tsx │ ├── use-enter-submit.tsx │ └── use-local-storage.ts └── utils │ ├── index.tsx │ └── tool-definition.ts ├── mdx-components.tsx ├── next-env.d.ts ├── next.config.mjs ├── package.json ├── pnpm-lock.yaml ├── postcss.config.js ├── public ├── apple-touch-icon.png ├── favicon-16x16.png ├── favicon.ico └── quizzes │ └── javascript-quiz.md ├── tailwind.config.ts └── tsconfig.json /.env.example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/.env.example -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/.gitignore -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/README.md -------------------------------------------------------------------------------- /app/action.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/app/action.tsx -------------------------------------------------------------------------------- /app/globals.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/app/globals.css -------------------------------------------------------------------------------- /app/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/app/layout.tsx -------------------------------------------------------------------------------- /app/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/app/page.tsx -------------------------------------------------------------------------------- /components.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components.json -------------------------------------------------------------------------------- /components/chat-list.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/chat-list.tsx -------------------------------------------------------------------------------- /components/chat-message-actions.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/chat-message-actions.tsx -------------------------------------------------------------------------------- /components/chat-message.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/chat-message.tsx -------------------------------------------------------------------------------- /components/empty-screen.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/empty-screen.tsx -------------------------------------------------------------------------------- /components/external-link.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/external-link.tsx -------------------------------------------------------------------------------- /components/footer.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/footer.tsx -------------------------------------------------------------------------------- /components/header.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/header.tsx -------------------------------------------------------------------------------- /components/markdown.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/markdown.tsx -------------------------------------------------------------------------------- /components/providers.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/providers.tsx -------------------------------------------------------------------------------- /components/quiz/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/quiz/index.tsx -------------------------------------------------------------------------------- /components/quiz/message.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/quiz/message.tsx -------------------------------------------------------------------------------- /components/quiz/quiz-question-skeleton.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/quiz/quiz-question-skeleton.tsx -------------------------------------------------------------------------------- /components/quiz/quiz-question.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/quiz/quiz-question.tsx -------------------------------------------------------------------------------- /components/quiz/quiz-result-skeleton.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/quiz/quiz-result-skeleton.tsx -------------------------------------------------------------------------------- /components/quiz/quiz-result.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/quiz/quiz-result.tsx -------------------------------------------------------------------------------- /components/quiz/quiz-start-nextjs.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/quiz/quiz-start-nextjs.tsx -------------------------------------------------------------------------------- /components/quiz/quiz-start-skeleton.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/quiz/quiz-start-skeleton.tsx -------------------------------------------------------------------------------- /components/quiz/quiz-start.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/quiz/quiz-start.tsx -------------------------------------------------------------------------------- /components/quiz/show-answer-skeleton.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/quiz/show-answer-skeleton.tsx -------------------------------------------------------------------------------- /components/quiz/show-answer.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/quiz/show-answer.tsx -------------------------------------------------------------------------------- /components/quiz/spinner.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/quiz/spinner.tsx -------------------------------------------------------------------------------- /components/quiz/topics.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/quiz/topics.ts -------------------------------------------------------------------------------- /components/ui/button.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/ui/button.tsx -------------------------------------------------------------------------------- /components/ui/card.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/ui/card.tsx -------------------------------------------------------------------------------- /components/ui/command.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/ui/command.tsx -------------------------------------------------------------------------------- /components/ui/dialog.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/ui/dialog.tsx -------------------------------------------------------------------------------- /components/ui/icons.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/ui/icons.tsx -------------------------------------------------------------------------------- /components/ui/input.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/ui/input.tsx -------------------------------------------------------------------------------- /components/ui/label.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/ui/label.tsx -------------------------------------------------------------------------------- /components/ui/popover.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/ui/popover.tsx -------------------------------------------------------------------------------- /components/ui/select.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/ui/select.tsx -------------------------------------------------------------------------------- /components/ui/separator.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/ui/separator.tsx -------------------------------------------------------------------------------- /components/ui/skeleton.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/ui/skeleton.tsx -------------------------------------------------------------------------------- /components/ui/switch.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/ui/switch.tsx -------------------------------------------------------------------------------- /components/ui/textarea.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/ui/textarea.tsx -------------------------------------------------------------------------------- /components/ui/toast.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/ui/toast.tsx -------------------------------------------------------------------------------- /components/ui/toaster.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/ui/toaster.tsx -------------------------------------------------------------------------------- /components/ui/tooltip.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/ui/tooltip.tsx -------------------------------------------------------------------------------- /components/ui/use-toast.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/components/ui/use-toast.ts -------------------------------------------------------------------------------- /lib/hooks/chat-scroll-anchor.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/lib/hooks/chat-scroll-anchor.tsx -------------------------------------------------------------------------------- /lib/hooks/use-at-bottom.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/lib/hooks/use-at-bottom.tsx -------------------------------------------------------------------------------- /lib/hooks/use-copy-to-clipboard.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/lib/hooks/use-copy-to-clipboard.tsx -------------------------------------------------------------------------------- /lib/hooks/use-enter-submit.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/lib/hooks/use-enter-submit.tsx -------------------------------------------------------------------------------- /lib/hooks/use-local-storage.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/lib/hooks/use-local-storage.ts -------------------------------------------------------------------------------- /lib/utils/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/lib/utils/index.tsx -------------------------------------------------------------------------------- /lib/utils/tool-definition.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/lib/utils/tool-definition.ts -------------------------------------------------------------------------------- /mdx-components.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/mdx-components.tsx -------------------------------------------------------------------------------- /next-env.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/next-env.d.ts -------------------------------------------------------------------------------- /next.config.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/next.config.mjs -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/package.json -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/pnpm-lock.yaml -------------------------------------------------------------------------------- /postcss.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/postcss.config.js -------------------------------------------------------------------------------- /public/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/public/apple-touch-icon.png -------------------------------------------------------------------------------- /public/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/public/favicon-16x16.png -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/public/favicon.ico -------------------------------------------------------------------------------- /public/quizzes/javascript-quiz.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/public/quizzes/javascript-quiz.md -------------------------------------------------------------------------------- /tailwind.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/tailwind.config.ts -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anis-marrouchi/vercel-ai-sdk-quiz/HEAD/tsconfig.json --------------------------------------------------------------------------------