Ambrosia is a dedicated social platform where cooking enthusiasts can share recipes, cooking advice, tips, and tricks. Connect with other food lovers, build communities around culinary interests, and discover new cooking inspirations.
Live site: ambrosia-chi.vercel.app
- Thread-based discussions - Create and participate in cooking-related conversations
- User profiles - Customize your profile and showcase your culinary expertise
- Communities - Join or create communities focused on specific cuisines or cooking styles
- Activity tracking - Stay updated on replies to your threads
- Search functionality - Find users, communities, and cooking content
- Responsive design - Seamless experience across desktop and mobile devices
- Node.js (version 18 or later)
- npm, yarn, pnpm, or bun
-
Clone the repository
git clone https://github.com/yourusername/ambrosia.git cd ambrosia -
Install dependencies
npm install # or yarn install # or pnpm install # or bun install
-
Set up environment variables Create a
.env.localfile in the root directory and add your Clerk API keys and other environment variables# Clerk configuration NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=your_clerk_publishable_key_here CLERK_SECRET_KEY=your_clerk_secret_key_here 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=/ # MongoDB connection string MONGODB_URL=your_mongodb_connection_string_here # UploadThing credentials UPLOADTHING_SECRET=your_uploadthing_secret_here UPLOADTHING_APP_ID=your_uploadthing_app_id_here # Gemini API key GEMINI_API_KEY=your_gemini_api_key_here
-
Run the development server
npm run dev # or yarn dev # or pnpm dev # or bun dev
-
Open http://localhost:3000 with your browser to see the result
app/(root)/*- Main application routesapp/(auth)/*- Authentication related routescomponents/- Reusable UI componentslib/actions/- Server actions for data fetching and manipulationpublic/- Static assets
/- Homepage with thread feed/profile/[id]- User profiles with threads and replies/communities- Browse and join communities/create-thread- Create new cooking discussions/thread/[id]- Individual thread view with comments/search- Find users and content/activity- Track notifications and replies
The easiest way to deploy Ambrosia is using the Vercel Platform:
- Push your code to a GitHub repository
- Import the project to Vercel
- Set up the required environment variables
- Deploy
- Next.js - The React framework for production
- Clerk - Authentication and user management
- Tailwind CSS - For styling
- Vercel - For hosting and deployment