abue-ammar/tinycastPublic

Tinycast — a tiny, fully native macOS launcher, hotkeys, and clipboard history.

AI summary: A highly efficient, fully native macOS launcher optimized for low memory usage.

Stars
8.9K
+75 today
Forks
544
Watchers
10
Open issues
37
Open PRs
7
Contributors
~75
Commits
883
Branches
27

SwiftOtherCreated Jun 29, 2026Last push 4d agoLatest release v0.12.1+185 stars this week+1.1K this month

Quick answers

What is tinycast?
A highly efficient, fully native macOS launcher optimized for low memory usage.
What does tinycast do?
Tinycast is a fully native macOS launcher designed to be incredibly resource-efficient. It provides quick access to frequently used applications and tools via a single hotkey. The application maintains a minimal footprint, consuming under 100 MB of RAM while running in the background. Built specifically for macOS 26 or later, it leverages native APIs for maximum performance and responsiveness. This makes it an ideal alternative to heavier launcher tools for users who prioritize system efficiency.
Who is tinycast for?
Mac power users and developers seeking a lightning-fast, minimal resource alternative to traditional application launchers. Perfect for those running modern macOS who want immediate access to tools without system bloat.
How popular is tinycast on GitHub?
abue-ammar/tinycast has 8,949 stars and 544 forks on GitHub, and gained 185 stars in the last 7 days.
What license does tinycast use?
abue-ammar/tinycast is released under the Other license.

Star history

since Sep 16, 2026
02.5K5K7.5KSep 2026Sep 2026Oct 2026Oct 2026
8.9K stars as of Oct 31, 2026. Measured daily since Sep 16, 2026; GitHub no longer exposes earlier star timestamps.

Update history

2 recorded
  • Oct 22, 2026New release v0.12.1 (previously v0.11.19).
  • Oct 14, 2026New release v0.11.19 (previously v0.11.12).

Contribution activity

commits per day, last 52 weeks
NovDecJanFebMarAprMayJunJulAugSepOctMonWedFri2025-11-02: 0 commits2025-11-03: 0 commits2025-11-04: 0 commits2025-11-05: 0 commits2025-11-06: 0 commits2025-11-07: 0 commits2025-11-08: 0 commits2025-11-09: 0 commits2025-11-10: 0 commits2025-11-11: 0 commits2025-11-12: 0 commits2025-11-13: 0 commits2025-11-14: 0 commits2025-11-15: 0 commits2025-11-16: 0 commits2025-11-17: 0 commits2025-11-18: 0 commits2025-11-19: 0 commits2025-11-20: 0 commits2025-11-21: 0 commits2025-11-22: 0 commits2025-11-23: 0 commits2025-11-24: 0 commits2025-11-25: 0 commits2025-11-26: 0 commits2025-11-27: 0 commits2025-11-28: 0 commits2025-11-29: 0 commits2025-11-30: 0 commits2025-12-01: 0 commits2025-12-02: 0 commits2025-12-03: 0 commits2025-12-04: 0 commits2025-12-05: 0 commits2025-12-06: 0 commits2025-12-07: 0 commits2025-12-08: 0 commits2025-12-09: 0 commits2025-12-10: 0 commits2025-12-11: 0 commits2025-12-12: 0 commits2025-12-13: 0 commits2025-12-14: 0 commits2025-12-15: 0 commits2025-12-16: 0 commits2025-12-17: 0 commits2025-12-18: 0 commits2025-12-19: 0 commits2025-12-20: 0 commits2025-12-21: 0 commits2025-12-22: 0 commits2025-12-23: 0 commits2025-12-24: 0 commits2025-12-25: 0 commits2025-12-26: 0 commits2025-12-27: 0 commits2025-12-28: 0 commits2025-12-29: 0 commits2025-12-30: 0 commits2025-12-31: 0 commits2026-01-01: 0 commits2026-01-02: 0 commits2026-01-03: 0 commits2026-01-04: 0 commits2026-01-05: 0 commits2026-01-06: 0 commits2026-01-07: 0 commits2026-01-08: 0 commits2026-01-09: 0 commits2026-01-10: 0 commits2026-01-11: 0 commits2026-01-12: 0 commits2026-01-13: 0 commits2026-01-14: 0 commits2026-01-15: 0 commits2026-01-16: 0 commits2026-01-17: 0 commits2026-01-18: 0 commits2026-01-19: 0 commits2026-01-20: 0 commits2026-01-21: 0 commits2026-01-22: 0 commits2026-01-23: 0 commits2026-01-24: 0 commits2026-01-25: 0 commits2026-01-26: 0 commits2026-01-27: 0 commits2026-01-28: 0 commits2026-01-29: 0 commits2026-01-30: 0 commits2026-01-31: 0 commits2026-02-01: 0 commits2026-02-02: 0 commits2026-02-03: 0 commits2026-02-04: 0 commits2026-02-05: 0 commits2026-02-06: 0 commits2026-02-07: 0 commits2026-02-08: 0 commits2026-02-09: 0 commits2026-02-10: 0 commits2026-02-11: 0 commits2026-02-12: 0 commits2026-02-13: 0 commits2026-02-14: 0 commits2026-02-15: 0 commits2026-02-16: 0 commits2026-02-17: 0 commits2026-02-18: 0 commits2026-02-19: 0 commits2026-02-20: 0 commits2026-02-21: 0 commits2026-02-22: 0 commits2026-02-23: 0 commits2026-02-24: 0 commits2026-02-25: 0 commits2026-02-26: 0 commits2026-02-27: 0 commits2026-02-28: 0 commits2026-03-01: 0 commits2026-03-02: 0 commits2026-03-03: 0 commits2026-03-04: 0 commits2026-03-05: 0 commits2026-03-06: 0 commits2026-03-07: 0 commits2026-03-08: 0 commits2026-03-09: 0 commits2026-03-10: 0 commits2026-03-11: 0 commits2026-03-12: 0 commits2026-03-13: 0 commits2026-03-14: 0 commits2026-03-15: 0 commits2026-03-16: 0 commits2026-03-17: 0 commits2026-03-18: 0 commits2026-03-19: 0 commits2026-03-20: 0 commits2026-03-21: 0 commits2026-03-22: 0 commits2026-03-23: 0 commits2026-03-24: 0 commits2026-03-25: 0 commits2026-03-26: 0 commits2026-03-27: 0 commits2026-03-28: 0 commits2026-03-29: 0 commits2026-03-30: 0 commits2026-03-31: 0 commits2026-04-01: 0 commits2026-04-02: 0 commits2026-04-03: 0 commits2026-04-04: 0 commits2026-04-05: 0 commits2026-04-06: 0 commits2026-04-07: 0 commits2026-04-08: 0 commits2026-04-09: 0 commits2026-04-10: 0 commits2026-04-11: 0 commits2026-04-12: 0 commits2026-04-13: 0 commits2026-04-14: 0 commits2026-04-15: 0 commits2026-04-16: 0 commits2026-04-17: 0 commits2026-04-18: 0 commits2026-04-19: 0 commits2026-04-20: 0 commits2026-04-21: 0 commits2026-04-22: 0 commits2026-04-23: 0 commits2026-04-24: 0 commits2026-04-25: 0 commits2026-04-26: 0 commits2026-04-27: 0 commits2026-04-28: 0 commits2026-04-29: 0 commits2026-04-30: 0 commits2026-05-01: 0 commits2026-05-02: 0 commits2026-05-03: 0 commits2026-05-04: 0 commits2026-05-05: 0 commits2026-05-06: 0 commits2026-05-07: 0 commits2026-05-08: 0 commits2026-05-09: 0 commits2026-05-10: 0 commits2026-05-11: 0 commits2026-05-12: 0 commits2026-05-13: 0 commits2026-05-14: 0 commits2026-05-15: 0 commits2026-05-16: 0 commits2026-05-17: 0 commits2026-05-18: 0 commits2026-05-19: 0 commits2026-05-20: 0 commits2026-05-21: 0 commits2026-05-22: 0 commits2026-05-23: 0 commits2026-05-24: 0 commits2026-05-25: 0 commits2026-05-26: 0 commits2026-05-27: 0 commits2026-05-28: 0 commits2026-05-29: 0 commits2026-05-30: 0 commits2026-05-31: 0 commits2026-06-01: 0 commits2026-06-02: 0 commits2026-06-03: 0 commits2026-06-04: 0 commits2026-06-05: 0 commits2026-06-06: 0 commits2026-06-07: 0 commits2026-06-08: 0 commits2026-06-09: 0 commits2026-06-10: 0 commits2026-06-11: 0 commits2026-06-12: 0 commits2026-06-13: 0 commits2026-06-14: 0 commits2026-06-15: 0 commits2026-06-16: 0 commits2026-06-17: 0 commits2026-06-18: 0 commits2026-06-19: 0 commits2026-06-20: 0 commits2026-06-21: 0 commits2026-06-22: 0 commits2026-06-23: 0 commits2026-06-24: 0 commits2026-06-25: 0 commits2026-06-26: 0 commits2026-06-27: 0 commits2026-06-28: 1 commit2026-06-29: 6 commits2026-06-30: 9 commits2026-07-01: 7 commits2026-07-02: 19 commits2026-07-03: 4 commits2026-07-04: 4 commits2026-07-05: 10 commits2026-07-06: 14 commits2026-07-07: 0 commits2026-07-08: 7 commits2026-07-09: 1 commit2026-07-10: 11 commits2026-07-11: 15 commits2026-07-12: 7 commits2026-07-13: 10 commits2026-07-14: 12 commits2026-07-15: 6 commits2026-07-16: 1 commit2026-07-17: 0 commits2026-07-18: 14 commits2026-07-19: 1 commit2026-07-20: 0 commits2026-07-21: 12 commits2026-07-22: 1 commit2026-07-23: 16 commits2026-07-24: 16 commits2026-07-25: 0 commits2026-07-26: 1 commit2026-07-27: 6 commits2026-07-28: 6 commits2026-07-29: 6 commits2026-07-30: 4 commits2026-07-31: 10 commits2026-08-01: 2 commits2026-08-02: 5 commits2026-08-03: 6 commits2026-08-04: 2 commits2026-08-05: 32 commits2026-08-06: 11 commits2026-08-07: 6 commits2026-08-08: 7 commits2026-08-09: 3 commits2026-08-10: 3 commits2026-08-11: 4 commits2026-08-12: 1 commit2026-08-13: 0 commits2026-08-14: 3 commits2026-08-15: 1 commit2026-08-16: 1 commit2026-08-17: 1 commit2026-08-18: 4 commits2026-08-19: 9 commits2026-08-20: 6 commits2026-08-21: 4 commits2026-08-22: 1 commit2026-08-23: 3 commits2026-08-24: 6 commits2026-08-25: 8 commits2026-08-26: 7 commits2026-08-27: 3 commits2026-08-28: 9 commits2026-08-29: 14 commits2026-08-30: 7 commits2026-08-31: 4 commits2026-09-01: 6 commits2026-09-02: 2 commits2026-09-03: 2 commits2026-09-04: 1 commit2026-09-05: 0 commits2026-09-06: 12 commits2026-09-07: 14 commits2026-09-08: 4 commits2026-09-09: 4 commits2026-09-10: 5 commits2026-09-11: 24 commits2026-09-12: 13 commits2026-09-13: 8 commits2026-09-14: 17 commits2026-09-15: 13 commits2026-09-16: 9 commits2026-09-17: 14 commits2026-09-18: 15 commits2026-09-19: 21 commits2026-09-20: 4 commits2026-09-21: 3 commits2026-09-22: 7 commits2026-09-23: 20 commits2026-09-24: 10 commits2026-09-25: 19 commits2026-09-26: 7 commits2026-09-27: 3 commits2026-09-28: 5 commits2026-09-29: 7 commits2026-09-30: 7 commits2026-10-01: 3 commits2026-10-02: 11 commits2026-10-03: 4 commits2026-10-04: 8 commits2026-10-05: 2 commits2026-10-06: 16 commits2026-10-07: 13 commits2026-10-08: 1 commit2026-10-09: 15 commits2026-10-10: 13 commits2026-10-11: 1 commit2026-10-12: 7 commits2026-10-13: 8 commits2026-10-14: 6 commits2026-10-15: 7 commits2026-10-16: 4 commits2026-10-17: 8 commits2026-10-18: 2 commits2026-10-19: 9 commits2026-10-20: 2 commits2026-10-21: 0 commits2026-10-22: 10 commits2026-10-23: 6 commits2026-10-24: 0 commits2026-10-25: 1 commit2026-10-26: 2 commits2026-10-27: 6 commits2026-10-28: 0 commits2026-10-29: 0 commits2026-10-30: 0 commits2026-10-31: 0 commits
851 commits in the last yearLessMore

