Launchatlogin Modern

Add “Launch at Login” functionality to your macOS app in seconds

LaunchAtLogin (Modern)

Add Launch at Login functionality to your macOS app in seconds

This package is meant for apps targeting macOS 13 or later. If you need backwards-compatibility, check out the old LaunchAtLogin package.


macOS 13+


Add in the Swift Package Manager tab in Xcode.


Put the toggle in your Settings scene. That's it.

import SwiftUI
import LaunchAtLogin

struct MyApp: App {
	var body: some Scene {
		Settings {
			Form {

The LaunchAtLogin.Toggle view works similarly to the built-in Toggle except that is has a predefined binding and label.

The default label is "Launch at login", but it can be overridden:

import SwiftUI
import LaunchAtLogin

struct SettingsScreen: View {
	var body: some View {
		LaunchAtLogin.Toggle("Launch at login ")

		// Or
		LaunchAtLogin.Toggle {
			Text("Launch at login ")

You can also access the state directly:

import LaunchAtLogin

//=> false

LaunchAtLogin.isEnabled = true

//=> true


The Mac App Store guidelines require launch at login functionality to be enabled in response to a user action. Your app will be rejected if you set the state to true by default.


How is this different from the old package?

This is a new repo as the old package had a lot of bloat in its Git history. I also took the opportunity to make a more minimal API optimized for SwiftUI apps.


Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Swift Package