Discover, save, and cook delicious recipes β all in one place.
- π Home Feed β Browse a curated, always-fresh selection of random recipes
- β Featured Recipe β A daily highlighted recipe to spark your culinary inspiration
- ποΈ Category Filtering β Filter recipes by cuisine category (Chicken, Beef, Dessert, and more)
- π Search β Instantly search across thousands of meals
- β€οΈ Favorites β Save your favourite recipes to a personal collection, synced to the cloud
- π Dark / Light Themes β Switch between multiple gorgeous colour themes on the fly
- π Authentication β Secure sign-up, sign-in, and email verification powered by Clerk
- π¨ Custom Splash Screen β A branded launch experience for a polished first impression
- π± Cross-Platform β Runs natively on both Android and iOS
Quick_Bites/
βββ π± mobile/ # Expo React Native app
β βββ app/
β β βββ (auth)/ # Sign-in, Sign-up, Verify Email screens
β β βββ (tabs)/ # Home, Search, Favorites tab screens
β β βββ recipe/ # Recipe detail screen
β βββ components/ # Reusable UI components
β βββ context/ # Theme & Auth context providers
β βββ services/ # MealDB API service layer
β βββ assets/ # Images, icons, styles
β βββ app.json # Expo configuration
β
βββ π₯οΈ backend/ # Node.js / Express REST API
βββ src/
βββ config/ # DB, env, cron configuration
βββ db/ # Drizzle ORM schema
βββ server.js # API entry point
| Technology | Purpose |
|---|---|
| React Native 0.81 | Core mobile framework |
| Expo SDK 54 | Development toolchain & native APIs |
| Expo Router | File-based navigation |
| Clerk | Authentication (sign-up, sign-in, email verify) |
| React Native Reanimated | Smooth animations |
| Expo Linear Gradient | Beautiful gradient UI elements |
| Expo Image | High-performance image loading |
| Expo Secure Store | Secure local token storage |
| Technology | Purpose |
|---|---|
| Express 5.1 | REST API server |
| Neon Serverless DB | PostgreSQL (serverless) |
| Drizzle ORM | Type-safe database queries |
| Cron | Periodic jobs (e.g. keep-alive pings) |
| dotenv | Environment variable management |
| API | Purpose |
|---|---|
| TheMealDB | Recipe data, images, categories |
- Node.js v18+
- Expo CLI β
npm install -g expo-cli - Expo Go app on your device, or an Android/iOS emulator
git clone https://github.com/Kanishkau4/Recipte_App.git
cd Recipte_Appcd backend
# Install dependencies
npm install
# Create environment file
cp .env.example .env
# Fill in DATABASE_URL, PORT, and NODE_ENV
# Start the development server
npm run devBackend API Endpoints:
| Method | Endpoint | Description |
|---|---|---|
GET |
/api/health |
Health check |
POST |
/api/favorites |
Add a recipe to favourites |
GET |
/api/favorites/:userId |
Get all favourites for a user |
DELETE |
/api/favorites/:userId/:recipeId |
Remove a recipe from favourites |
cd mobile
# Install dependencies
npm install
# Create environment file and add your Clerk Publishable Key & Backend URL
# EXPO_PUBLIC_CLERK_PUBLISHABLE_KEY=your_clerk_key
# EXPO_PUBLIC_API_URL=http://your-backend-url
# Start the Expo dev server
npx expo start -cScan the QR code with Expo Go or press a for Android / i for iOS emulator.
| Home | Search | Favorites |
|---|---|---|
| Featured recipe hero card, category filters & recipe grid | Live meal search with instant results | Cloud-synced personal recipe collection |
| Recipe Detail | Sign In | Theme Picker |
|---|---|---|
| Full ingredients, step-by-step instructions & YouTube link | Clerk-powered auth with email verification | Switch app accent color in real-time |
EXPO_PUBLIC_CLERK_PUBLISHABLE_KEY=your_clerk_publishable_key
EXPO_PUBLIC_API_URL=https://your-backend-api-urlDATABASE_URL=your_neon_database_url
PORT=3000
NODE_ENV=developmentContributions, issues, and feature requests are welcome! Feel free to open a pull request or issue.
- Fork the repository
- Create your feature branch:
git checkout -b feature/awesome-feature - Commit your changes:
git commit -m 'Add awesome feature' - Push to the branch:
git push origin feature/awesome-feature - Open a Pull Request
This project is licensed under the ISC License.
Made with β€οΈ by Kanishka Β Β·Β Powered by TheMealDB