TalkWebAI is a modern web application built using Next.js, designed to facilitate interactive conversations and enhance user engagement through AI-driven features. This project leverages a robust tech stack to deliver a seamless user experience, combining frontend and backend technologies with a focus on performance and scalability.
- Interactive UI: Built with React and Radix UI components for a responsive and accessible interface.
- Real-time Data Handling: Utilizes React Query and TRPC for efficient data fetching and state management.
- User Authentication: Integrated with Clerk for secure user authentication and management.
- Customizable Themes: Supports theming with Tailwind CSS and Next Themes for a personalized user experience.
- Data Persistence: Uses Prisma as an ORM for database interactions, ensuring type safety and ease of use.
- Dynamic Content: Features components for displaying dynamic content such as charts and interactive forms.
The project follows a structured folder layout to enhance maintainability and clarity:
.
├── .git # Git version control files
├── .gitignore # Specifies files to ignore in Git
├── components.json # Configuration for components
├── eslint.config.mjs # ESLint configuration file
├── next.config.ts # Next.js configuration
├── package-lock.json # Lock file for npm dependencies
├── package.json # Project metadata and dependencies
├── postcss.config.mjs # PostCSS configuration
├── prisma # Prisma schema and migration files
├── public # Static assets (images, fonts, etc.)
├── sandbox-templates # Templates for sandboxing features
├── src # Source code for the application
│ ├── components # Reusable components
│ ├── pages # Next.js pages
│ ├── styles # Global styles
│ └── utils # Utility functions
└── tsconfig.json # TypeScript configuration
To get started with TalkWebAI, follow these steps:
-
Clone the repository:
git clone https://github.com/vikasexcel/TalkWebAI.git
-
Navigate to the project directory:
cd TalkWebAI -
Install the dependencies:
npm install
-
Set up the database:
npx prisma migrate dev
-
Seed the database (if applicable):
npm run prisma:seed
-
Start the development server:
npm run dev
Once the development server is running, you can access the application at http://localhost:3000. Explore the features, interact with the UI, and test the functionalities. For production deployment, build the application using:
npm run buildThen, start the production server with:
npm run startFor further customization and development, refer to the documentation of the respective libraries and frameworks used in this project.