Signals and awards

derived from tracked data
  • Very active

    851 commits in 52 weeks

  • Well documented

    High community health score

  • Continuous integration

    Automated checks passing

  • Repeat trending

    10 trending appearances

What tinycast does

Tinycast is a fully native macOS launcher designed to be incredibly resource-efficient. It provides quick access to frequently used applications and tools via a single hotkey. The application maintains a minimal footprint, consuming under 100 MB of RAM while running in the background. Built specifically for macOS 26 or later, it leverages native APIs for maximum performance and responsiveness. This makes it an ideal alternative to heavier launcher tools for users who prioritize system efficiency.

Mac power users and developers seeking a lightning-fast, minimal resource alternative to traditional application launchers. Perfect for those running modern macOS who want immediate access to tools without system bloat.

  • Native macOS application: built directly for the platform ensuring tight integration.
  • Single hotkey activation: provides instant access to core functionality with one keystroke.
  • Low memory footprint: operates consistently while consuming less than 100 MB of RAM.
  • Swift 6.0 codebase: utilizes modern Swift features for safety and performance.
  • Open source licensing: distributed under the AGPL-3.0 license for community inspection.

Where teams use it

Launch applications quickly

Open everyday tools instantly without navigating through menus or the Dock.

Conserve system resources

Replace resource-heavy launchers on older or memory-constrained Mac hardware.

