| | |
| | | <meta name="viewport" content="width=device-width, initial-scale=1"> |
| | | <title>TagLauncher — Tag-based Mac app launcher</title> |
| | | <meta name="description" content="TagLauncher organizes Mac apps with tags: scrollable grid, multi-tag apps, searchable notes, JSON layout backup—beyond Launchpad folders and pages."> |
| | | <meta property="og:image" content="https://shanghai3168.github.io/taglauncher/assets/hero-design-original.jpg"> |
| | | <meta property="og:image" content="https://shanghai3168.github.io/taglauncher/assets/hero-visual.jpg"> |
| | | <link rel="stylesheet" href="styles.css"> |
| | | <link rel="alternate" hreflang="en" href="index-en.html"> |
| | | <link rel="alternate" hreflang="zh-Hans" href="index.html"> |
| | |
| | | <div class="layout hero__split"> |
| | | <div class="hero__copy"> |
| | | <h1 class="hero__headline">Possibly the best Mac app launcher—in the world</h1> |
| | | <p class="hero__lead">Don't mourn Launchpad on macOS 26 Tahoe. It was never truly good—it was only barely usable.</p> |
| | | <p class="hero__lead">Don't mourn Launchpad on macOS 26 Tahoe—it was never truly good anyway.</p> |
| | | </div> |
| | | |
| | | <figure class="hero__art"> |
| | | <img |
| | | src="assets/hero-visual-only.jpg" |
| | | alt="" |
| | | width="592" |
| | | height="544" |
| | | src="assets/hero-visual.jpg" |
| | | alt="TagLauncher App Grid with stacked 3D window presentation" |
| | | width="1024" |
| | | height="908" |
| | | fetchpriority="high" |
| | | decoding="async" |
| | | role="presentation"> |
| | | decoding="async"> |
| | | </figure> |
| | | </div> |
| | | </section> |
| | | |
| | | <section class="views" aria-label="Five view modes"> |
| | | <div class="layout views__split"> |
| | | <div class="views__gallery"> |
| | | <figure class="views__shot"> |
| | | <img src="assets/views/view-01.jpg" alt="Flat view" width="720" height="468" loading="lazy" decoding="async"> |
| | | </figure> |
| | | <figure class="views__shot"> |
| | | <img src="assets/views/view-02.jpg" alt="Plain container view" width="720" height="468" loading="lazy" decoding="async"> |
| | | </figure> |
| | | <figure class="views__shot"> |
| | | <img src="assets/views/view-03.jpg" alt="Colored container view" width="720" height="468" loading="lazy" decoding="async"> |
| | | </figure> |
| | | <figure class="views__shot"> |
| | | <img src="assets/views/view-04.jpg" alt="Plain grid view" width="720" height="468" loading="lazy" decoding="async"> |
| | | </figure> |
| | | </div> |
| | | |
| | | <div class="views__copy"> |
| | | <h2 class="views__headline">Five views—everything on one screen</h2> |
| | | <p class="views__lead">No more opening folders one by one or flipping through pages. You're just finding an app—it shouldn't feel like a trek.</p> |
| | | <hr class="views__rule" aria-hidden="true"> |
| | | <p class="views__label">5 view modes</p> |
| | | <ul class="views__modes"> |
| | | <li>Flat</li> |
| | | <li>Plain containers</li> |
| | | <li>Colored containers</li> |
| | | <li>Plain grid</li> |
| | | <li>Colored grid</li> |
| | | </ul> |
| | | <div class="views__shortcut"> |
| | | <span class="views__shortcut-label">Quick launch</span> |
| | | <span class="views__shortcut-keys"><kbd>Option</kbd> + <kbd>Shift</kbd> + <kbd>Space</kbd></span> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </section> |
| | | |
| | | <section class="tags" aria-label="Tag-based organization"> |
| | | <div class="layout tags__split"> |
| | | <div class="tags__copy"> |
| | | <h2 class="tags__headline">Tag-based organization</h2> |
| | | <ul class="tags__points"> |
| | | <li>No more choosing just one folder—an app can belong to multiple tags at once.</li> |
| | | <li><strong>Multi-color tag system</strong> with custom colors</li> |
| | | <li>Drag to categorize: drop on a tag name or container; drop on empty space to remove</li> |
| | | </ul> |
| | | </div> |
| | | |
| | | <figure class="tags__art"> |
| | | <img |
| | | src="assets/tags-management.jpg" |
| | | alt="TagLauncher tag management with multi-tag apps and custom colors" |
| | | width="880" |
| | | height="572" |
| | | loading="lazy" |
| | | decoding="async"> |
| | | </figure> |
| | | </div> |
| | | </section> |