Do you think you made a mistake by buying some goods in your freshman year that you no longer need? Do you feel the urge to clear up that clutter and make room for something more useful? Are you up for selling/renting it to your juniors so that they don't end up making the same mistake and could save a few bucks?
Well then we've got your back! Presenting BechDo,
✨List your product on the app so that potential buyers from your college, i.e. your juniors can contact you via the inbuilt chat functionality and seal the deal. You can even keep a track of your active products and mark them as unavailable or permanently delete them if they have been sold.
✨The ones looking to buy some stuff can simply go through the various products offered, filter them based on type(For sale or Rent), college, category and/or price, add some of them to their wishlist and obviously contact the seller.
So what are you guys waiting for! BechDo pe BechDo ya Khareed Lo 🙃
Join Code Sauce discord server for project updates, weekly meetups and insights.
-
Authentication
: This is implemented using Firebase Auth. A first-time user needs to sign up upon opening the app. On doing the same, the user will receive a verification mail. The link in the mail will verify the user after which they can sign in. If the mail is not sent due to any error, there's an option for the user to request for it again at an interval of 30 seconds. The user upon forgetting the password can use an option to reset their password, through which they will receive a mail, which will direct them to change the same. -
Create and Edit Profile
: Users need to fill out a profile section mentioning their name, date of birth, college name and year, profile picture is optional. The college name has to be selected from a drop-down list. In case, user's college is not present in the list then they will have to contact us to get it updated on our server. College name and date of birth cannot be changed once entered. -
Sell/Rent Products
: While listing a product, users need to provide a short description, title, category and images (atmost 7). Images are compressed while uploading to 25 % of their quality, still smaller image sizes are preferable. -
Track/Remove products
: The sellers can track the products posted by them in the Active Products section. They can also mark them as unavailable temporarily (after which they will be visible in the Sold Products section) or remove them permanently. -
Search Products/Add Filters
: Users can make use of title based search for Products and can also filter them based on type(for sale/rent/both), category, college and price. -
Favourites
: Users can mark the products as favourites but this is limited to 10 products (due to Firestore's restriction on whereIn query on arrays, which has been employed to fetch products using an array of favouriteProductIds of user, stored online to provide a multi-device experience). -
Messages
: Buyers and sellers can chat with each other to negotiate price and discuss the sale. The Chat functionality has been implemented using Firebase Realtime Database. Users also get push notifications for any new messages (not real-time but updated every 15 minutes using Jetpack Work Manager). -
Help
: Users can check out this FAQs section in the app to clear out their queries.
Shitiz Aggarwal Product Designer/Web |
Aakash Gupta Lead Android Developer |
Nidhi Singh Android/Web Developer |
Yatharth Mago Android/Web Developer |
Titiksha Sharma Flutter/Web Developer |
BechDo requires Android studio to run.
Install the dependencies to get started.
fork the project
Using the fork option just below your profile image
clone the project in your own device
git clone 'https link'
make a new branch
git checkout -b 'name_of_your_new_branch'
open project in Android studio and do the needful changes
The repository has the following permanent branches:
-
main This contains the code which has been released.
-
develop This contains the latest code. All the contributing PRs must be sent to this branch. When we want to release the next version of the app, this branch is merged into the
main
branch.
Please read our Contributing guidelines and Code of Conduct
If you are new to open source check out How to Start
Thanks to these wonderful people ✨✨: