An application for selling stuff you do not need anymore.
This repository consists of a React Native Marketplace Application built with Expo CLI.
Done With It offers free user to user classifieds listings. Buy and Sell!
Scan QR Code via the Expo mobile app, or by using Appetize Emulator (Scroll down
→ Open project using Expo
).
To run the application on your machine, follow the steps below:
- Download/ Clone the repository on your machine.
- Open the
backend
folder via VS Code. - Open the
development.json
file (config
→development.json
) and change the asterisks inassetsBaseUrl
to your machine IPv4 Address. - Open the terminal at the root of the
backend
folder (Ctrl + ') and runnpm install
to install the project dependencies. - Still in the terminal, run the command
node index.js
to start the backend server. - The backend server is live and ready to be accessed - To confirm that it is live, access
http://localhost:9000/api/listings
.
- Download/ Clone the repository on your machine.
- Open the
app
folder via VS Code. - Open the
settings.js
file (app
→config
→settings.js
) and change the asterisks inapiUrl
to your machine IPv4 Address. - Make sure you have Expo CLI installed globally - if not, install it via
npm install -g expo-cli
. - Open the terminal at the root of the
app
folder (Ctrl + ') and runnpm install
to install the project dependencies. - Still in the terminal, run the command
expo start
to start the app (make sure an AVD is running). - The application should open automatically on the AVD.
-
10 Screens
- Welcome, Register, Login, Account, Upload, View Image, Messages, Listings, Listing Edit, and Listing Details Screens. -
Animation
- Using Lottie (Activity Indicator, done animation and more). -
Authentication
- User authentication (Register, Login/out). -
Cache Layer
- Caching Images. -
Custom and Reusable Hooks
- Api, Location, and Notifications. -
Form Validation
- Using Formik. -
Gesture Handler
- Swipe to delete, and pull to refresh. -
Navigation
- Using React Navigation and Stack Navigator. -
Push Notifications
- When messages are received. -
Reusable Components
- Button, Icon, Forms, Screen, Text, Text Input and more. -
Splash Screen
- Logo Screen Design while the app is launching.