Making travel simple and fun.
Krail is a Compose Multiplatform application designed to provide a seamless user experience across Android and iOS platforms. This project leverages modern libraries and frameworks to ensure a robust and scalable architecture.
Krail follows a modular architecture with a clear separation of concerns. The main modules include:
- ComposeApp: Contains the main entry point for the android application and has platform target implementations as well.
- iosApp: Contains the main entry point for the iOS application
- Koin: Used for dependency injection to manage and inject dependencies efficiently.
- Ktor: A framework for building asynchronous servers and clients in connected systems using Kotlin.
- SQLDelight: A library for generating typesafe Kotlin APIs from SQL.
:taj module is the design system for the Krail App. It's built using the compose foundation APIs. For now, Material Design is not used but inspiration has been taken from it.
To build the project, follow these steps:
-
Clone the repository:
git clone [email protected]:ksharma-xyz/Krail.git
-
Open the project in Android Studio:
- Open
build.gradle.kts
file in Android Studio. - Perform Gradle Sync (should happen automatically).
- Add
NSW_TRIP_PLANNER_API_KEY
in local.properties file, you can get a developer key from here.
- Build and run the project:
- Select the desired target (Android or iOS).
- Click on the
Run
button.
Welcoming contributions from the community. Please create a new issue or pick up an existing one.
Copyright 2024 Karan Sharma.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.