{"id":16909611,"url":"https://github.com/yjdoc2/filestore-web-project","last_synced_at":"2025-12-18T07:30:19.237Z","repository":{"id":44213520,"uuid":"233588911","full_name":"YJDoc2/FileStore-Web-Project","owner":"YJDoc2","description":"This is a website functioning similar to google drive, where users can store files privately, as well as create 'collections'  which are public. This can also display some types of files in-browser.","archived":true,"fork":false,"pushed_at":"2023-01-24T01:11:34.000Z","size":3820,"stargazers_count":2,"open_issues_count":12,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-11T08:48:41.713Z","etag":null,"topics":["express-js","file-sharing","file-storage","mongodb","nodejs","reactjs"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/YJDoc2.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-01-13T12:19:26.000Z","updated_at":"2024-04-22T14:45:05.000Z","dependencies_parsed_at":"2023-01-31T14:31:16.476Z","dependency_job_id":null,"html_url":"https://github.com/YJDoc2/FileStore-Web-Project","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YJDoc2%2FFileStore-Web-Project","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YJDoc2%2FFileStore-Web-Project/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YJDoc2%2FFileStore-Web-Project/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YJDoc2%2FFileStore-Web-Project/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/YJDoc2","download_url":"https://codeload.github.com/YJDoc2/FileStore-Web-Project/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239693250,"owners_count":19681621,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["express-js","file-sharing","file-storage","mongodb","nodejs","reactjs"],"created_at":"2024-10-13T18:56:36.297Z","updated_at":"2025-12-18T07:30:19.159Z","avatar_url":"https://github.com/YJDoc2.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# FileStore\n\n\u003chr\u003e\n\u003ch4\u003e\n    FileStore is a cloud file storing and sharing platform. It uses\n    Atlas MongoDB to store and Share Files.\n\u003c/h4\u003e\n\u003ch3\u003e\n    This is a small scale project done using ExpressJs Backend,\n    ReactJs frontend Mongoose ODM,Bootstrap Css\n\u003c/h3\u003e\n\u003ch5\u003e\n    Files can be stored in two ways : in\n    Personal Account, Which can be accessed only by the user\n    uploading it, and in Collections, which can be Shared and viewed\n    by others.\n\u003c/h5\u003e\n\u003ch5\u003e\n    A single User can have 20MB of files in private , and any\n    collection can have Maximum of 20MB of files in it.\n\u003c/h5\u003e\n\n\u003ch5\u003e\n    There are still many bugs and feature updates possible. Few of\n    them are :\n\u003cbr /\u003e\n\n\u003ch5\u003e\n    \u003cul\u003e\n        \u003cli\u003e\n            The File upload does not clear itself after uploading\n            files, even though there are no Files still assosiated\n            with it .\n        \u003c/li\u003e\n        \u003cbr /\u003e\n        \u003cli\u003e\n            The Collections are static, as in once created and\n            uploaded, files cannot be added or removed from\n            them.This was not done as the collection files are\n            showed on same route for all viewers, logged in as well\n            as not. The logic to check whether a collection belongs\n            to current logged in user , so only creater can have\n            update rights was becoming complecated.\n        \u003c/li\u003e\n        \u003cbr /\u003e\n        \u003cli\u003e\n            The npm package 'react-file-viewer' used to display some\n            file types does not scale the pages of pdf well, which\n            is an internal issue of package.\n        \u003c/li\u003e\n        \u003cbr /\u003e\n        \u003cli\u003e\n            The GridFS-Stream package used in the backend uses\n            outdated drivers,and thus does not support some updated\n            methods of mongoDB. A possible solution would be to\n            change the package used or create a custom interface\n            over MongoDB Grid interface.\n        \u003c/li\u003e\n        \u003cbr /\u003e\n        \u003cli\u003e\n            The Backend cannot currently limit incoming files in\n            uploading other than the size less than 20MB. Thus a\n            user may extend the allowed space by using REST clients\n            such as Postman to upload files. This may be stopped\n            using cors. Currently the file size per user is checked\n            and handled by frontend before upload.\n        \u003c/li\u003e\n    \u003c/ul\u003e\n\u003c/h5\u003e\n\n## Usage\n\nRun npm run build to compile frontend, move those files to backend folder and then start the server.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyjdoc2%2Ffilestore-web-project","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyjdoc2%2Ffilestore-web-project","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyjdoc2%2Ffilestore-web-project/lists"}