KisanSwap is a marketplace app designed to help farmers in India buy and sell second-hand agricultural equipment like motors, pumps, tractors, threshers, cables, transformers, and more. The platform caters to Hindi-speaking farmers, focusing on a simple, user-friendly interface for those with low literacy levels. With a focus on accessibility and ease of use, KisanSwap aims to make buying and selling farm equipment seamless and convenient.
- User can Upload second products with details such as:
- Short description
- Long description
- Price
- PrimaryCategory
- SecondaryCategory
- TertiaryCategory
- Location
- Photos and videos
- View a list of uploaded products.
- Monitor impressions and clicks on products.
- Delete products.
- Edit products.
- Chat with buyers on WhatsApp.
- Can sign-in with Google or Phone number.
- Home Screen:
- View a list of products with:
- Main photo
- Short description
- Price
- Distance from the user’s location
- Product location
- Filter products by:
- Category
- Price range
- Distance
- See brand new products at top with similar categories and specifications.
- View a list of products with:
- Buy Screen:
- View detailed product information with:
- Horizontal image and video pager
- Save or share the product
- Contact options:
- Call the seller
- Chat on WhatsApp
- View location on Google Maps
- View detailed product information with:
- Can sign-in with Google only.
- Create a store with:
- Store name
- Store description
- Store logo
- Store location
- products:
- Short description
- Long description
- Price
- PrimaryCategory
- SecondaryCategory
- TertiaryCategory
- Location
- Photos and videos
- Monitor impressions and clicks on products.
- Delete products.
- Edit products.
- sign-in with Google or Phone number.
- Create a profile with:
- Name
- Skills
- Experience
- Location
- Photos and videos
- View a list of skilled workers.
- Monitor impressions and clicks on profile.
- Delete profile.
- Edit profile.
- Chat with clients on WhatsApp.
- Can sign-in with Google or Phone number.
- Logo with app name
- Loading animation
- App name
- App version
- Background image
- Scaffold with:
- Horizontal pager with automatic scrolling:
- Column with:
- Image
- Title
- Description
- Column with:
- Bottom navigation bar:
- Dots for each screen
- Skip button
- Next button
- Horizontal pager with automatic scrolling:
- Top app bar:
- Row with:
- App Logo
- App name
- notification icon
- Row with:
- Scaffold with:
- menu icon (floating action button at top right)
- filter icon and name
- category
- Specifications(power, capacity, etc.)
- sort icon and name
- distance
- price
- upload date and time
- filter icon and name
- Scrollable Column with:
- Row with:
- Search bar
- Mic icon
- Row with:
- Categories in tabs
- Row of icons:
- Category icon
- Category name
- Row of icons:
- Categories in tabs
- Horizontal pager with automatic scrolling:
- New product:
- Image
- Short description
- Price
- Distance
- Location
- New product:
- LazyGrid (with 2 columns):
- Product card:
- Image
- Short description
- Price
- Distance from buyer
- Location (address name)
- time since upload
- Product card:
- Row with:
- menu icon (floating action button at top right)
- Bottom navigation bar:
- if user is Buyer or Second-hand seller
- Home icon and name (Home Screen)
- Saved items icon and name (Saved items Screen)
- Sell product icon and name (Sell product Screen)
- MyProducts icon and name (MyProducts Screen)
- Account icon and name (Account Screen)
- if user is Store owner
- Home icon and name (Home Screen)
- Store icon and name (MyStore Screen)
- Sell product icon and name (Sell product Screen)
- MyProducts icon and name (MyProducts Screen)
- Account icon and name (Account Screen)
- if user is Skilled worker
- Home icon and name (Home Screen)
- Works and endorsements(Work Screen)
- Sell product icon and name (Sell product Screen)
- MyProducts icon and name (MyProducts Screen)
- Account icon and name (Account Screen)
- if user is Buyer or Second-hand seller
- Top app bar:
- Row with:
- Back icon
- Screen name
- Row with:
- Scaffold with:
- Column with:
- Store name
- Store description
- Store logo
- Store location
- Row with:
- Search bar
- Mic icon
- Row with:
- Categories in tabs
- Row of icons:
- Category icon
- Category name
- Row of icons:
- Categories in tabs
- Row with:
- filter icon and name
- category
- Specifications(power, capacity, etc.)
- sort icon and name
- price
- specifications (power, capacity, etc.)
- filter icon and name
- LazyGrid (with 2 columns):
- Product card:
- Image
- Short description
- Price
- Distance from buyer
- Location (address name)
- time since upload
- Product card:
- Column with:
- Bottom navigation bar
- Top app bar:
- Row with:
- Back icon
- Screen name
- Row with:
- Scaffold with:
- Column with:
- Store name
- Store description
- Store logo
- Store location
- Row with:
- Search bar
- Mic icon
- Row with:
- Categories in tabs
- Row of icons:
- Category icon
- Category name
- Row of icons:
- Categories in tabs
- Row with:
- filter icon and name
- category
- Specifications(power, capacity, etc.)
- sort icon and name
- price
- specifications (power, capacity, etc.)
- filter icon and name
- LazyGrid (with 2 columns):
- Product card:
- Image
- Short description
- List(Map(Price, specifications(e.g. power, capacity, etc.)))
- Location (address name)
- time since upload
- Product card:
- Add product button
- Column with:
- Bottom navigation bar
- Top app bar:
- Row with:
- Back icon
- Screen name
- Row with:
- Scaffold
- Row
- Country code selector
- text field(phone number)
- OTP field
- Row
- Bottom navigation bar
- Top app bar:
- Row with:
- Back icon
- Screen name
- Row with:
- Scaffold with:
- Column with:
- Row with:
- Search bar
- Mic icon
- Row with:
- Categories in tabs
- Row of icons:
- Category icon
- Category name
- Row of icons:
- Categories in tabs
- Product Uploading
- Specifications (there should be a row which contain units of maps like (selector Power, capacity etc.)"Power", (unit selector e.g. Hp, KW etc.)"HP", "price" just above the editing row of map )
- List
- Map (3-4 selectors or textfield in a row)(like "Power", "5", "30000")
- Price
- Specifications(Power, capacity, voltage, brand, model etc.)
- Map (3-4 selectors or textfield in a row)(like "Power", "5", "30000")
- List
- Short description
- Long description
- Specifications (there should be a row which contain units of maps like (selector Power, capacity etc.)"Power", (unit selector e.g. Hp, KW etc.)"HP", "price" just above the editing row of map )
- LazyRow:
- image(round cornered with small cross icon at top right to remove the image)
- add image button
- LazyRow:
- video-thumbnails(round cornered with cross icon at top right and play icon at center)
- add video
- Upload button
- Row with:
- Bottom navigation bar
- Top app bar:
- Row with:
- Back icon
- Screen name
- Row with:
- Scaffold with:
- Column with:
- Profile image
- Name
- Skills
- Experience
- Location
- LazyColumn:
- Work card:
- Client name
- Client location
- Client contact
- Short description
- charges
- time since upload
- Edit icon
- Delete icon
- Work card:
- Column with:
- Bottom navigation bar
- Top app bar:
- Row with:
- Back icon
- Screen name
- Row with:
- Scaffold with:
- Column with:
- Profile image
- Name
- Skills
- Experience
- Location
- LazyColumn:
- Work card:
- Client name
- Client location
- Client contact
- Short description
- charges
- time since upload
- Edit icon
- Delete icon
- Work card:
- Add work button
- Column with:
- Bottom navigation bar
- Top app bar:
- Row with:
- Back icon
- Screen name
- Row with:
- Scaffold with:
- LazyGrid (with 2 columns):
- Product card:
- Image
- Short description
- Price
- Distance from buyer
- Location (address name)
- time since upload
- Edit icon
- Delete icon
- Product card:
- LazyGrid (with 2 columns):
- Bottom navigation bar
- Top app bar:
- Row with:
- Back icon
- Screen name
- share icon
- Row with:
- Scaffold with:
- Floating action button:
- Save icon
- Column with:
- Horizontal pager with automatic scrolling:
- Image
- Video
- Column with:
- Row with:
- Price
- time since upload
- Short description
- Specifications
- Power
- Capacity
- Brand
- Model
- Year of purchase
- Long description
- Row with:
- Distance from buyer
- Location (address name)
- Row with:
- Row with:
- Call icon
- Chat icon
- location icon
- Horizontal pager with automatic scrolling:
- Floating action button:
- Bottom navigation bar
- Top app bar:
- Row with:
- Back icon
- Screen name
- Row with:
- Scaffold with:
- Column with:
- Row with:
- Search bar
- Mic icon
- Row with:
- Categories in tabs
- Row of icons:
- Category icon
- Category name
- Row of icons:
- Categories in tabs
- Specifications (as select fields)
- Power
- Capacity
- Brand
- Model
- Year of purchase
- price
- Short description
- Long description
- Location change icon button
- LazyRow:
- image(round cornered with cross icon at top right)
- LazyRow:
- video-thumbnails(round cornered with cross icon at top right and play icon at center)
- Upload button
- Row with:
- Column with:
- Bottom navigation bar
- Top app bar:
- Row with:
- Back icon
- Screen name
- Row with:
- Scaffold with
- LazyColumn:
- Product card:
- Image
- Short description
- Price
- Distance from buyer
- Location (address name)
- time since upload
- if user is Store owner or premium Second-hand seller
- no. of impressions
- no. of clicks
- no. of chats
- no. of calls
- Edit icon
- Delete icon
- Product card:
- LazyColumn:
- Top app bar:
- Row with:
- Back icon
- Screen name
- Row with:
- Scaffold with:
- Column with:
- Row with:
- Search bar
- Mic icon
- Row with:
- Categories in tabs
- Row of icons:
- Category icon
- Category name
- Row of icons:
- Categories in tabs
- Specifications (as select fields)
- Power
- Capacity
- Brand
- Model
- Year of purchase
- price
- Short description
- Long description
- Location change icon button
- LazyRow:
- image(round cornered with cross icon at top right)
- LazyRow:
- video-thumbnails(round cornered with cross icon at top right and play icon at center)
- Update button
- Row with:
- Column with:
- Bottom navigation bar
- Top app bar:
- Row with:
- Back icon
- Screen name
- Row with:
- Scaffold with:
- Column with
- Profile image
- Row:
- UserType(Second-hand seller, Buyer, Store owner, Skilled worker)
- Edit icon
- Row with:
- Name
- Edit icon
- Row with:
- Phone number
- Edit icon
- Row with:
- Row with:
- Address
- Edit icon
- Saved Items
- Your Products
- Sign out
- Delete account
- Column with
- Bottom navigation bar
- Advice and tips from other farmers.
- In app chatting feature
- Jetpack Compose: For building the user interface with code.
- FlutterFlow: For building the user interface using drag and drop.
- Firebase Firestore: For database and real-time syncing.
- Google Maps API: For location-based features.
The app follows Clean Architecture, with three main layers:
- Presentation Layer:
- Handles the user interface and navigation (Jetpack Compose screens).
- Domain Layer:
- Manages business logic and use cases(model and viewModel).
- Data Layer:
- Communicates with Firebase Firestore for CRUD operations(repository).
A marketplace and contact point for all the farmers to exchange goods and services.