Skip to content

alicolak64/Kirala

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kirala - Rental Platform

Table of Contents

  1. Description
  2. App Features
  3. Development
  4. Installation
  5. Usage
  6. Detailed Description
  7. Screenshots

Description

Kirala is an iOS application that enables users to rent out underutilized items from their homes and allows others to rent them for short-term needs. Users can list items, manage rental requests, and browse available rentals. The app offers secure authentication, favorites, cart, and order tracking, ensuring a seamless and user-friendly rental experience while promoting sustainable consumption.

App Features

  • Browse & Search: Users can explore rental listings and search for specific items.

  • User Authentication: Supports email/password, Google, and Apple sign-in.

  • Item Listings: Users can list items with details like name, category, price, and description.

  • Rental Management: Includes order tracking, request approvals, and rental history.

  • Favorites & Cart: Users can save items for later or add them to the cart for quick checkout.

  • Dark Mode Support: Fully compatible with iOS dark mode.

  • Multi-Language Support: English and Turkish available.

  • Development

  • Platform: iOS

  • Language: Swift

  • Architecture: MVVM (Model-View-ViewModel), Protocol Oriented Programming

  • UI Framework: UIKit (programmatic)

  • Localization: The app supports multiple languages, including English and Turkish.

  • Dark Mode: Full support for Dark Mode is implemented.

  • Error Handling & Loading States: Custom UI views are developed for handling errors and loading states.

  • Network Layer: A generic network layer is implemented for efficient API calls.

  • Custom Animations: Enhancing user interaction with custom animations.

  • Design Patterns & Techniques:

    • Protocol Oriented Programming
    • Delegate Pattern
    • Notification Center
    • Builder Pattern
    • Dependency Injection
  • Third-Party Frameworks:

  • Manually Added Third-Party Frameworks:

Installation

Requirements

  • Xcode (latest version)
  • iOS 11.0 or later
  • Swift 5+

Steps

  1. Clone the Repository:

    git clone https://github.com/alicolak64/Kirala.git
    cd kirala
  2. Install Dependencies:

    • Swift Package Manager, add dependencies through Xcode.
  3. Run the Project:

    • Open the project in Xcode, select a target device or simulator, and run.

Usage

  • Sign Up & Login: Users can register with email/password, Google, or Apple authentication and verify the email verification email
  • Rent an Item: Browse through listings, filter, and search for available rental items.
  • List an Item: Create a new listing via the "My Listings" page and manage existing listings.
  • Order Management: Track rental transactions via the "My Orders" page.

Detailed Description

Kirala aims to develop an iOS application that facilitates the rental of underutilized or unused items in users’ homes. With Kirala, users can upload items they wish to rent out, set daily rental prices, and make them available for others to rent. Additionally, the application provides a platform for users who have short-term needs for certain items but prefer not to purchase them outright. These users can browse through available rental items listed by others and proceed with renting them as needed.

The application offers a seamless experience for both registered and unregistered users. Unregistered users can browse through the available rental listings, while those who wish to place orders are prompted to create an account. Users interested in listing rental items are required to have an account, ensuring a level of accountability within the platform. Therefore, the application encompasses features for both unregistered users, including viewing available listings, as well as login and registration pages for account creation.

Kirala offers multiple options for user registration and login. Users can sign up using their email address and password, log in with their Google account, or utilize their Apple account for authentication. Upon creating an account and logging in, users who wish to list rental items can navigate to the listing creation page. Here, they can input details such as category selection, item name, price, and description before sharing their listings with the platform users, all free of charge. They can manage their posted listings and respond to incoming requests through the My Listings page, where they can approve or reject requests as needed.

For users interested in renting items, the application provides filtering options based on categories, as well as a search feature by item name. Users can add desired items to their cart or mark them as favorites for future reference. The checkout process allows users to review items in their cart and place orders seamlessly. Additionally, users can track the status of their orders through the My Orders page.

The Kirala application not only focuses on facilitating rentals but also ensures a secure and user-friendly experience. Security measures such as encryption and secure authentication mechanisms are implemented to protect user data and transactions. The application adheres to relevant data protection regulations to ensure the privacy and security of user information.

Furthermore, the design and development of the Kirala application are guided by industry standards and best practices to ensure a high-quality, reliable, and accessible platform. The user interface is designed to be intuitive and visually appealing, providing a smooth navigation experience for all users.

Overall, the Kirala project aims to create a dynamic and efficient rental platform that connects users looking to rent out their unused items with those in need of short-term rentals. By providing a secure, user-friendly, and well-designed application, Kirala strives to enhance the rental experience for all users, fostering a community of shared resources and sustainable consumption.

Screenshots

Auth

Login Screen Reset Password Screen Register Screen
Login Screen Register Screen Reset Password Screen

Home

Home Screen 1 Home Screen 2 Home Screen 3
Home Screen 1 Home Screen 2 Home Screen 3
Home Screen With Category Filter Add Favorite Product When No Login Category Screen
Home Screen 4 Home Screen 5 Home Screen 3

Product

Create Product Screen Update Product Screen 1 Update Product Screen 2
Create Product Screen Update Product Screen 1 Update Product Screen 2
Update Product Calendar Update Product Photos Update Product Location
Update Product Calendar Update Product Photos Update Product Location
My Products My Favorite Products
My Products My Favorite Products
Product Detail 1 Product Detail 2 Product Detail Map And Desc
Product Detail 1 Product Detail Loading Hud Product Detail Success Alert
Product Detail Price Product Detail Loading Hud Product Detail Success Alert
Product Detail Price Product Detail 2 Product Detail Map And Desc

Search And Filter

Search Product With Category Screen Product Sort Modal Product Filter Modal
Search Product With Category Screen Product Sort Modal Product Filter Modal
Product Brand Filter Modal Product Category Filter Modal Product Rating Filter Modal
Product Brand Filter Modal Product Category Filter Modal Product Rating Filter Modal
Product City Filter Modal Product Price Filter Modal Product Renter Filter Modal Product Rental Period Filter Modal
Product City Filter Modal Product Price Filter Modal Product Renter Filter Modal Product Rental Period Filter Modal

Others

Splash Screen Lottie Animation Screen Empty State Screen
Splash Screen Lottie Animation Screen Empty State Screen

Email

Verify Email Mail Reset Password Mail Product Rent Request Mail
Verify Email Mail Reset Password Mail Product Rent Request Mail

About

Kirala - Rental Platform

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages