Watch
1
0
Fork
You've already forked Beans
0
mirror of https://github.com/brzzdev/Beans.git synced 2026-10-20 22:26:08 +00:00
macOS menu bar app that keeps your display awake. Built with SwiftUI and TCA.
  • Swift 86%
  • Just 13.9%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Paul bd8a6d4fd2
style: drop the privateSwiftUIDynamicProperties disable (#22)
## Summary

Drops the `// swiftformat:disable:next privateSwiftUIDynamicProperties`
directive added during the mise move. brzzdev/Configs#7 removed the rule
from the shared SwiftFormat config, so it's dead.

```diff
-// swiftformat:disable:next privateSwiftUIDynamicProperties
 @Bindable var store: …
```

The store stays non-private: its caller uses the memberwise init.

## Evidence

- SwiftFormat 0.64.0 lint against the current Configs@main config: 0
files to change, and the pre-commit hook leaves `@Bindable var store` as
it is.

## Merge Danger

**Door:** two-way

**Blast Radius:** none
2026-10-18 00:16:41 +01:00
.github/workflows chore(deps): update actions/checkout action to v7 (#10) 2026-07-22 00:04:26 +01:00
.scripts chore: add shared tooling and project config 2026-04-21 11:03:42 +01:00
Beans chore: add app icon 2026-03-29 15:09:14 +01:00
Beans.xcodeproj chore(deps): update point-free (#14) 2026-08-29 10:15:27 +01:00
Packages style: drop the privateSwiftUIDynamicProperties disable (#22) 2026-10-18 00:16:41 +01:00
.gitignore chore: simplify tooling setup 2026-03-29 17:06:01 +01:00
.swiftformat chore: add shared tooling and project config 2026-04-21 11:03:42 +01:00
.swiftlint.yml feat: initial Beans menu bar app 2026-03-29 10:55:35 +01:00
.swiftlint_child.yml style: fix swiftlint number_separator violations 2026-03-29 18:56:10 +01:00
CLAUDE.md chore: add shared tooling and project config 2026-04-21 11:03:42 +01:00
ExportOptions.plist build: add install recipe for notarized distribution 2026-03-29 15:09:23 +01:00
GLOSSARY.md docs(agents): rename CONTEXT.md to GLOSSARY.md (#19) 2026-10-01 00:03:36 +01:00
justfile build(tools): move to mise and the SwiftFormat 0.64 rules (#21) 2026-10-17 23:23:57 +01:00
LICENSE docs: add README and MIT license 2026-03-29 19:43:02 +01:00
mise.toml build(tools): move to mise and the SwiftFormat 0.64 rules (#21) 2026-10-17 23:23:57 +01:00
README.md build(tools): move to mise and the SwiftFormat 0.64 rules (#21) 2026-10-17 23:23:57 +01:00
renovate.json chore(renovate): automerge minor and patch updates (#16) 2026-08-29 11:27:23 +01:00

Beans

A macOS menu bar app that prevents your display from sleeping.

A modern alternative to Caffeine, KeepingYouAwake, and similar utilities — built with SwiftUI and The Composable Architecture.

Features

  • Prevent idle display sleep indefinitely or on a timer (30 min, 1 hr, 2 hr, 4 hr)
  • Activate on launch
  • Launch at login
  • Notarized and signed for direct distribution
  • Survives menu bar icon hiding (macOS 26+)

Install

Download the latest release from the Releases page, unzip, and drag Beans.app to /Applications.

Build from source

just build    # build
just test     # run tests
just install  # archive, notarize, install to /Applications

Requires Xcode 26+ and mise. mise install provides just and the rest of the tooling.

How it works

Beans holds an IOPMAssertionCreateWithName power assertion of type PreventUserIdleDisplaySleep. This prevents the display from dimming or sleeping due to inactivity. Closing the lid or manually sleeping the Mac still works normally.

License

MIT