https://github.com/munenecalvin/alx-files_manager
Project is a compilation of (MERN) Back-end concepts on; Authentication, NodeJS, MongoDB, Redis, Pagination and Background processing.
https://github.com/munenecalvin/alx-files_manager
authentication mern-project mongodb node-js
Last synced: 3 months ago
JSON representation
Project is a compilation of (MERN) Back-end concepts on; Authentication, NodeJS, MongoDB, Redis, Pagination and Background processing.
- Host: GitHub
- URL: https://github.com/munenecalvin/alx-files_manager
- Owner: MuneneCalvin
- Created: 2023-06-25T08:50:48.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2023-06-29T06:33:12.000Z (about 3 years ago)
- Last Synced: 2025-03-29T01:44:49.907Z (over 1 year ago)
- Topics: authentication, mern-project, mongodb, node-js
- Language: JavaScript
- Homepage:
- Size: 27.5 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Files Manager API
This repository contains an API for a files manager developed with Node.js, that enables user authentication, temporary storage with Redis, creation of image thumbnails, and storage of file information using MongoDB. This collaborative project was developed by Calvin Mwangi.
Features
The Files Manager API provides the following features:
User Authentication: The API supports user authentication, allowing users to securely access their files and manage them through appropriate authorization mechanisms.
Temporary Storage with Redis: The API utilizes Redis as a temporary storage solution, for storage of access tokens created upon authorisation for accessing endpoints without the need to log in every time.
Creation of Image Thumbnails: The API incorporates functionality to generate image thumbnails. When a user uploads an image file, the API automatically generates a thumbnail version using a worker process and queing system, facilitating faster rendering and improved user experience.
Storage of File Information using MongoDB: The API leverages MongoDB as a database to store file information. This allows for efficient querying, indexing, and retrieval of file-related data, ensuring seamless management and organization of files.
# Installation
To set up the File Manager API on your local environment, please follow these steps:
1. Clone this repository to your local machine using the following command: `git clone https://github.com/MuneneCalvin/alx-files_manager`.
2. Install the required dependencies by running the following command in the project's root directory: `npm install`.
3. Start the server and worker in two different terminals using `npm run start-server` and `npm run start-worker`.