Access daily tools

Keep the most frequently used workflows just one hotkey away throughout the day.

Customize workflows

Leverage an open-source tool to potentially adapt the launcher to specific needs.

README

main branch

Tinycast

A tiny, fully native macOS launcher. One hotkey, everything you reach for all day, under 100 MB of RAM.

Latest release Swift 6.0 macOS 26 or later License: AGPL-3.0 Join the Tinycast Discord

SwiftUI and AppKit, zero third-party dependencies, no Electron and no telemetry. It also runs real Raycast extensions, rendered as native SwiftUI. Free, open source, and staying that way.

For anything private, email [email protected].

Tinycast command palette

Features

  • App launcher — fuzzy-search and launch anything, pin favorites, see what's running, quit an app or every app at once.
  • Global hotkey — one shortcut summons the palette from anywhere.
  • Per-app hotkeys — bind a key to an app; press it to toggle (focus/hide).
  • Search Files — open files and folders from the folders you choose, through Spotlight, with no index of our own.
  • Dictionary — look a word up with the Define Word command, or define whatever you typed from the launcher's fallbacks, read from the Mac's own dictionaries.
  • Clipboard history — text and images, searchable, pasted back into the app you were using.
  • Calculator — do math, unit, live currency and crypto conversions inline, right in the palette.
  • Quicklinks — turn a URL, search, file or deeplink into a command, with placeholders for typed input, the clipboard or the date.
  • Apple Shortcuts — search and run the shortcuts you built in the Shortcuts app, with aliases and global hotkeys.
  • Snippets — reusable Markdown templates with dynamic placeholders, arguments, nested references and optional keyword expansion.
  • Custom commands — run named shell commands through fuzzy search or their own global hotkeys.
  • Window management — 34 Rectangle-style actions: halves, quarters, thirds, sizing, nudging, display moves, fullscreen and Spaces.
  • System actions — lock, sleep, restart, empty trash, toggle appearance, Bluetooth, mute, hidden files, and more.
  • Calendar and meetings — your next meeting on the empty palette and in the menu bar, one key to join it, or let it join itself.
  • Notes — an unlimited collection of plain Markdown files in one floating editor, searchable from the palette and rendered as you write.
  • Emoji picker — a searchable emoji grid, one keystroke away.
  • AI chat — use your own key or an installed AI account: ask Quick AI from the palette, or keep longer conversations in the AI Chat window, with a searchable, pinnable history. Off out of the box, like every AI feature.
  • Quick Actions — fix grammar, rewrite, translate or summarize the selected text in any app.
  • Raycast extensions — run the ones you already have natively, rendered as SwiftUI.
  • Backup and import — export your settings to a file, or import your setup from Raycast.

Install

First, add the tap:

brew trust --tap abue-ammar/tinycast   # required for third-party taps
brew tap abue-ammar/tinycast

Then run the one line that matches your Mac:

Your Mac Install
Apple silicon, macOS 26 or newer brew install --cask tinycast
Intel, macOS 26 brew install --cask tinycast-universal

Not sure which Mac you have? Apple menu → About This Mac.

  • Early builds: brew install --cask tinycast@beta installs Tinycast Beta.app beside the stable app.
  • DMG from Releases? It's self-signed, so run xattr -dr com.apple.quarantine "/Applications/Tinycast.app" once.

Building from source

See docs/development.md for the toolchain, build, packaging, release and website workflows. docs/ indexes everything else — architecture, engineering standards, the design system and one document per feature.

Support

Tinycast is free, and it stays that way. If you enjoy it, you can support it with crypto: scan a code with your wallet, or copy an address. Send only on the network named for that address. If yours isn't listed, email me.

Bitcoin address QR code
Bitcoin
Ethereum, Base and BNB Smart Chain address QR code
Ethereum, Base, BNB Smart Chain
Solana address QR code
Solana

Bitcoin

bc1qpfxtjpuhm2cm8kg4lqgu3ffjch7vcjf678arwn

Ethereum, Base and BNB Smart Chain (one address for all three)

0x22A00612bc0bf1Dc73AAC75e8De1BA4e81fF0810

Solana

4EH7JDXZxkJiahas1xgPyC1iBW9pfCVUXxVtpqvwAz6T

Prefer a card? Buy the wallpaper pack and get a Discord role.

Support Tinycast
Card payments are handled securely by Polar.sh.

License

AGPL-3.0

View on GitHub

Recent activity

commits and pull requests

Recent open issues

view all

Releases and announcements

