The alx-files_manager project is a comprehensive file management system developed for ALX School. It provides functionality to manage files, including uploading, downloading, and deleting files. This project is a summary of the back-end trimester: authentication, NodeJS, MongoDB, Redis, pagination and background processing.
The objective of this project is to build a simple platform to upload and view files with the following features:
- User authentication via a token
- List all files
- Upload a new file
- Change permission of a file
- View a file
- Generate thumbnails for images
At the end of this project, you are expected to be able to explain to anyone, without the help of Google:
- How to create an API with Express
- How to authenticate a user
- How to store data in MongoDB
- How to store temporary data in Redis
- How to setup and use a background worker
To install and run the alx-files_manager project, follow these steps:
- Clone the repository:
git clone https://github.com/addymwenda12/alx-files_manager.git
- Navigate to the project directory:
cd alx-files_manager
- Install dependencies:
npm install
- Start the application:
npm start