{"id":16866577,"url":"https://github.com/ffes/dropbox-public-folder-emulator","last_synced_at":"2026-04-24T12:32:32.849Z","repository":{"id":151298231,"uuid":"90725819","full_name":"ffes/dropbox-public-folder-emulator","owner":"ffes","description":"Dropbox Public Folder Emulator is an emulator that mimics the old \"Public\" folder that was retired by Dropbox","archived":false,"fork":false,"pushed_at":"2017-11-29T15:44:18.000Z","size":5,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-06-10T08:40:21.497Z","etag":null,"topics":["dropbox","dropbox-api","public-folder"],"latest_commit_sha":null,"homepage":"","language":"Python","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/ffes.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-05-09T09:10:48.000Z","updated_at":"2018-01-04T14:48:26.000Z","dependencies_parsed_at":"2024-03-10T08:00:37.746Z","dependency_job_id":null,"html_url":"https://github.com/ffes/dropbox-public-folder-emulator","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ffes/dropbox-public-folder-emulator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ffes%2Fdropbox-public-folder-emulator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ffes%2Fdropbox-public-folder-emulator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ffes%2Fdropbox-public-folder-emulator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ffes%2Fdropbox-public-folder-emulator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ffes","download_url":"https://codeload.github.com/ffes/dropbox-public-folder-emulator/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ffes%2Fdropbox-public-folder-emulator/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32223933,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-24T10:26:35.452Z","status":"ssl_error","status_checked_at":"2026-04-24T10:25:27.643Z","response_time":64,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["dropbox","dropbox-api","public-folder"],"created_at":"2024-10-13T14:51:04.384Z","updated_at":"2026-04-24T12:32:32.825Z","avatar_url":"https://github.com/ffes.png","language":"Python","readme":"# Dropbox Public Folder Emulator #\n\nDropbox Public Folder Emulator is an emulator that mimics the old \"Public\" \nfolder that was retired by Dropbox.\n\n## Dropbox Public Folder ##\n\n### A bit of history ###\n\nIn previous times every account had a folder named \"Public\". All the content \nin this folder was automatically shared to everybody on the Internet if you \nknew the URL.\n\nFor accounts created after October 2012 this feature was not available anymore \nand in March 2017 it was completely removed from Dropbox.\n\n### How I used the public folder ###\n\nI used this feature to host my downloads. It was a simple redirect in my \nnginx configuration files. I manually created the download links that I put \non my website and give to people (via email). Now that the feature is gone, \nI needed a replacement.\n\nInspired by https://github.com/andreafabrizi/Dropbox-Uploader I created \nthis Python project (from scratch) that I run on my site to emulate the public \nfolder by querying the Dropbox-API.\n\n## Overview ##\n\nThis script has to run on your own webserver, in my case behind nginx. \nIt can probably run on any webserver or cloud service, but I haven't tested \nthat at all.\n\nSetup the OAuth authentication and select a directory where all the \ndownloadable files live, defaults to `/Apps/PublicFolderEmulator`.\n\nYou manually create a URL for the file to download, like: \nhttp://downloads.example.com/dir/file.ext\n\nThis URL/request is parsed by the Python script and the full filename is \ngiven to the Dropbox-API. The API returns the URL of the downloadable file.\n\n`/Apps/PublicFolderEmulator/dir/file.ext` will be translated to https://www.dropbox.com/s/Som3R4ndomH4sh/file.ext?dl=1\n\nThis is new URL given to nginx that return a HTTP status 302 with this new URL.\n\n## Installation ##\n\n### Webserver ###\n\nMake sure Python 3 is installed.\n\n```bash\nsudo apt install python3\n```\n\nIn `/opt` clone the git repository.\n\n```\ngit clone https://github.com/ffes/dropbox-public-folder-emulator.git\n```\n\nIn `/etc/nginx/XXX.conf` add the following lines:\n\n```\n```\n\n### Authenticate on Dropbox.com ###\n\nTo setup OAuth you need to do the next steps:\n\n* Copy `conf_sample.py` to `conf.py`. You will need to store the OAuth token in that file.\n* Go to https://www.dropbox.com/developers/apps and log in with your account.\n* Click on the **Create App** button and then select **Dropbox API app**.\n* Now go on with the configuration and choose **App folder**.\n* Enter the **App Name** that you prefer (e.g. `PublicFolderEmulator`).\n* Accept the terms and click on the **Create App** button.\n* When your new App is successfully created, please click on the Generate button \n  under the **Generated access token** section, then copy and paste the new access token \n  in `conf.py`.\n* There is no need to change the App status from `Development` to `Production` \n  because you (aka your webserver) will the only user.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fffes%2Fdropbox-public-folder-emulator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fffes%2Fdropbox-public-folder-emulator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fffes%2Fdropbox-public-folder-emulator/lists"}