123 total
  1. Tinycast Beta 0.12.3-beta.127v0.12.3-beta.127Oct 26, 2026pre-release642 downloads

    ## What's Changed * Resolve localized resources through the bundle's table cache by @abue-ammar in #1686 * Keep the onboarding test's palette fixture off screen by @abue-ammar in #1687 * Open the launcher on launch and report a finished update by @abue-ammar in #1688 * Add optional start and stop sounds for Dictation by @kruteev in #1690 * Open calendar events in the default calendar app by @list-jonas in #1689 * Add a Show animations toggle to General settings by @abue-ammar in #1692 * Send Apple Intelligence chats no instructions by @abue-ammar in #1693 * Use macOS dictation sounds instead of bundled chimes by @Risengan in #1698 * Add configurable compact palette shortcuts and keyboard navigation by @abue-ammar in #1701 * Improve Hyper Key press handling and recovery by @abue-ammar in #1709 * Make compact mode the default and mark off features in Compact Shortcuts by @abue-ammar in #1717 * Protect Hyper Key recovery with instance ownership by @abue-ammar in #1718 * Add a Notes menu bar item by @abue-ammar in #1719 * Add file and folder favorites by @abue-ammar in #1720 * Enlarge Compact Shortcuts row buttons and mark Remove as destructive by @abue-ammar in #1721 ## New Contribut

  2. Tinycast Beta 0.12.2-beta.125v0.12.2-beta.125Oct 22, 2026pre-release652 downloads

    ## What's Changed * Fix clipboard batch trimming and stale file previews by @abue-ammar in #1677 * Improve onboarding completion and initial language selection by @Risengan in #1671 * Clear the running dot as soon as an app quits by @abue-ammar in #1678 * Keep web OAuth state through the redirect page; update @raycast/api to 2.8.2 by @abue-ammar in #1679 * Add custom request headers to AI API connections by @abue-ammar in #1680 * Keep Volume Up/Down moving on devices that store a level off the grid by @abue-ammar in #1681 * Offer a minimized window whose subrole reads AXDialog by @isjiajia01 in #1670 * Match translation pairs against the installed locale by @HernandoR in #1665 ## New Contributors * @HernandoR made their first contribution in #1665 <!-- tinycast:install --> **Channel:** beta · **Version:** 0.12.2-beta.125 · **Bundle ID:** `com.tinycast.app.beta` Built from 3d11f47e984f10be3ade970458c0ed4575ab226d. [Full changelog](https://github.com/abue-ammar/tinycast/compare/v0.12.1-beta.123...v0.12.2-beta.125) **Recommended:** install via Homebrew — it clears the quarantine flag automatically on every install and update, so there's nothing to run by hand: ```sh brew trust --t

  3. Tinycast 0.12.1v0.12.1Oct 19, 202619.9K downloads

    ## What's Changed * Expand the Hyper Key: all modifier keys, per-keyboard remapping, diagnostics and Secure Input support by @abue-ammar in #1510 * Rework quicklink selected text and add a ⌘C selection fallback by @abue-ammar in #1507 * Decode malformed UTF-8 the way Node does by @Noel-0 in #1513 * Show what the provider said when an AI chat turn is refused by @notsoshu in #1497 * Let Bring! sign in by sending URLSearchParams as form data by @list-jonas in #1532 * Let the Dictation key (🎤) trigger Tinycast shortcuts by @list-jonas in #1523 * Support Raycast's OAuth sign-in in extensions by @abue-ammar in #1502 * Report real access and change times from fs.stat by @abue-ammar in #1533 * Search files from Tinycast's own disk index instead of Spotlight by @abue-ammar in #1537 * Let the version on the About page be selected and copied by @abue-ammar in #1544 * Let armed MCP tools run commands and read files by @abue-ammar in #1543 * Read a bare unit after / as one of it, and add fuel units by @abue-ammar in #1545 * Let model discovery ignore catalog fields it cannot read by @AllenReder in #1552 * Let any preset add a model ID its catalog leaves out by @abue-ammar in #1546 * feat(dicta

  4. Tinycast Beta 0.12.1-beta.123v0.12.1-beta.123Oct 19, 2026pre-release599 downloads

    ## What's Changed * Lock app bundles the user can't write before uninstalling by @abue-ammar in #1635 * Refine French translations, improve wording across languages and adjust text layouts by @Risengan in #1636 * Open the launcher, Notes, dialogs, Settings editors and menus with the native window bounce by @abue-ammar in #1643 * Animate the first menu after the palette closes with one open by @abue-ammar in #1644 * Edit clipboard text entries in place by @abue-ammar in #1642 * Find Apple's zh_CN and zh_TW names on any Chinese region by @abue-ammar in #1645 * Keep Command-Escape input handling off the main run loop by @abue-ammar in #1646 * Show when currency rates were updated, with a refresh button by @abue-ammar in #1648 <!-- tinycast:install --> **Channel:** beta · **Version:** 0.12.1-beta.123 · **Bundle ID:** `com.tinycast.app.beta` Built from bb4a830c15a65ae05e86798d1d20bfd8c73720a7. [Full changelog](https://github.com/abue-ammar/tinycast/compare/v0.12.0-beta.122...v0.12.1-beta.123) **Recommended:** install via Homebrew — it clears the quarantine flag automatically on every install and update, so there's nothing to run by hand: ```sh brew trust --tap abue-ammar/tinycast bre

  5. Tinycast Beta 0.12.0-beta.122v0.12.0-beta.122Oct 17, 2026pre-release550 downloads

    ## What's Changed * Fix launching duplicate application installations by @abue-ammar in #1617 * Stop capping remote Quick Action replies by selection length by @abue-ammar in #1616 * Calculate on a converted value mid-expression by @abue-ammar in #1618 * Add native localization for eight languages by @abue-ammar in #1620 * Use Full Disk Access when uninstalling, and wait for the app to quit by @abue-ammar in #1624 * Narrow File Search to home with editable defaults by @abue-ammar in #1625 * Stop extension shortcut handlers from retaining closed screens by @kosuketut in #1626 * Mirror main to GitLab by @abue-ammar in #1627 ## New Contributors * @kosuketut made their first contribution in #1626 <!-- tinycast:install --> **Channel:** beta · **Version:** 0.12.0-beta.122 · **Bundle ID:** `com.tinycast.app.beta` Built from 291996cd6c0ea783857c1667de9917b0cb273fb6. [Full changelog](https://github.com/abue-ammar/tinycast/compare/v0.11.22-beta.121...v0.12.0-beta.122) **Recommended:** install via Homebrew — it clears the quarantine flag automatically on every install and update, so there's nothing to run by hand: ```sh brew trust --tap abue-ammar/tinycast brew install --cask abue-ammar/t

