This repo contains the source for the PublishTo.Dev project.
PublishTo.Dev is a simple utility that enables authors on the dev.to platform to schedule post publishing. Authors draft a post on DevTo, use the PublishTo.Dev browser extension to schedule the post, and then PublishTo.Dev makes the post live on the selected date and time using Azure cloud functions.
Any dev.to author can use this service to schedule post publishing using the following steps:
To use the unpacked browser extension, simply follow these steps:
publishtodev-extension
folder in this repo$ npm install
$ npm run build
dist
chrome://extensions
edge://extensions
dist
folder created previouslyThere are two major components to this repo:
On the backend, this project leans heavily on Azure Durable Functions and Azure Table Storage.
When a request is made to the primary HTTP endpoint, a new durable function orchestrator is kicked-off. This orchestrator schedules the publishing code to run at the user specified time and ensure details about the schedule are saved to storage.
Visit the functions
sub folder for more details.
On the frontend, this project uses the Chrome browser extension format to create a browser plugin that grabs an article ID from the DevTo website and sends a request to the serverless function endpoint for publishing. The Chrome browser extension format works in most Chromium-based browsers, including Microsoft Edge (Preview) on Windows and Mac.
Visit the publishtodev-extension
folder for more details.
Open an issue or submit a PR.
All code used in this project is MIT licensed.