Expert is a platform where users can 💬 share their thoughts, 📝 post replies, 🔍 search for content, 🛠️ manage their profile, and ❤️ favorite posts. This project is built with modern technologies and provides a seamless user experience. Below, you will find a detailed description of the project, its features, and the tech stack used.
- ⚡ Next.js: Framework for server-rendered React applications.
- 🧩 React: Library for building user interfaces.
- 🎨 Tailwind CSS: Utility-first CSS framework for styling.
- 🖼️ Radix UI: Accessible components for building modern web apps.
- ✨ Lucide Icons: For beautiful, customizable icons.
- 📦 MongoDB & Mongoose: Database and object data modeling.
- 📡 Svix: Webhook infrastructure.
- 🪝 React Hook Form: For managing form state and validation.
- 🔒 Zod: Schema validation with TypeScript support.
- ☁️ UploadThing: Simple file upload solutions.
- 🪄 clsx & class-variance-authority: For conditional class management.
- 🛠️ Tailwind Merge: Merging Tailwind CSS classes effectively.
- 🎬 Tailwind CSS Animate: Animation utilities for Tailwind CSS.
Follow these steps to get the project up and running locally:
-
📥 Clone the Repository:
git clone https://github.com/1lkin13/Expert.git
-
📂 Navigate to the Project Directory:
cd expert
-
🔧 Install Dependencies:
npm install
-
🔐 Set Up Environment Variables: Create a
.env.local
file in the root of your project and add the following:NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=your-key NEXT_PUBLIC_CLERK_SIGN_IN_URL=/sign-in NEXT_PUBLIC_CLERK_SIGN_UP_URL=/sign-up NEXT_PUBLIC_CLERK_AFTER_SIGN_IN_URL=/onboarding NEXT_PUBLIC_CLERK_AFTER_SIGN_UP_URL=/ NEXT_CLERK_WEBHOOK_SECRET= your-key UPLOADTHING_SECRET= your-key MONGODB_URL= your-key
-
▶️ Run the Development Server:npm run dev
-
🌐 Access the Application: Open http://localhost:3000 in your browser.
- 🔐 User Authentication: Sign up or log in using Clerk.
- ✏️ Create Posts and Replies: Share your thoughts and engage in discussions.
- 🔍 Search: Use the search bar to find relevant content.
- 👤 Profile Management: Update your profile and view your favorite posts.