{"id":17132683,"url":"https://github.com/nicolassiver/nodebb-widget-ns-birthdays","last_synced_at":"2025-04-13T07:56:01.705Z","repository":{"id":3108520,"uuid":"48465282","full_name":"NicolasSiver/nodebb-widget-ns-birthdays","owner":"NicolasSiver","description":"Efficient widget to output all today's birthdays of community members.","archived":false,"fork":false,"pushed_at":"2022-03-10T23:52:02.000Z","size":36,"stargazers_count":4,"open_issues_count":3,"forks_count":5,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-13T07:55:54.556Z","etag":null,"topics":["birthdays","nodebb","nodebb-widget","widget"],"latest_commit_sha":null,"homepage":null,"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/NicolasSiver.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"github":"NicolasSiver","patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null}},"created_at":"2015-12-23T02:47:11.000Z","updated_at":"2019-12-06T03:06:36.000Z","dependencies_parsed_at":"2022-08-06T13:15:30.981Z","dependency_job_id":null,"html_url":"https://github.com/NicolasSiver/nodebb-widget-ns-birthdays","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/NicolasSiver%2Fnodebb-widget-ns-birthdays","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NicolasSiver%2Fnodebb-widget-ns-birthdays/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NicolasSiver%2Fnodebb-widget-ns-birthdays/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NicolasSiver%2Fnodebb-widget-ns-birthdays/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NicolasSiver","download_url":"https://codeload.github.com/NicolasSiver/nodebb-widget-ns-birthdays/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248681490,"owners_count":21144700,"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":["birthdays","nodebb","nodebb-widget","widget"],"created_at":"2024-10-14T19:27:50.411Z","updated_at":"2025-04-13T07:56:01.683Z","avatar_url":"https://github.com/NicolasSiver.png","language":"JavaScript","funding_links":["https://github.com/sponsors/NicolasSiver"],"categories":[],"sub_categories":[],"readme":"# NodeBB Widget: Birthdays\n\nEfficient widget to output all today's birthdays of community members.\n\n## Table of Contents\n\n![Version](https://img.shields.io/npm/v/nodebb-widget-ns-birthdays.svg)\n![Dependencies](https://david-dm.org/NicolasSiver/nodebb-widget-ns-birthdays.svg)\n![Code Climate](https://img.shields.io/codeclimate/github/NicolasSiver/nodebb-widget-ns-birthdays.svg)\n![Travis](https://travis-ci.org/NicolasSiver/nodebb-widget-ns-birthdays.svg?branch=master)\n\n\u003c!-- START doctoc generated TOC please keep comment here to allow auto update --\u003e\n\u003c!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --\u003e\n \n\n- [Customization](#customization)\n- [Screenshots](#screenshots)\n- [How does it work?](#how-does-it-work)\n- [Future ideas for improvement](#future-ideas-for-improvement)\n\n\u003c!-- END doctoc generated TOC please keep comment here to allow auto update --\u003e\n\n## Customization\n\nYou could change styles for these classes:\n\n- `.birthdays .birthday-item`, responsible for line in the list\n- `.birthdays .birthday-name`, responsible for the user's name\n- `.birthdays .birthday-age`, responsible for the user's age (Also age could be disabled in widget settings)\n\nIf you want change icon style, refer to `.fa` class.\n\n## Screenshots\n\n![Widget Preview](screenshot.png)\n\n## How does it work?\n\n1. At start, job will be triggered to check all users that have birthday today. It's an async process. By design it will take some time.\n2. Every day at midnight (Server Time), job to find today's birthdays is fired\n3. Widget returns birthdays that are stored in memory, It's fast and efficient.\n\nOptimisations:\n\n- to store today's birthdays in memory\n- to check for birthdays only once per day\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnicolassiver%2Fnodebb-widget-ns-birthdays","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnicolassiver%2Fnodebb-widget-ns-birthdays","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnicolassiver%2Fnodebb-widget-ns-birthdays/lists"}