Code frequency

additions and deletions
+153.5K-153.5KWeek of 2026-06-28: +12,425 linesWeek of 2026-06-28: -5,783 linesWeek of 2026-07-05: +10,107 linesWeek of 2026-07-05: -2,890 linesWeek of 2026-07-12: +7,938 linesWeek of 2026-07-12: -1,939 linesWeek of 2026-07-19: +2,999 linesWeek of 2026-07-19: -1,195 linesWeek of 2026-07-26: +18,661 linesWeek of 2026-07-26: -1,429 linesWeek of 2026-08-02: +82,495 linesWeek of 2026-08-02: -70,993 linesWeek of 2026-08-09: +23,948 linesWeek of 2026-08-09: -2,076 linesWeek of 2026-08-16: +19,098 linesWeek of 2026-08-16: -4,539 linesWeek of 2026-08-23: +27,621 linesWeek of 2026-08-23: -5,825 linesWeek of 2026-08-30: +17,257 linesWeek of 2026-08-30: -2,873 linesWeek of 2026-09-06: +33,719 linesWeek of 2026-09-06: -8,397 linesWeek of 2026-09-13: +35,051 linesWeek of 2026-09-13: -12,524 linesWeek of 2026-09-20: +26,852 linesWeek of 2026-09-20: -9,224 linesWeek of 2026-09-27: +39,331 linesWeek of 2026-09-27: -4,998 linesWeek of 2026-10-04: +12,898 linesWeek of 2026-10-04: -9,553 linesWeek of 2026-10-11: +153,493 linesWeek of 2026-10-11: -6,062 linesWeek of 2026-10-18: +8,575 linesWeek of 2026-10-18: -2,946 linesWeek of 2026-10-25: +4,325 linesWeek of 2026-10-25: -1,434 linesJun 28, 2026Oct 25, 2026
+536.8K lines added, -154.7K removed over the last year.

Commits per week

