diff --git a/.gitignore b/.gitignore
index aa724b7..565a541 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,6 @@
*.iml
.gradle
+.idea
/local.properties
/.idea/caches
/.idea/libraries
diff --git a/.idea/.name b/.idea/.name
new file mode 100644
index 0000000..7d28533
--- /dev/null
+++ b/.idea/.name
@@ -0,0 +1 @@
+Recipe App ITI
\ No newline at end of file
diff --git a/.idea/appInsightsSettings.xml b/.idea/appInsightsSettings.xml
new file mode 100644
index 0000000..371f2e2
--- /dev/null
+++ b/.idea/appInsightsSettings.xml
@@ -0,0 +1,26 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/compiler.xml b/.idea/compiler.xml
new file mode 100644
index 0000000..b589d56
--- /dev/null
+++ b/.idea/compiler.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/deploymentTargetSelector.xml b/.idea/deploymentTargetSelector.xml
new file mode 100644
index 0000000..486f5ce
--- /dev/null
+++ b/.idea/deploymentTargetSelector.xml
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/gradle.xml b/.idea/gradle.xml
new file mode 100644
index 0000000..0897082
--- /dev/null
+++ b/.idea/gradle.xml
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml
new file mode 100644
index 0000000..c8f004d
--- /dev/null
+++ b/.idea/inspectionProfiles/Project_Default.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/kotlinc.xml b/.idea/kotlinc.xml
new file mode 100644
index 0000000..fdf8d99
--- /dev/null
+++ b/.idea/kotlinc.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/migrations.xml b/.idea/migrations.xml
new file mode 100644
index 0000000..f8051a6
--- /dev/null
+++ b/.idea/migrations.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
new file mode 100644
index 0000000..824785d
--- /dev/null
+++ b/.idea/misc.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/other.xml b/.idea/other.xml
new file mode 100644
index 0000000..4604c44
--- /dev/null
+++ b/.idea/other.xml
@@ -0,0 +1,252 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..35eb1dd
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index cdaab45..d48a9d4 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -1,6 +1,6 @@
+ xmlns:tools="http://schemas.android.com/tools" >
+ tools:targetApi="31" >
+ android:name=".layout.RecipeActivity"
+ android:exported="true" >
+
+
+
+
+
diff --git a/app/src/main/java/com/example/recipeappiti/MainActivity.kt b/app/src/main/java/com/example/recipeappiti/auth/AuthActivity.kt
similarity index 79%
rename from app/src/main/java/com/example/recipeappiti/MainActivity.kt
rename to app/src/main/java/com/example/recipeappiti/auth/AuthActivity.kt
index 04700f0..6ebf544 100644
--- a/app/src/main/java/com/example/recipeappiti/MainActivity.kt
+++ b/app/src/main/java/com/example/recipeappiti/auth/AuthActivity.kt
@@ -1,16 +1,17 @@
-package com.example.recipeappiti
+package com.example.recipeappiti.auth
import android.os.Bundle
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
+import com.example.recipeappiti.R
-class MainActivity : AppCompatActivity() {
+class AuthActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
enableEdgeToEdge()
- setContentView(R.layout.activity_main)
+ setContentView(R.layout.activity_auth)
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main)) { v, insets ->
val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars())
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom)
diff --git a/app/src/main/java/com/example/recipeappiti/auth/login/view/LoginFragment.kt b/app/src/main/java/com/example/recipeappiti/auth/login/view/LoginFragment.kt
new file mode 100644
index 0000000..57cc5c9
--- /dev/null
+++ b/app/src/main/java/com/example/recipeappiti/auth/login/view/LoginFragment.kt
@@ -0,0 +1,22 @@
+package com.example.recipeappiti.auth.login.view
+
+import android.os.Bundle
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import androidx.fragment.app.Fragment
+import com.example.recipeappiti.R
+
+class LoginFragment : Fragment() {
+
+
+ override fun onCreateView(
+ inflater: LayoutInflater, container: ViewGroup?,
+ savedInstanceState: Bundle?
+ ): View? {
+ // Inflate the layout for this fragment
+ return inflater.inflate(R.layout.fragment_login, container, false)
+ }
+
+
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/recipeappiti/auth/register/view/RegisterFragment.kt b/app/src/main/java/com/example/recipeappiti/auth/register/view/RegisterFragment.kt
new file mode 100644
index 0000000..bb5ec39
--- /dev/null
+++ b/app/src/main/java/com/example/recipeappiti/auth/register/view/RegisterFragment.kt
@@ -0,0 +1,20 @@
+package com.example.recipeappiti.auth.register.view
+
+import android.os.Bundle
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import androidx.fragment.app.Fragment
+import com.example.recipeappiti.R
+
+class RegisterFragment : Fragment() {
+
+ override fun onCreateView(
+ inflater: LayoutInflater, container: ViewGroup?,
+ savedInstanceState: Bundle?
+ ): View? {
+ // Inflate the layout for this fragment
+ return inflater.inflate(R.layout.fragment_register, container, false)
+ }
+
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/recipeappiti/layout/RecipeActivity.kt b/app/src/main/java/com/example/recipeappiti/layout/RecipeActivity.kt
new file mode 100644
index 0000000..946de61
--- /dev/null
+++ b/app/src/main/java/com/example/recipeappiti/layout/RecipeActivity.kt
@@ -0,0 +1,83 @@
+package com.example.recipeappiti.layout
+
+import android.os.Bundle
+import android.view.MenuItem
+import androidx.appcompat.app.ActionBarDrawerToggle
+import androidx.appcompat.app.AppCompatActivity
+import androidx.core.view.GravityCompat
+import androidx.core.view.ViewCompat
+import androidx.core.view.WindowInsetsCompat
+import androidx.drawerlayout.widget.DrawerLayout
+import androidx.navigation.NavController
+import androidx.navigation.fragment.findNavController
+import androidx.navigation.ui.setupWithNavController
+import com.example.recipeappiti.R
+import com.google.android.material.bottomnavigation.BottomNavigationView
+import com.google.android.material.navigation.NavigationView
+import com.google.android.material.navigation.NavigationView.OnNavigationItemSelectedListener
+
+class RecipeActivity : AppCompatActivity(), OnNavigationItemSelectedListener {
+
+ private lateinit var bottomNavigationView: BottomNavigationView
+ private lateinit var drawer: DrawerLayout
+ private lateinit var navigationView: NavigationView
+ private lateinit var toggle: ActionBarDrawerToggle
+
+ private var navController: NavController? = null
+
+ override fun onCreate(savedInstanceState: Bundle?) {
+ super.onCreate(savedInstanceState)
+ //enableEdgeToEdge()
+ setContentView(R.layout.activity_recipe)
+ ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.drawer)) { v, insets ->
+ val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars())
+ v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom)
+ insets
+ }
+
+ bottomNavigationView = findViewById(R.id.bottom_navigation)
+ drawer = findViewById(R.id.drawer)
+ navigationView = findViewById(R.id.navigation_view)
+
+ toggle = ActionBarDrawerToggle(
+ this, drawer,
+ R.string.drawer_opened, R.string.drawer_closed
+ )
+ drawer.addDrawerListener(toggle)
+ toggle.syncState()
+
+ navigationView.setNavigationItemSelectedListener(this)
+
+ navController =
+ supportFragmentManager.findFragmentById(R.id.nav_host_fragment)?.findNavController()
+
+ bottomNavItemChangeListener(bottomNavigationView)
+
+ navController?.let {
+ bottomNavigationView.setupWithNavController(it)
+ }
+ }
+
+ private fun bottomNavItemChangeListener(navView: BottomNavigationView) {
+ navView.setOnItemSelectedListener { item ->
+ if (item.itemId != navView.selectedItemId) {
+ navController?.popBackStack(item.itemId, inclusive = true, saveState = false)
+ navController?.navigate(item.itemId)
+ }
+ true
+ }
+ }
+
+
+ override fun onNavigationItemSelected(item: MenuItem): Boolean {
+
+ drawer.closeDrawer(GravityCompat.START)
+
+ when (item.itemId) {
+
+
+ }
+
+ return false
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/recipeappiti/layout/detail/view/RecipeDetailFragment.kt b/app/src/main/java/com/example/recipeappiti/layout/detail/view/RecipeDetailFragment.kt
new file mode 100644
index 0000000..12d4886
--- /dev/null
+++ b/app/src/main/java/com/example/recipeappiti/layout/detail/view/RecipeDetailFragment.kt
@@ -0,0 +1,21 @@
+package com.example.recipeappiti.layout.detail.view
+
+import android.os.Bundle
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import androidx.fragment.app.Fragment
+import com.example.recipeappiti.R
+
+class RecipeDetailFragment : Fragment() {
+
+ override fun onCreateView(
+ inflater: LayoutInflater, container: ViewGroup?,
+ savedInstanceState: Bundle?
+ ): View? {
+ // Inflate the layout for this fragment
+ return inflater.inflate(R.layout.fragment_recipe_detail, container, false)
+ }
+
+
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/recipeappiti/layout/favourite/view/FavouriteFragment.kt b/app/src/main/java/com/example/recipeappiti/layout/favourite/view/FavouriteFragment.kt
new file mode 100644
index 0000000..ce59009
--- /dev/null
+++ b/app/src/main/java/com/example/recipeappiti/layout/favourite/view/FavouriteFragment.kt
@@ -0,0 +1,20 @@
+package com.example.recipeappiti.layout.favourite.view
+
+import android.os.Bundle
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import androidx.fragment.app.Fragment
+import com.example.recipeappiti.R
+
+class FavouriteFragment : Fragment() {
+
+ override fun onCreateView(
+ inflater: LayoutInflater, container: ViewGroup?,
+ savedInstanceState: Bundle?
+ ): View? {
+ // Inflate the layout for this fragment
+ return inflater.inflate(R.layout.fragment_favourite, container, false)
+ }
+
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/recipeappiti/layout/home/view/HomeFragment.kt b/app/src/main/java/com/example/recipeappiti/layout/home/view/HomeFragment.kt
new file mode 100644
index 0000000..0c610e1
--- /dev/null
+++ b/app/src/main/java/com/example/recipeappiti/layout/home/view/HomeFragment.kt
@@ -0,0 +1,22 @@
+package com.example.recipeappiti.layout.home.view
+
+import android.os.Bundle
+import androidx.fragment.app.Fragment
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import com.example.recipeappiti.R
+
+
+class HomeFragment : Fragment() {
+
+ override fun onCreateView(
+ inflater: LayoutInflater, container: ViewGroup?,
+ savedInstanceState: Bundle?
+ ): View? {
+ // Inflate the layout for this fragment
+ return inflater.inflate(R.layout.fragment_home, container, false)
+ }
+
+
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/recipeappiti/layout/profile/view/ProfileFragment.kt b/app/src/main/java/com/example/recipeappiti/layout/profile/view/ProfileFragment.kt
new file mode 100644
index 0000000..5a07b50
--- /dev/null
+++ b/app/src/main/java/com/example/recipeappiti/layout/profile/view/ProfileFragment.kt
@@ -0,0 +1,20 @@
+package com.example.recipeappiti.layout.profile.view
+
+import android.os.Bundle
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import androidx.fragment.app.Fragment
+import com.example.recipeappiti.R
+
+class ProfileFragment : Fragment() {
+
+ override fun onCreateView(
+ inflater: LayoutInflater, container: ViewGroup?,
+ savedInstanceState: Bundle?
+ ): View? {
+ // Inflate the layout for this fragment
+ return inflater.inflate(R.layout.fragment_profile, container, false)
+ }
+
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/recipeappiti/layout/search/view/SearchFragment.kt b/app/src/main/java/com/example/recipeappiti/layout/search/view/SearchFragment.kt
new file mode 100644
index 0000000..94ba90b
--- /dev/null
+++ b/app/src/main/java/com/example/recipeappiti/layout/search/view/SearchFragment.kt
@@ -0,0 +1,20 @@
+package com.example.recipeappiti.layout.search.view
+
+import android.os.Bundle
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import androidx.fragment.app.Fragment
+import com.example.recipeappiti.R
+
+class SearchFragment : Fragment() {
+
+ override fun onCreateView(
+ inflater: LayoutInflater, container: ViewGroup?,
+ savedInstanceState: Bundle?
+ ): View? {
+ // Inflate the layout for this fragment
+ return inflater.inflate(R.layout.fragment_search, container, false)
+ }
+
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/recipeappiti/splash/SplashFragment.kt b/app/src/main/java/com/example/recipeappiti/splash/SplashFragment.kt
new file mode 100644
index 0000000..2b411e7
--- /dev/null
+++ b/app/src/main/java/com/example/recipeappiti/splash/SplashFragment.kt
@@ -0,0 +1,20 @@
+package com.example.recipeappiti.splash
+
+import android.os.Bundle
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import androidx.fragment.app.Fragment
+import com.example.recipeappiti.R
+
+class SplashFragment : Fragment() {
+
+ override fun onCreateView(
+ inflater: LayoutInflater, container: ViewGroup?,
+ savedInstanceState: Bundle?
+ ): View? {
+ // Inflate the layout for this fragment
+ return inflater.inflate(R.layout.fragment_splash, container, false)
+ }
+
+}
\ No newline at end of file
diff --git a/app/src/main/res/drawable/icon_favorite.xml b/app/src/main/res/drawable/icon_favorite.xml
new file mode 100644
index 0000000..2ecd33d
--- /dev/null
+++ b/app/src/main/res/drawable/icon_favorite.xml
@@ -0,0 +1,10 @@
+
+
+
diff --git a/app/src/main/res/drawable/icon_home.xml b/app/src/main/res/drawable/icon_home.xml
new file mode 100644
index 0000000..310c4a5
--- /dev/null
+++ b/app/src/main/res/drawable/icon_home.xml
@@ -0,0 +1,10 @@
+
+
+
diff --git a/app/src/main/res/drawable/icon_person.xml b/app/src/main/res/drawable/icon_person.xml
new file mode 100644
index 0000000..0272425
--- /dev/null
+++ b/app/src/main/res/drawable/icon_person.xml
@@ -0,0 +1,10 @@
+
+
+
diff --git a/app/src/main/res/drawable/icon_search.xml b/app/src/main/res/drawable/icon_search.xml
new file mode 100644
index 0000000..a008d68
--- /dev/null
+++ b/app/src/main/res/drawable/icon_search.xml
@@ -0,0 +1,10 @@
+
+
+
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_auth.xml
similarity index 95%
rename from app/src/main/res/layout/activity_main.xml
rename to app/src/main/res/layout/activity_auth.xml
index 86a5d97..5b9ac75 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_auth.xml
@@ -5,7 +5,7 @@
android:id="@+id/main"
android:layout_width="match_parent"
android:layout_height="match_parent"
- tools:context=".MainActivity">
+ tools:context=".auth.AuthActivity">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_favourite.xml b/app/src/main/res/layout/fragment_favourite.xml
new file mode 100644
index 0000000..294da2c
--- /dev/null
+++ b/app/src/main/res/layout/fragment_favourite.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_home.xml b/app/src/main/res/layout/fragment_home.xml
new file mode 100644
index 0000000..95c42c3
--- /dev/null
+++ b/app/src/main/res/layout/fragment_home.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_login.xml b/app/src/main/res/layout/fragment_login.xml
new file mode 100644
index 0000000..2727bfd
--- /dev/null
+++ b/app/src/main/res/layout/fragment_login.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_profile.xml b/app/src/main/res/layout/fragment_profile.xml
new file mode 100644
index 0000000..a4366c5
--- /dev/null
+++ b/app/src/main/res/layout/fragment_profile.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_recipe_detail.xml b/app/src/main/res/layout/fragment_recipe_detail.xml
new file mode 100644
index 0000000..4d11f69
--- /dev/null
+++ b/app/src/main/res/layout/fragment_recipe_detail.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_register.xml b/app/src/main/res/layout/fragment_register.xml
new file mode 100644
index 0000000..9aa8d96
--- /dev/null
+++ b/app/src/main/res/layout/fragment_register.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_search.xml b/app/src/main/res/layout/fragment_search.xml
new file mode 100644
index 0000000..360beb3
--- /dev/null
+++ b/app/src/main/res/layout/fragment_search.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_splash.xml b/app/src/main/res/layout/fragment_splash.xml
new file mode 100644
index 0000000..c722002
--- /dev/null
+++ b/app/src/main/res/layout/fragment_splash.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/menu/menu_drawer.xml b/app/src/main/res/menu/menu_drawer.xml
new file mode 100644
index 0000000..a913e2a
--- /dev/null
+++ b/app/src/main/res/menu/menu_drawer.xml
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/app/src/main/res/menu/menu_home.xml b/app/src/main/res/menu/menu_home.xml
new file mode 100644
index 0000000..a0dac86
--- /dev/null
+++ b/app/src/main/res/menu/menu_home.xml
@@ -0,0 +1,25 @@
+
+
\ No newline at end of file
diff --git a/app/src/main/res/navigation/nav_home.xml b/app/src/main/res/navigation/nav_home.xml
new file mode 100644
index 0000000..9710254
--- /dev/null
+++ b/app/src/main/res/navigation/nav_home.xml
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index abea4a9..21dbe44 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -1,3 +1,7 @@
Recipe App ITI
+
+ Hello blank fragment
+ drawer closed
+ drawer opened
\ No newline at end of file