{"repo":"danieldavidraj/Blob-Storage-System","free":true,"listed":false,"github":"https://github.com/danieldavidraj/Blob-Storage-System","clone":"git clone https://github.com/danieldavidraj/Blob-Storage-System.git","description":"A Simple Blog Storage System for storing files where users can view, upload, rename, delete, share, download, and compress files with user-based access control on who can access the files.","language":"Python","stars":10,"topics":["fastapi","python","postgresql","jwt"],"license":"MIT","category":"databases-storage","readme_excerpt":"Blob Storage System --- Heroku Deployment Link : Blob Storage System Video Link : Demo Swagger UI : Swagger UI --- A Simple Blog Storage System for storing files where users can view, upload, rename, delete, share, download, and compress files with user-based access control on who can access the files. ER Diagram: Implementation: Admin Only admins (ie) users whose 'is admin' field is true can perform these operations. This is checked using OAuth2 scopes provided by FastAPI. GET /admin/users View all users with all details and the files they own. GET /admin/users/{user id} View a particular user with all details and the files he owns. GET /admin/files View all files created by users GET /admin/files/{file id} View a specific file created by an user. DELETE /admin/files/{file id} Delete a file created by an user. PATCH /admin/users/{user id}/enable Update the 'disabled' field in database to False. PATCH /admin/users/{user id}/disable Update the 'disabled' field in database to True. Authentication Authentication happens using OAuth2 with Password (and hashing), Bearer with JWT tokens. POST /token Login Create access token using JWT by supplying username and password. POST /create session Create a session by supplying the access token so that it could be used later whenever the user comes back GET /loggedin To check whether the session is already set (ie) User has already logged in POST /logout To delete the session Users GET /users View all users but only username and id, no oth","default_branch":null,"files":null,"tree":[],"storefront":"/r/danieldavidraj","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/danieldavidraj/Blob-Storage-System/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}