{"id":23364538,"url":"https://github.com/fboucher/daysuntilnextevent","last_synced_at":"2025-10-29T01:31:18.105Z","repository":{"id":268787753,"uuid":"905470279","full_name":"FBoucher/DaysUntilNextEvent","owner":"FBoucher","description":"Visual countdown for any date using an addressable LED light strip and a Raspberry Pi poco","archived":false,"fork":false,"pushed_at":"2024-12-31T14:07:28.000Z","size":814,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-10T07:55:07.588Z","etag":null,"topics":["azure","bicep","csharp","micropython","raspberry-pi-pico"],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/FBoucher.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-12-18T22:29:43.000Z","updated_at":"2025-02-03T10:35:06.000Z","dependencies_parsed_at":"2024-12-18T23:27:06.349Z","dependency_job_id":"fd769830-0325-4c4a-8bac-1aecfcbd70ec","html_url":"https://github.com/FBoucher/DaysUntilNextEvent","commit_stats":null,"previous_names":["fboucher/daysuntilnextevent"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FBoucher%2FDaysUntilNextEvent","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FBoucher%2FDaysUntilNextEvent/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FBoucher%2FDaysUntilNextEvent/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FBoucher%2FDaysUntilNextEvent/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FBoucher","download_url":"https://codeload.github.com/FBoucher/DaysUntilNextEvent/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238754216,"owners_count":19524904,"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":["azure","bicep","csharp","micropython","raspberry-pi-pico"],"created_at":"2024-12-21T13:16:43.659Z","updated_at":"2025-10-29T01:31:17.753Z","avatar_url":"https://github.com/FBoucher.png","language":"HTML","readme":"# Visual Countdown Days Until Next Event\n\nInspired by [howmanysleeps](https://github.com/veebch/howmanysleeps) and [hometime](https://github.com/veebch/hometime) from [veebch](https://github.com/veebch) I wanted to create a countdown for any dates that may be important for you and didn't want to use Google calendar (it's a great idea, but I wanted to skip the API settings).\n\n![Raspberry Pi pico and the light using custom colors](medias/light-and-pi.jpg)\n\n## What it is\n\nThis project is composed of two parts:\n- Python code for your Raspberry Pi\n- .NET website to update configuration. This site let you configure:\n  - the important date\n  - use 2 custom colors or random ones\n  - the RGB value for the custom colors \n\n![screenshot of the configuration website](medias/blazor-website.png)\n\n## What do you need\n\n- [Raspberry Pi Pico](https://www.raspberrypi.com/products/raspberry-pi-pico/)\n- [Azure subscription](portal.azure.com)\n- BTF-LIGHTING XGB1338(WS2812B) LED Strip DC5V with Individual Addressable LED\n- [Azure Developer CLI (azd)](https://learn.microsoft.com/azure/developer/azure-developer-cli)\n\n## How to deploy the configuration website\n\nAfter cloning this repo. From the folder `src/NextEvent/`, use the Azure developer CLI type the initialization command:\n\n```bash\nazd init\n```\n\nEnter a meanfull name as it will become the name of your resource group in Azure. To deploy use the deployment command:\n\n```bash\nazd up\n```\n\nYou will be asked to specify the Azure subscription and the location. After a few minutes everything should be deployed. Click the URL from the output in the terminal, or retrieve it from the Azure Portal.\n\n## How to setup the Raspberry Pi Pico\n\nYou need to edit the file `config.py`.\n\n- Add the information about your WIFI \n\u003c!-- - Update the URL where the settings are saved. That URL is available from the configuration website you just deployed. You can also retreive it from the Azure portal in the Azure storage blade --\u003e\n- Update the number of lights your light strip have.\n\nYou can use [Thonny](https://thonny.org/) to copy the python code to the device. You need to copy the `main.py` and `config.py`.\n\n## How it works\n\n- The website creates a JSON file and saves it in a publicly accessible Azure storage.\n- When the Pi is powers-on, it will:\n  - Turn green one by one all the lights of the strip\n  - Change a few time the color of the entire light strip, then turn it off\n  - Try to connect to the Wi-Fi\n  - Retrieve the timezone, current date, and retrieve the settings from the JSON file\n  - If the important date is in 24 days or less the countdown will be display using random colors or the colors you specified.\n  - If the date is past the light strip will be lit using the bread effect with a color of the day (it's random once a day)\n\n\n## Little extra\n\n- The website is deployed in Azure Container App with a minimum scalling to zero to save on cost. That may cause and extra delay for loading the site the first time you try to change the settings. It will work just fine and will turn back to \"dormant\" after a little while.\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffboucher%2Fdaysuntilnextevent","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffboucher%2Fdaysuntilnextevent","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffboucher%2Fdaysuntilnextevent/lists"}