Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/zouaoui-montassar/takwirti

MERN STACK , Tailwindcss , daisyui , socket-io
https://github.com/zouaoui-montassar/takwirti

daisyui express-js firebase-storage mongdb mongoose node-js reactjs socket-io tailwindcss

Last synced: 5 days ago
JSON representation

MERN STACK , Tailwindcss , daisyui , socket-io

Awesome Lists containing this project

README

        

## Main Functionalities

- User Authentication (JWT on localstorage) & Authorization ( Particulier , Responsable , Admin ) ( useContext for state management )
- CRUD For Terrains
- CRUD For Reservations
- Search functionality for Terrains and Reservations & Notifications
- Realtime chat ( Zustand for global state )

## Installation

Install with npm

- Setup the backend
```bash
cd backend
npm install
```
- Setup the frontend
```bash
cd frontend
npm install
```
## Environment Variables

To run this project, you will need to add the following environment variables to your .env file ( which you are going to create in the backend folder backend/.env )
```bash
PORT = 4000
MONGO_URI = your_mongo_uri
JWT_SECRET = your_jwt_secret
```
you may want to change the frontend code depending on whether you chose a PORT other than 4000

## Firebase Setup
Setup a firebase storage from the firebase console.
Create a firebase.js file inside frontend/src/
```bash
import { initializeApp } from "firebase/app";
import { getStorage } from "firebase/storage";
const firebaseConfig = {
apiKey: "",
authDomain: "",
projectId: "",
storageBucket: "",
messagingSenderId: "",
appId: ""
};
const app = initializeApp(firebaseConfig);
export const storage = getStorage(app);
```
Make sure to copy and paste your own firebase configuration parameters from the firebase console.
## Run Locally

Start the backend server

```bash
npm test
```
Start the frontend server

```bash
npm start
```

## License

[Apache License 2.0](https://choosealicense.com/licenses/apache-2.0/)