Welcome to Tastify! This project is a recipe application designed to be built using an Agile Development process. Our team is collaboratively solving problems and implementing features through continuous discussion and iteration.
We believe in teamwork and shared responsibility. Here's a breakdown of our roles:
- Nahid Hossen
- Role: App UI Design, Figma Design, Backend Design & Implementation
- GitHub: mdnahidhossen1911
- Jahangir Alam
- Role: App UI Design
- GitHub: jahangirsim
- Mahfuz Ahmed
- Role: App UI Design
- GitHub: MahfuzAhmed28
Tastify is being developed to support a wide range of mobile users:
- Android
- iOS
To set up the project locally, you'll need a .env file with the following variables:
APPNAME='Tastify'
GOOGLESIGNID='YOUR_GOOGLE_SIGN_IN_ID'
SUPABASEURL='YOUR_SUPABASE_PROJECT_URL'
ANOKEY='YOUR_SUPABASE_ANON_KEY''
- Authentication: Users can sign up using email or social login and log in to their accounts.
- User Profile: Users can create and update their profile with basic information.
- Home Page: Displays featured recipes, categories, and popular items.
- Recipe Details: Shows recipe image, ingredients, instructions, and nutrition info.
- Upload Recipe: Users can add their recipes with name, image, and steps.
- Edit Recipe: Users can edit recipes they uploaded.
- Delete Recipe: Users can delete their recipe posts.
- Search Recipes: Users can search for recipes by name or category.
- Wishlist/Favourites: Users can save recipes to a favourites list.
- Blog Section: Read articles related to food, cooking tips, and healthy eating.
- Blog Post Page: Full blog article view with related content suggestions.
- Contact Page: Users can send messages or feedback through a contact form.
Explore the visual design and user experience of the Tastify app:
- Figma Prototype: Tastify App UI
These tables must be populated manually. Image fields should store direct image URLs.
| Column | Type | Notes |
|---|---|---|
id |
uuid | Primary key |
created_at |
timestamp | Auto-generated |
title |
varchar | Category title |
icon |
varchar | Image URL (icon) |
| Column | Type | Notes |
|---|---|---|
id |
uuid | Primary key |
image |
varchar | Image URL |
created_at |
timestamp | Auto-generated |
All image fields here will store Base64 strings submitted by the user via the app.
Stores user accounts.
| Column | Type | Notes |
|---|---|---|
id |
uuid | Primary key |
name |
text | |
email |
varchar | |
password |
varchar | (optional if using OAuth) |
photo |
varchar | Base64 image string |
create_at |
timestamp | Auto timestamp |
Core recipe details.
| Column | Type | Notes |
|---|---|---|
id |
uuid | Primary key |
user_id |
uuid | FK → Users.id |
title |
text | Recipe name |
photo |
varchar | Base64 image |
instructions |
varchar | |
ingredients |
varchar | |
nutrition_info |
varchar | |
description |
varchar | |
prep_time |
text | |
cook_time |
text | |
category_nam |
text | (redundant if category used) |
cid |
uuid | FK → category.id |
favourite |
int8 | Defaults to 0 |
created_at |
timestamp | Auto timestamp |
User's saved recipes.
| Column | Type | Notes |
|---|---|---|
id |
uuid | Primary key |
rid |
uuid | FK → recipe.id |
uid |
uuid | FK → Users.id |
created_at |
timestamp | Auto timestamp |
Stores user feedback on recipes.
| Column | Type | Notes |
|---|---|---|
id |
uuid | Primary key |
uid |
uuid | FK → Users.id |
rid |
uuid | FK → recipe.id |
rwid |
uuid | Recipe owner's user ID |
feedback |
varchar | Text content |
created_at |
timestamp | Auto timestamp |
User-generated blog posts.
| Column | Type | Notes |
|---|---|---|
id |
uuid | Primary key |
title |
text | |
image |
varchar | Base64 image |
content |
text | Full article content |
uid |
uuid | FK → Users.id |
created_at |
timestamp | Auto timestamp |
We're excited to share our project with you. We hope you found this overview helpful.
- If you have suggestions or find any issues, please consider opening an issue.
- Even better, if you'd like to contribute, we'd love to have your help!
Thanks again for your time!
