{"id":27948423,"url":"https://github.com/twilio-labs/sample-appointment-reminders-node","last_synced_at":"2026-03-03T16:44:33.336Z","repository":{"id":39180571,"uuid":"222555469","full_name":"twilio-labs/sample-appointment-reminders-node","owner":"twilio-labs","description":"Send automatic reminders about scheduled events using Node.js and Twilio SMS","archived":false,"fork":false,"pushed_at":"2024-12-06T17:10:20.000Z","size":1357,"stargazers_count":18,"open_issues_count":66,"forks_count":15,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-05-07T14:58:23.167Z","etag":null,"topics":["appointment-reminders","code-exchange","nodejs","twilio","twilio-sample-apps"],"latest_commit_sha":null,"homepage":"https://www.twilio.com/","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/twilio-labs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-11-18T22:17:37.000Z","updated_at":"2024-12-07T19:36:37.000Z","dependencies_parsed_at":"2023-02-14T13:01:02.460Z","dependency_job_id":null,"html_url":"https://github.com/twilio-labs/sample-appointment-reminders-node","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/twilio-labs%2Fsample-appointment-reminders-node","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/twilio-labs%2Fsample-appointment-reminders-node/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/twilio-labs%2Fsample-appointment-reminders-node/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/twilio-labs%2Fsample-appointment-reminders-node/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/twilio-labs","download_url":"https://codeload.github.com/twilio-labs/sample-appointment-reminders-node/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252902627,"owners_count":21822258,"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":["appointment-reminders","code-exchange","nodejs","twilio","twilio-sample-apps"],"created_at":"2025-05-07T14:58:27.948Z","updated_at":"2026-03-03T16:44:28.305Z","avatar_url":"https://github.com/twilio-labs.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ca  href=\"https://www.twilio.com\"\u003e\n\u003cimg  src=\"https://static0.twilio.com/marketing/bundles/marketing/img/logos/wordmark-red.svg\"  alt=\"Twilio\"  width=\"250\"  /\u003e\n\u003c/a\u003e\n \n# Appointment Reminders powered by Twilio\n\n[![Actions Status](https://github.com/twilio-labs/sample-appointment-reminders-node/workflows/Node%20CI/badge.svg)](https://github.com/twilio-labs/sample-appointment-reminders-node/actions)\n\n## About\n\nAppointment reminders allow you to automate the process of reaching out to your customers in advance for an upcoming appointment. In this sample, you'll learn how to use Twilio to create automatic appointment reminders for your business users. Use appointment reminders to reduce no-shows and ensure customers have everything they need in advance of an appointment. Whether you're a dentist, doctor, cable company, or car repair shop, you can use automated appointment reminders to save time and money.\n\nThis sample includes the code required to implement an appointment reminder web application and scheduling job.\n\n\u003c!--\nImplementations in o\u003c!--\nther languages:\n\n| .net | java | python | php |\n| :--- | :--- | :----- | :-- |\n\n--\u003e\n\n### How it works\n\nThis application shows how appointment reminders with [Twilio](https://www.twilio.com) can work. It will set up a barebones web application that allows you to create appointments that are being stored in a database.\n\nThe application has a background scheduled function running every minute checking if it has to send out any notifications. If it has to send out a notification it will send out an SMS using [Twilio Programmable SMS](https://www.twilio.com/sms) to the phone number stored with the respective appointment.\n\n\u003c!--\n**TODO: UML Diagram**\n\nWe can render UML diagrams using [Mermaid](https://mermaidjs.github.io/).\n\n\n**TODO: Describe how it works**\n--\u003e\n\n## Features\n\n- Receive notifications using [Programmable SMS](\u003c[https://www.twilio.com/sms](https://www.twilio.com/sms)\u003e) .\n- User interface to create reminders.\n- Small JSON database using [lowdb](\u003c[https://github.com/typicode/lowdb](https://github.com/typicode/lowdb)\u003e).\n- Execute reminders on a schedule using [node-cron](https://github.com/kelektiv/node-cron).\n\n## Set up\n\n### Requirements\n\n- [Node.js](https://nodejs.org/)\n- A Twilio account - [sign up](https://www.twilio.com/try-twilio)\n\n### Twilio Account Settings\n\nThis application should give you a ready-made starting point for writing your\nown appointment reminder application. Before we begin, we need to collect\nall the config values we need to run the application:\n\n| Config\u0026nbsp;Value | Description                                                                                                                                                  |\n| :---------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| Account\u0026nbsp;Sid  | Your primary Twilio account identifier - find this [in the Console](https://www.twilio.com/console).                                                         |\n| Auth\u0026nbsp;Token   | Used to authenticate - [just like the above, you'll find this here](https://www.twilio.com/console).                                                         |\n| Phone\u0026nbsp;number | A Twilio phone number in [E.164 format](https://en.wikipedia.org/wiki/E.164) - you can [get one here](https://www.twilio.com/console/phone-numbers/incoming) |\n\n### Local development\n\nAfter the above requirements have been met:\n\n1. Clone this repository and `cd` into it\n\n```bash\ngit clone git@github.com:twilio-labs/sample-appointment-reminders-node.git\ncd sample-appointment-reminders-node\n```\n\n2. Install dependencies\n\n```bash\nnpm install\n```\n\n3. Set your environment variables\n\n```bash\nnpm run setup\n```\n\nSee [Twilio Account Settings](#twilio-account-settings) to locate the necessary environment variables.\n\n4. Run the application\n\n```bash\nnpm start\n```\n\nAlternatively, you can use this command to start the server in development mode. It will reload whenever you change any files.\n\n```bash\nnpm run dev\n```\n\n5. Navigate to [http://localhost:3000](http://localhost:3000)\n\nThat's it!\n\n### Tests\n\nYou can run the tests locally by typing:\n\n```bash\nnpm test\n```\n\n### Cloud deployment\n\nAdditionally to trying out this application locally, you can deploy it to a variety of host services. Here is a small selection of them.\n\nPlease be aware that some of these might charge you for the usage or might make the source code for this application visible to the public. When in doubt research the respective hosting service first.\n\n| Service                           |                                                                                                                                                                                                                                      |\n| :-------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| [Heroku](https://www.heroku.com/) | [![Deploy](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy)                                                                                                                                                  |\n| [Glitch](https://glitch.com)      | [![Remix on Glitch](https://cdn.glitch.com/2703baf2-b643-4da7-ab91-7ee2a2d00b5b%2Fremix-button.svg)](https://glitch.com/edit/#!/remix/clone-from-repo?REPO_URL=https://github.com/twilio-labs/sample-appointment-reminders-node.git) |\n| [Zeit](https://zeit.co/)          | [![Deploy with ZEIT Now](https://zeit.co/button)](https://zeit.co/new/project?template=https://github.com/twilio-labs/sample-appointment-reminders-node/tree/master)                                                                 |\n\n## Resources\n\n- [Appointment reminders tutorial](https://www.twilio.com/docs/tutorials/walkthrough/appointment-reminders/node/express)\n- [Build appointment reminders in Studio (Video)](https://www.youtube.com/watch?v=vl0FbbZBADQ)\n- [Appointment reminders glossary](https://www.twilio.com/docs/glossary/appointment-reminders)\n\n## Contributing\n\nThis template is open source and welcomes contributions. All contributions are subject to our [Code of Conduct](https://github.com/twilio-labs/.github/blob/master/CODE_OF_CONDUCT.md).\n\n[Visit the project on GitHub](https://github.com/twilio-labs/sample-appointment-reminders-node)\n\n## License\n\n[MIT](http://www.opensource.org/licenses/mit-license.html)\n\n## Disclaimer\n\nNo warranty expressed or implied. Software is as is.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftwilio-labs%2Fsample-appointment-reminders-node","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftwilio-labs%2Fsample-appointment-reminders-node","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftwilio-labs%2Fsample-appointment-reminders-node/lists"}