This project is a full-stack application built with React Native for the frontend and Express.js with MongoDB for the backend. It features user authentication using Firebase and provides a simple API for managing users and products.
Clone the repository:
git clone https://github.com/tejartr7/full-stack-expo-react-native-starter.git
cd full-stack-expo-react-native-starter/frontend
Install dependencies:
npm install
Run the app:
expo start
Navigate to the backend folder:
cd full-stack-expo-react-native-starter/backend
Install dependencies:
npm install
Create a .env
file in the backend
folder and add the following environment variables:
MONGO_URI=your_mongo_connection_string
private_key_id=your_private_key_id
client_email=your_client_email
client_id=your_client_id
auth_uri=your_auth_uri
token_uri=your_token_uri
universe_domain=your_universe_domain
Run the server:
npm start
The backend requires several environment variables, which can be obtained from the Firebase Console. Here's how to get them:
private_key_id
client_email
client_id
auth_uri
token_uri
universe_domain
/user/getUser
- Get the authenticated user. /user/addUser
- Add a new user. /user/getAllUsers
- Retrieve all users. /user/updateUser/:id
- Update a user by ID./products
- Get all products. /products/addProduct
- Add a new product. /products/updateProduct/:id
- Update a product by ID. /products/deleteProduct/:id
- Delete a product by ID. /products/:id
- Get a product by ID.Contributions are welcome! If you have suggestions for improvements or features, please create a pull request or open an issue.
This project is licensed under the MIT License. See the LICENSE file for details.