{"id":19705294,"url":"https://github.com/filipsys/macreact","last_synced_at":"2026-04-14T10:33:14.376Z","repository":{"id":252411003,"uuid":"840360203","full_name":"Filipsys/macreact","owner":"Filipsys","description":"💻 Cloning macOS look in React cause I'm bored","archived":false,"fork":false,"pushed_at":"2025-05-22T21:54:14.000Z","size":36109,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-03-05T11:21:29.304Z","etag":null,"topics":["bun","react","tailwindcss","typescript","vitejs"],"latest_commit_sha":null,"homepage":"https://macreact.vercel.app","language":"TypeScript","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/Filipsys.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}},"created_at":"2024-08-09T14:25:44.000Z","updated_at":"2025-05-22T21:54:17.000Z","dependencies_parsed_at":"2024-08-22T22:37:41.967Z","dependency_job_id":"acc6174d-f009-4f3f-aac2-c5134e776adc","html_url":"https://github.com/Filipsys/macreact","commit_stats":null,"previous_names":["filipsys/macreact"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Filipsys/macreact","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Filipsys%2Fmacreact","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Filipsys%2Fmacreact/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Filipsys%2Fmacreact/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Filipsys%2Fmacreact/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Filipsys","download_url":"https://codeload.github.com/Filipsys/macreact/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Filipsys%2Fmacreact/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31793215,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-14T02:24:21.117Z","status":"ssl_error","status_checked_at":"2026-04-14T02:24:20.627Z","response_time":153,"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":["bun","react","tailwindcss","typescript","vitejs"],"created_at":"2024-11-11T21:27:23.388Z","updated_at":"2026-04-14T10:33:14.362Z","avatar_url":"https://github.com/Filipsys.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"## TODO tasks\n\n### High priority\n\n- [x] Add app closing and hiding functionality to `WindowControl.tsx` component (most likely using `useContext()`).\n- [x] Add SF Pro font.\n- [x] Important states store inside ~~local storage.~~ [Dexie](https://dexie.org), a lightweight indexedDB wrapper that seems good for my use case.\n- [x] Try adding react compiler to the project.\n- [x] Clear out linting errors from RC, mostly refs. Switch out refs for ternary operators where possible.\n- [x] Migrate to Tailwind v4 (Shouldn't be that hard).\n\n### Medium priority\n\n- [ ] Fix and optimise window dragging.\n- [x] Add [React Scan](https://github.com/aidenybai/react-scan) to website to improve debugging.\n- [ ] Add logic and styling to the Safari search bar.\n- [ ] Fix bottom apps navbar popup styling.\n- [ ] Fix top navbar background colours.\n- [x] Add a widget grid system.\n- [x] Make an option for adding widgets.\n- [x] Widgets select window.\n- [ ] Context menu for widgets.\n- [x] Make top taskbar change upon app focus.\n- [x] Fix top taskbar tabs active pseudoclass styling.\n- [ ] Add context menus to top taskbar tabs.\n- [ ] Fix dynamically added tailwind classes.\n- [ ] Create a battery widget using the battery API.\n- [x] Make only one context menu open on the screen. (Currently only works by clicking off, on the element it was instanciated on)\n- [x] Add a feature for automatic page load in prod.\n- [x] Migrate React Scan to a dev dependency or disable it in production.\n- [x] Implement the [Fullscreen API](https://developer.mozilla.org/en-US/docs/Web/API/Fullscreen_API) to start the website in fullscreen.\n- [x] Disable website on Firefox due to a couple of features not available, making the experience worse.\n- [ ] Implement the [Keyboard API](https://developer.mozilla.org/en-US/docs/Web/API/Keyboard_API) to create custom keybinds for the website including many like `cmd + h` for hiding the window, `cmd + w` for closing the window, `cmd + q` for quitting the window.\n- [ ] Implement the [Idle Detection API](https://developer.mozilla.org/en-US/docs/Web/API/Idle_Detection_API) to detect idle behaviour and switch on screen saver mode in the website.\n\n### Low priority\n\n- [ ] Change hardcoded wallpapers amount in `ContextMenu.tsx`.\n- [x] Add `@` aliases to project.\n- [x] Fix date day set to one ahead.\n- [x] Add date to the wallpaper date widget.\n- [x] Add disabled state to context buttons and dropdowns.\n- [ ] Add tabs feature into the safari app.\n- [x] Add mobile \u0026 touchscreen website disable feature.\n- [ ] Add icons to Safari bookmarks.\n- [x] Fix window control to show icons on div hover, not circle element hovers.\n- [x] Make current time change every minute.\n- [x] Add dropdown icon to the context menu. ~~and dropdown functionality~~\n- [x] Make a separate file with all the config data.\n- [x] Fix z-index on Safari being under widgets.\n- [x] Fix window control close icon to be more opaque.\n- [x] Fix disabled buttons in Safari changing background on hover.\n- [ ] Animate widgets window on exit.\n- [ ] Fix \"Delete widget\" button \u0026 context menu position.\n- [ ] Fix open context menu state to listen on topmost div.\n- [x] Disable context menu buttons which don't yet have a behaviour hooked to them.\n- [ ] Add battery widget icons (aka laptop and headphones icons).\n- [x] Added errors to debug command.\n- [ ] Check out the [Page Visibility API](https://developer.mozilla.org/en-US/docs/Web/API/Page_Visibility_API) which could possibly save device resources while website while hidden.\n- [ ] Fix context menu re-appearing on left click.\n- [x] Change top navbar time to re-render every minute instead of seconds.\n- [ ] Fix bottom taskbar icons animating on website open.\n- [ ] Refactor the React startup animation for a pure CSS animation.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffilipsys%2Fmacreact","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffilipsys%2Fmacreact","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffilipsys%2Fmacreact/lists"}