Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
0589cc9
feat: initialized NestJS backend and Jetpack Compose
Soorajr005 May 29, 2026
cc91213
feat: added jetpack compose project template
Soorajr005 May 29, 2026
0bee1e3
chore: set up NestJS backend foundation with Prisma and app config
fathhima May 30, 2026
365bd00
feat: completed registration and otp verification
Soorajr005 Jun 7, 2026
d5db795
refactor(auth): restructure auth setup
fathhima Jun 8, 2026
0520b80
feat(auth): implement redis and otp resend with cooldown
fathhima Jun 9, 2026
30d8e08
feat(auth): implemented login with jwt and forgotpassword flow with o…
fathhima Jun 9, 2026
aaa238f
feat(auth): completed authentication with me endpoint, jwt guard and …
fathhima Jun 16, 2026
a7e3d66
feat: complete forgot password layout and signup otp screen workflows
Soorajr005 Jun 17, 2026
7ae003d
Merge branch 'nestjs' of https://github.com/Soorajr005/BookMyVenue in…
Soorajr005 Jun 17, 2026
3286918
feat: completed venue adding feature,fetching feature and venue booking
Soorajr005 Jun 23, 2026
a4d4bad
feat: added redis lock for concurrent booking race condition
Soorajr005 Jun 24, 2026
1e712f5
refactor(auth): changed success response type to boolean, updated use…
fathhima Jun 26, 2026
f27923c
feat(auth): implemented admin seeding, roles guard and decorator for …
fathhima Jun 26, 2026
fba7c0b
feat(category): implemented category management in admin side
fathhima Jun 26, 2026
337033e
feat(venue): implemented venue management with admin approval flow
fathhima Jun 26, 2026
d5b7d48
feat: sync latest
Soorajr005 Jun 27, 2026
62664d8
feat: normalize admin seed email and update prisma schema
Soorajr005 Jun 30, 2026
dbf5166
feat(slot): implemented slot management for venue owners with create,…
fathhima Jun 30, 2026
faecbf0
feat(slot): completed backend for slot management for venue owners
fathhima Jun 30, 2026
bd1f786
feat(booking): implemented booking management with create, retrieve a…
fathhima Jul 1, 2026
8ea1357
feat(slot): added booking status checks to prevent editing and deacti…
fathhima Jul 1, 2026
5da59f0
feat(booking): implemented booking management with create, retrieve a…
fathhima Jul 1, 2026
48b2d6f
Merge branch 'nestjs' into feat/mvp-android
fathhima Jul 1, 2026
50dc1b5
feat(app): added booking module to the main app module
fathhima Jul 1, 2026
c44c743
feat(payment): integrated razorpay for payment processing and add pay…
fathhima Jul 8, 2026
9c942ac
feat(payment): completed backend integration of razorpay for payment …
fathhima Jul 8, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions bookmyvenue-android/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
*.iml
.gradle
/local.properties
/.idea/caches
/.idea/libraries
/.idea/modules.xml
/.idea/workspace.xml
/.idea/navEditor.xml
/.idea/assetWizardSettings.xml
.DS_Store
/build
/captures
.externalNativeBuild
.cxx
local.properties
3 changes: 3 additions & 0 deletions bookmyvenue-android/.idea/.gitignore

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions bookmyvenue-android/.idea/.name

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions bookmyvenue-android/.idea/AndroidProjectSystem.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions bookmyvenue-android/.idea/compiler.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 10 additions & 0 deletions bookmyvenue-android/.idea/deploymentTargetSelector.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

13 changes: 13 additions & 0 deletions bookmyvenue-android/.idea/deviceManager.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

19 changes: 19 additions & 0 deletions bookmyvenue-android/.idea/gradle.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

61 changes: 61 additions & 0 deletions bookmyvenue-android/.idea/inspectionProfiles/Project_Default.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 10 additions & 0 deletions bookmyvenue-android/.idea/migrations.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

9 changes: 9 additions & 0 deletions bookmyvenue-android/.idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

17 changes: 17 additions & 0 deletions bookmyvenue-android/.idea/runConfigurations.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions bookmyvenue-android/.idea/vcs.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions bookmyvenue-android/app/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/build
66 changes: 66 additions & 0 deletions bookmyvenue-android/app/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
plugins {
alias(libs.plugins.android.application)
alias(libs.plugins.kotlin.android)
alias(libs.plugins.kotlin.compose)
}

