{"id":48130473,"url":"https://github.com/rubenvieira/meeting-timer","last_synced_at":"2026-04-04T16:37:32.721Z","repository":{"id":342193133,"uuid":"1021093624","full_name":"rubenvieira/meeting-timer","owner":"rubenvieira","description":"A modern, feature-rich meeting timer built with React, Vite, Tailwind CSS, and shadcn/ui. Features countdowns, preset timers, history, timezone support, and dark mode.","archived":false,"fork":false,"pushed_at":"2026-03-20T05:59:26.000Z","size":319,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-20T19:52:43.914Z","etag":null,"topics":["lovable","meeting-timer","productivity","react","shadcn-ui","tailwindcss","vite"],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","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/rubenvieira.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-07-16T21:50:56.000Z","updated_at":"2026-03-20T05:59:30.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/rubenvieira/meeting-timer","commit_stats":null,"previous_names":["rubenvieira/meeting-timer"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rubenvieira/meeting-timer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubenvieira%2Fmeeting-timer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubenvieira%2Fmeeting-timer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubenvieira%2Fmeeting-timer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubenvieira%2Fmeeting-timer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubenvieira","download_url":"https://codeload.github.com/rubenvieira/meeting-timer/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubenvieira%2Fmeeting-timer/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31405706,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-04T10:20:44.708Z","status":"ssl_error","status_checked_at":"2026-04-04T10:20:06.846Z","response_time":60,"last_error":"SSL_read: 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":["lovable","meeting-timer","productivity","react","shadcn-ui","tailwindcss","vite"],"created_at":"2026-04-04T16:37:32.301Z","updated_at":"2026-04-04T16:37:32.620Z","avatar_url":"https://github.com/rubenvieira.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ⏱️ Meeting Timer\r\n\r\n\u003cdiv align=\"center\"\u003e\r\n  \u003cimg src=\"https://img.shields.io/badge/react-%2320232a.svg?style=for-the-badge\u0026logo=react\u0026logoColor=%2361DAFB\" alt=\"React\" /\u003e\r\n  \u003cimg src=\"https://img.shields.io/badge/typescript-%23007ACC.svg?style=for-the-badge\u0026logo=typescript\u0026logoColor=white\" alt=\"TypeScript\" /\u003e\r\n  \u003cimg src=\"https://img.shields.io/badge/vite-%23646CFF.svg?style=for-the-badge\u0026logo=vite\u0026logoColor=white\" alt=\"Vite\" /\u003e\r\n  \u003cimg src=\"https://img.shields.io/badge/tailwindcss-%2338B2AC.svg?style=for-the-badge\u0026logo=tailwind-css\u0026logoColor=white\" alt=\"TailwindCSS\" /\u003e\r\n  \u003cimg src=\"https://img.shields.io/badge/react--router-%23CA4245.svg?style=for-the-badge\u0026logo=react-router\u0026logoColor=white\" alt=\"React Router\" /\u003e\r\n  \u003cimg src=\"https://img.shields.io/badge/React%20Query-FF4154?style=for-the-badge\u0026logo=React%20Query\u0026logoColor=white\" alt=\"React Query\" /\u003e\r\n  \u003cimg src=\"https://img.shields.io/badge/React%20Hook%20Form-%23EC5990.svg?style=for-the-badge\u0026logo=reacthookform\u0026logoColor=white\" alt=\"React Hook Form\" /\u003e\r\n  \u003cp\u003e\u003cem\u003eA modern, feature-rich meeting timer designed to keep your team on track. Built with React, Vite, Tailwind CSS, and shadcn/ui.\u003c/em\u003e\u003c/p\u003e\r\n\u003c/div\u003e\r\n\r\n## ✨ Features\r\n\r\n- **⏱️ Precision Countdowns**: Custom timer setup for any meeting length to strictly timebox discussions and syncs.\r\n- **⚡ Preset Timers**: A quick-start grid for common meeting formats (e.g., Standups, Pomodoros, 1:1s, brain-storming sessions).\r\n- **🕰️ Timezone Support**: Seamlessly coordinate and select timezones when working across different global teams, backed by `date-fns` and `date-fns-tz`.\r\n- **📜 Timer \u0026 Analytics History**: Automatically tracks past meeting durations, maintains session logs, and provides visual charts using `recharts`.\r\n- **🌗 Dark \u0026 Light Themes**: Full system and user theme support featuring a modern toggle, supported by `next-themes`.\r\n- **💅 Beautiful UI**: Clean, engaging, glassmorphic aesthetics. Built using robust native components from `shadcn/ui` and Radix Primitives.\r\n- **🔔 Notifications**: Beautiful, accessible, and user-friendly toast alerts powered by `sonner`.\r\n- **✍️ Robust Input \u0026 Form Handling**: Highly performant forms built with `react-hook-form` and schema-validated by `zod`.\r\n\r\n## 🚀 Getting Started\r\n\r\n### Prerequisites\r\n\r\nYou need Node.js \u0026 npm installed - [Install with nvm](https://github.com/nvm-sh/nvm#installing-and-updating)\r\n\r\n### Installation\r\n\r\n1. **Clone the repository:**\r\n```sh\r\ngit clone https://github.com/rubenvieira/meeting-timer.git\r\ncd meeting-timer\r\n```\r\n\r\n2. **Install the dependencies:**\r\n```sh\r\nnpm install\r\n```\r\n\r\n3. **Start the development server:**\r\n```sh\r\nnpm run dev\r\n```\r\n\r\nVisit the local development URL (usually `http://localhost:5173`) in your browser to see the app running.\r\n\r\n## 🛠️ Detailed Tech Stack\r\n\r\n### Core Technologies\r\n- **[Vite](https://vitejs.dev/)** - Next-Generation Frontend Tooling\r\n- **[React 18](https://reactjs.org/)** - A JavaScript library for building user interfaces\r\n- **[TypeScript](https://www.typescriptlang.org/)** - Typed JavaScript at Any Scale\r\n- **[Tailwind CSS](https://tailwindcss.com/)** - Rapidly build modern websites strictly via utility classes\r\n\r\n### State Management \u0026 Data Fetching\r\n- **[TanStack Query (React Query v5)](https://tanstack.com/query/latest)** - Powerful asynchronous state management, caching, and data fetching\r\n\r\n### UI \u0026 Component Libraries\r\n- **[shadcn/ui](https://ui.shadcn.com/)** - Accessible and customizable components built with Radix and Tailwind\r\n- **[Radix UI](https://www.radix-ui.com/)** - Unstyled, accessible components for building high‑quality design systems\r\n- **[Lucide React](https://lucide.dev/)** - Beautiful \u0026 consistent icon toolkit\r\n- **[Recharts](https://recharts.org/)** - A composable charting library built on React components\r\n- **[Sonner](https://sonner.emilkowal.ski/)** - An opinionated, elegant toast component for React\r\n\r\n### Form Management \u0026 Routing\r\n- **[React Hook Form](https://react-hook-form.com/)** - Performant, flexible, and extensible forms with easy-to-use validation\r\n- **[Zod](https://zod.dev/)** - TypeScript-first schema validation with static type inference\r\n- **[React Router DOM](https://reactrouter.com/)** - Client-side routing library\r\n\r\n## 🤝 Contributing\r\n\r\nContributions, issues, and feature requests are welcome! Feel free to check the issues page.\r\n\r\n## 📄 License\r\n\r\nThis project is licensed under the MIT License.\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frubenvieira%2Fmeeting-timer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frubenvieira%2Fmeeting-timer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frubenvieira%2Fmeeting-timer/lists"}