last 52 weeks
970Week of 2025-11-02: 0 commitsWeek of 2025-11-09: 0 commitsWeek of 2025-11-16: 0 commitsWeek of 2025-11-23: 0 commitsWeek of 2025-11-30: 0 commitsWeek of 2025-12-07: 0 commitsWeek of 2025-12-14: 0 commitsWeek of 2025-12-21: 0 commitsWeek of 2025-12-28: 0 commitsWeek of 2026-01-04: 0 commitsWeek of 2026-01-11: 0 commitsWeek of 2026-01-18: 0 commitsWeek of 2026-01-25: 0 commitsWeek of 2026-02-01: 0 commitsWeek of 2026-02-08: 0 commitsWeek of 2026-02-15: 0 commitsWeek of 2026-02-22: 0 commitsWeek of 2026-03-01: 0 commitsWeek of 2026-03-08: 0 commitsWeek of 2026-03-15: 0 commitsWeek of 2026-03-22: 0 commitsWeek of 2026-03-29: 0 commitsWeek of 2026-04-05: 0 commitsWeek of 2026-04-12: 0 commitsWeek of 2026-04-19: 0 commitsWeek of 2026-04-26: 0 commitsWeek of 2026-05-03: 0 commitsWeek of 2026-05-10: 0 commitsWeek of 2026-05-17: 0 commitsWeek of 2026-05-24: 0 commitsWeek of 2026-05-31: 0 commitsWeek of 2026-06-07: 0 commitsWeek of 2026-06-14: 0 commitsWeek of 2026-06-21: 0 commitsWeek of 2026-06-28: 50 commitsWeek of 2026-07-05: 58 commitsWeek of 2026-07-12: 50 commitsWeek of 2026-07-19: 46 commitsWeek of 2026-07-26: 35 commitsWeek of 2026-08-02: 69 commitsWeek of 2026-08-09: 15 commitsWeek of 2026-08-16: 26 commitsWeek of 2026-08-23: 50 commitsWeek of 2026-08-30: 22 commitsWeek of 2026-09-06: 76 commitsWeek of 2026-09-13: 97 commitsWeek of 2026-09-20: 70 commitsWeek of 2026-09-27: 40 commitsWeek of 2026-10-04: 68 commitsWeek of 2026-10-11: 41 commitsWeek of 2026-10-18: 29 commitsWeek of 2026-10-25: 9 commitsNov 2, 2025Oct 25, 2026
851 commits in the last 52 weeks.

When work happens

weekday and hour
SunMonTueWedThuFriSat036912151821Sun 0:00 — 5 commitsSun 1:00 — 15 commitsSun 2:00 — 3 commitsSun 3:00 — 2 commitsSun 4:00 — 0 commitsSun 5:00 — 1 commitsSun 6:00 — 0 commitsSun 7:00 — 0 commitsSun 8:00 — 0 commitsSun 9:00 — 2 commitsSun 10:00 — 2 commitsSun 11:00 — 0 commitsSun 12:00 — 8 commitsSun 13:00 — 0 commitsSun 14:00 — 0 commitsSun 15:00 — 3 commitsSun 16:00 — 0 commitsSun 17:00 — 1 commitsSun 18:00 — 6 commitsSun 19:00 — 2 commitsSun 20:00 — 6 commitsSun 21:00 — 3 commitsSun 22:00 — 8 commitsSun 23:00 — 11 commitsMon 0:00 — 12 commitsMon 1:00 — 13 commitsMon 2:00 — 11 commitsMon 3:00 — 2 commitsMon 4:00 — 4 commitsMon 5:00 — 1 commitsMon 6:00 — 6 commitsMon 7:00 — 4 commitsMon 8:00 — 1 commitsMon 9:00 — 0 commitsMon 10:00 — 4 commitsMon 11:00 — 3 commitsMon 12:00 — 0 commitsMon 13:00 — 3 commitsMon 14:00 — 0 commitsMon 15:00 — 1 commitsMon 16:00 — 3 commitsMon 17:00 — 3 commitsMon 18:00 — 7 commitsMon 19:00 — 5 commitsMon 20:00 — 4 commitsMon 21:00 — 8 commitsMon 22:00 — 13 commitsMon 23:00 — 7 commitsTue 0:00 — 8 commitsTue 1:00 — 12 commitsTue 2:00 — 7 commitsTue 3:00 — 14 commitsTue 4:00 — 5 commitsTue 5:00 — 1 commitsTue 6:00 — 7 commitsTue 7:00 — 0 commitsTue 8:00 — 0 commitsTue 9:00 — 0 commitsTue 10:00 — 1 commitsTue 11:00 — 4 commitsTue 12:00 — 1 commitsTue 13:00 — 2 commitsTue 14:00 — 2 commitsTue 15:00 — 1 commitsTue 16:00 — 4 commitsTue 17:00 — 2 commitsTue 18:00 — 3 commitsTue 19:00 — 5 commitsTue 20:00 — 12 commitsTue 21:00 — 8 commitsTue 22:00 — 19 commitsTue 23:00 — 8 commitsWed 0:00 — 23 commitsWed 1:00 — 11 commitsWed 2:00 — 21 commitsWed 3:00 — 6 commitsWed 4:00 — 6 commitsWed 5:00 — 6 commitsWed 6:00 — 8 commitsWed 7:00 — 4 commitsWed 8:00 — 3 commitsWed 9:00 — 2 commitsWed 10:00 — 2 commitsWed 11:00 — 2 commitsWed 12:00 — 4 commitsWed 13:00 — 2 commitsWed 14:00 — 1 commitsWed 15:00 — 0 commitsWed 16:00 — 3 commitsWed 17:00 — 0 commitsWed 18:00 — 8 commitsWed 19:00 — 3 commitsWed 20:00 — 1 commitsWed 21:00 — 3 commitsWed 22:00 — 11 commitsWed 23:00 — 7 commitsThu 0:00 — 8 commitsThu 1:00 — 14 commitsThu 2:00 — 16 commitsThu 3:00 — 10 commitsThu 4:00 — 10 commitsThu 5:00 — 1 commitsThu 6:00 — 3 commitsThu 7:00 — 1 commitsThu 8:00 — 0 commitsThu 9:00 — 1 commitsThu 10:00 — 1 commitsThu 11:00 — 3 commitsThu 12:00 — 3 commitsThu 13:00 — 3 commitsThu 14:00 — 2 commitsThu 15:00 — 1 commitsThu 16:00 — 0 commitsThu 17:00 — 2 commitsThu 18:00 — 3 commitsThu 19:00 — 5 commitsThu 20:00 — 5 commitsThu 21:00 — 3 commitsThu 22:00 — 6 commitsThu 23:00 — 12 commitsFri 0:00 — 13 commitsFri 1:00 — 17 commitsFri 2:00 — 15 commitsFri 3:00 — 20 commitsFri 4:00 — 7 commitsFri 5:00 — 9 commitsFri 6:00 — 1 commitsFri 7:00 — 4 commitsFri 8:00 — 0 commitsFri 9:00 — 2 commitsFri 10:00 — 1 commitsFri 11:00 — 0 commitsFri 12:00 — 0 commitsFri 13:00 — 1 commitsFri 14:00 — 3 commitsFri 15:00 — 2 commitsFri 16:00 — 3 commitsFri 17:00 — 7 commitsFri 18:00 — 6 commitsFri 19:00 — 8 commitsFri 20:00 — 11 commitsFri 21:00 — 10 commitsFri 22:00 — 12 commitsFri 23:00 — 7 commitsSat 0:00 — 11 commitsSat 1:00 — 9 commitsSat 2:00 — 14 commitsSat 3:00 — 12 commitsSat 4:00 — 8 commitsSat 5:00 — 8 commitsSat 6:00 — 3 commitsSat 7:00 — 3 commitsSat 8:00 — 0 commitsSat 9:00 — 0 commitsSat 10:00 — 0 commitsSat 11:00 — 0 commitsSat 12:00 — 0 commitsSat 13:00 — 0 commitsSat 14:00 — 2 commitsSat 15:00 — 7 commitsSat 16:00 — 7 commitsSat 17:00 — 4 commitsSat 18:00 — 6 commitsSat 19:00 — 4 commitsSat 20:00 — 7 commitsSat 21:00 — 3 commitsSat 22:00 — 8 commitsSat 23:00 — 8 commits
Commit volume by weekday and hour (UTC). Larger dots mean more commits.

