Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/igomigo/fileshareplatform
A robust platform to upload, view, and manage files with user authentication, permission controls, and thumbnail generation.
https://github.com/igomigo/fileshareplatform
express mocha mongodb nodejs redis restful-api uuid
Last synced: about 1 month ago
JSON representation
A robust platform to upload, view, and manage files with user authentication, permission controls, and thumbnail generation.
- Host: GitHub
- URL: https://github.com/igomigo/fileshareplatform
- Owner: Igomigo
- License: mit
- Created: 2024-06-07T21:45:03.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2024-06-27T01:14:27.000Z (5 months ago)
- Last Synced: 2024-10-10T22:41:11.125Z (about 1 month ago)
- Topics: express, mocha, mongodb, nodejs, redis, restful-api, uuid
- Language: JavaScript
- Homepage:
- Size: 3.43 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# FileSharePlatform
A platform to upload, view, and manage files with user authentication, permission controls, and thumbnail generation. This project focuses on building a file management platform using technologies listed in the technologies section of this file. The platform allows users to upload and view files, with features like user authentication, file listing, uploading, permission changing, file viewing, and thumbnail generation. The project involves creating an API with Express, user authentication, data storage in MongoDB and Redis, and setting up a background worker. It also includes testing for various components and endpoints using tools like Mocha.
## 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## Getting Started
### Prerequisites
- [Node.js](https://nodejs.org/)
- [MongoDB](https://www.mongodb.com/)
- [Redis](https://www.redis.io/)
- [Image-thumbnail](https://www.npmjs.com/package/image-thumbnail)### Installation
1. Clone the repository
```sh
git clone https://github.com/Igomigo/FileSharePlatform.git
```
2. Install dependencies
```sh
cd FileSharePlatform
npm install
```
3. Start the server
```sh
npm start
```
4. Start the server for development
```sh
npm run devstart
```## Technologies Used
- Node.js
- Express.js
- MongoDB
- Redis
- Kue
- Mongoose
- Image-thumbnail## Contributing
Contributions are welcome! Please fork this repository and submit a pull request.
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.