Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/vishnuka084/device_manager

This sample project is managing locations that control multiple devices. Your task is to create a REST service and User interfaces for storing information about these locations and their associated devices. This information must be stored in the database. When storing a location or device, you should add necessary validations.
https://github.com/vishnuka084/device_manager

express jwt mongodb mongoose nodejs reactjs tailwind-css typescript

Last synced: 19 days ago
JSON representation

This sample project is managing locations that control multiple devices. Your task is to create a REST service and User interfaces for storing information about these locations and their associated devices. This information must be stored in the database. When storing a location or device, you should add necessary validations.

Awesome Lists containing this project

README

        

# Device Manager System - MERN Stack

This project is a device manager system built using the MERN (MongoDB, Express.js, React.js, Node.js) stack. It allows users to manage devices and their associated information. Below is a brief overview of the project:

## Features:
- **CRUD Operations:** Users can perform CRUD (Create, Read, Update, Delete) operations on devices.
- **Authentication:** Secure user authentication using JWT (JSON Web Tokens).
- **Role-based Access Control:** Different user roles (e.g., admin, user) with varying levels of access.
- **Search and Filtering:** Search and filter functionality to easily find devices.
- **Responsive Design:** User interfaces are responsive and optimized for different screen sizes.

## Technologies Used:
- **Frontend:** React.js, Axios
- **Backend:** Node.js, Express.js, MongoDB, Mongoose
- **Authentication:** JSON Web Tokens (JWT)
- **Other Tools:** Git, Postman (for API testing)

## Installation:
1. **Clone the repository:** `git clone https://github.com/Vishnuka084/Full_StackDeveloper_Practical_Test`
2. **Navigate to the project directory:** `cd device-manager`
3. **Install dependencies:**
- **Frontend:** `cd frontend && npm install`
- **Backend:** `cd backend && npm install`
4. **Set up environment variables:**
- Create a `.env` file in the backend directory and define environment variables (e.g., MongoDB connection URI, JWT secret)
5. **Start the backend server:** `npm start` (inside the backend directory)
6. **Start the frontend server:** `npm start` (inside the frontend directory)
7. **Access the application at:** [http://localhost:3000](http://localhost:3000)

## Usage:
- Register an account or log in with existing credentials.
- Navigate to the device management section to view, add, edit, or delete devices.
- Use the search and filter functionality to find specific devices.
- Access user-specific features based on role-based access control.

## Contributing:
Contributions are welcome! If you'd like to contribute to this project, please follow these steps:
1. **Fork the repository**
2. **Create a new branch:** `git checkout -b feature/`
3. **Make your changes and commit them:** `git commit -m 'Add new feature'`
4. **Push to the branch:** `git push origin feature/`
5. **Submit a pull request**

## License:
This project is licensed under the MIT License. See the [LICENSE](./LICENSE) file for details.

## Contact:
For questions or support, please contact [project-Vishnuka Yahan](mailto:[email protected]).