Who is committing

last 52 weeks
Maintainer commits660 (75%)
Community commits223 (25%)

883 commits in total over the last year.

DateListRankStars gained
Sep 28, 2026monthly#19+5,704
Sep 27, 2026monthly#19+5,704
Sep 26, 2026monthly#19+5,678
Sep 25, 2026monthly#19+5,671
Sep 20, 2026monthly#19+4,799
Sep 19, 2026monthly#19+4,799
Sep 18, 2026daily#10+1,179
Sep 18, 2026monthly#18+4,365
Sep 17, 2026daily#10+1,179
Sep 16, 2026daily#4+1,076
  • krahets/hello-algo

    《Hello 算法》:动画图解、一键运行的数据结构与算法教程。支持简中、繁中、English、日本語,提供 Python, Java, C++, C, C#, JS, Go, Swift, Rust, Ruby, Kotlin, TS, Dart 等代码实现

    131.8K stars · Swift

  • jaywcjlove/awesome-mac

     This project is dedicated to collecting high-quality macOS software and organizing them systematically by different categories for easy search and use.

    117.4K stars · Swift

  • apple/container

    A tool for creating and running Linux containers using lightweight virtual machines on a Mac. It is written in Swift, and optimized for Apple silicon.

    51K stars · Swift

  • permissionlesstech/bitchat

    bluetooth mesh chat, IRC vibes

    37K stars · Swift

  • manaflow-ai/cmux

    Open source Ghostty-based macOS terminal with vertical tabs and notifications for AI coding agents. Built for multitasking, organization, and programmability.

    28.6K stars · Swift

  • steipete/CodexBar

    Show usage stats for OpenAI Codex and Claude Code, without having to login.

    22.9K stars · Swift