android {
namespace = "com.example.bookmyvenue"
compileSdk {
version = release(36)
}

defaultConfig {
applicationId = "com.example.bookmyvenue"
minSdk = 24
targetSdk = 36
versionCode = 1
versionName = "1.0"

testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
}

buildTypes {
release {
isMinifyEnabled = false
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
)
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}
kotlinOptions {
jvmTarget = "11"
}
buildFeatures {
compose = true
}
}

dependencies {
implementation("androidx.datastore:datastore-preferences:1.1.1")
implementation("com.squareup.retrofit2:retrofit:2.11.0")
implementation("com.squareup.retrofit2:converter-gson:2.11.0")
implementation("androidx.core:core-splashscreen:1.0.1")
implementation("androidx.navigation:navigation-compose:2.8.5")
implementation(libs.androidx.core.ktx)
implementation(libs.androidx.lifecycle.runtime.ktx)
implementation(libs.androidx.activity.compose)
implementation(platform(libs.androidx.compose.bom))
implementation(libs.androidx.compose.ui)
implementation(libs.androidx.compose.ui.graphics)
implementation(libs.androidx.compose.ui.tooling.preview)
implementation(libs.androidx.compose.material3)
implementation(libs.androidx.compose.runtime)
testImplementation(libs.junit)
androidTestImplementation(libs.androidx.junit)
androidTestImplementation(libs.androidx.espresso.core)
androidTestImplementation(platform(libs.androidx.compose.bom))
androidTestImplementation(libs.androidx.compose.ui.test.junit4)
debugImplementation(libs.androidx.compose.ui.tooling)
debugImplementation(libs.androidx.compose.ui.test.manifest)
}
21 changes: 21 additions & 0 deletions bookmyvenue-android/app/proguard-rules.pro
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Add project specific ProGuard rules here.
# You can control the set of applied configuration files using the
# proguardFiles setting in build.gradle.
#
# For more details, see
# http://developer.android.com/guide/developing/tools/proguard.html

# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
# public *;
#}

# Uncomment this to preserve the line number information for
# debugging stack traces.
#-keepattributes SourceFile,LineNumberTable

# If you keep the line number information, uncomment this to
# hide the original source file name.
#-renamesourcefileattribute SourceFile
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
package com.example.bookmyvenue

import androidx.test.platform.app.InstrumentationRegistry
import androidx.test.ext.junit.runners.AndroidJUnit4

import org.junit.Test
import org.junit.runner.RunWith

import org.junit.Assert.*

/**
* Instrumented test, which will execute on an Android device.
*
* See [testing documentation](http://d.android.com/tools/testing).
*/
@RunWith(AndroidJUnit4::class)
class ExampleInstrumentedTest {
@Test
fun useAppContext() {
// Context of the app under test.
val appContext = InstrumentationRegistry.getInstrumentation().targetContext
assertEquals("com.example.bookmyvenue", appContext.packageName)
}
}
29 changes: 29 additions & 0 deletions bookmyvenue-android/app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<uses-permission android:name="android.permission.INTERNET" />

<application
android:allowBackup="true"
android:dataExtractionRules="@xml/data_extraction_rules"
android:fullBackupContent="@xml/backup_rules"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.BookMyVenue"
android:usesCleartextTraffic="true">
<activity
android:name=".MainActivity"
android:exported="true"
android:label="@string/app_name"
android:theme="@style/Theme.App.Starting">
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>

</manifest>
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
package com.example.bookmyvenue

import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.activity.enableEdgeToEdge
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.padding
import androidx.compose.material3.Scaffold
import androidx.compose.ui.Modifier
import androidx.core.splashscreen.SplashScreen.Companion.installSplashScreen // Crucial Import
import com.example.bookmyvenue.ui.theme.BookMyVenueTheme
import com.example.bookmyvenue.ui_layout.AppNavigation

class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
installSplashScreen()

super.onCreate(savedInstanceState)
enableEdgeToEdge()
setContent {
BookMyVenueTheme {
Scaffold(modifier = Modifier.fillMaxSize()) { innerPadding ->
AppNavigation(
modifier = Modifier.padding(innerPadding)
)
}
}
}
}
}
Loading