Skip to content
NatizhPublic

About

Native macOS edge workspace for quick notes, focused tasks, and Apple Reminders sync.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Repository files navigation

EasyFlow — Your current work, one movement away.

Website · Download the latest release

A note from the creator

I am a university student, not a software developer. EasyFlow started because I needed this kind of tool in my own daily work and could not find one that behaved the way I wanted.

I did not personally write the implementation code. My contribution was defining the product: the original idea, project planning and organization, user stories, requirements, interaction details, UX and visual direction, testing decisions, and the many rounds of feedback that shaped the result. I used AI tools to turn that specification into the working macOS application in this repository. The website was created through the same process.

This project is also an honest experiment about the period we are living through. For a product like this, being able to define a problem clearly, communicate with AI, evaluate its output, identify mistakes, and keep iterating was more useful to me than already knowing how to write every line of code myself. That does not make software engineering unimportant; it shows that the ability to direct AI effectively is becoming a real and increasingly important way to build software.

I am not selling EasyFlow, and I do not want to hide or apologize for the fact that it was built with AI. I made it to practice this new way of creating, to keep training my ability to work with AI, and because EasyFlow is genuinely useful to me every day. If it can also be useful to somebody else, even better.

EasyFlow is a native macOS edge workspace for keeping quick notes and the tasks you are actively working on close at hand. Move the pointer to the selected outer desktop edge (Right by default) and the workspace slides over the current app; move away and it gets out of the way.

Install

Download the app

EasyFlow releases are distributed through GitHub Releases as EasyFlow.zip.

  1. Open the Releases page and download EasyFlow.zip from the latest release.
  2. Double-click the ZIP to extract EasyFlow.app.
  3. Drag EasyFlow.app into your Applications folder.
  4. Open EasyFlow and allow Reminders access when macOS asks. EasyFlow automatically creates a dedicated EasyFlow list if one does not already exist, or reuses the existing one when it can do so unambiguously.
  5. If you want EasyFlow available after every login, enable Launch at Login in Settings.

The current community release is ad-hoc signed, not signed with an Apple Developer ID and not notarized. macOS may therefore block the first launch. If that happens, Control-click EasyFlow.app, choose Open, then confirm. If macOS still blocks it, open System Settings → Privacy & Security and choose Open Anyway for EasyFlow. This override is only needed for the first launch of that build.

The first release with signed in-app updates must be installed manually using these steps. After that trust bootstrap, public builds can check GitHub Releases in Settings and install newer releases whose artifacts pass EasyFlow's pinned Ed25519 signature checks. Local development builds cannot auto-install public releases.

EasyFlow v1.5.0 is the first updater-enabled release. Its release notes record the public-key fingerprint and the new fullscreen, panel customization, task-entry, and Settings changes.

If the Releases page does not contain a build yet, use the source installation below.

Build and install from source

You need macOS 14 or later and Apple's Swift command-line tools. Open Terminal, then copy and run:

git clone https://github.com/Natizh/easyflow.git
cd easyflow
./scripts/install.sh

The installer builds the release app, copies it to /Applications when possible (otherwise ~/Applications), and opens it. If Apple's command-line tools are missing, the script tells you how to install them with xcode-select --install.

Use EasyFlow

  1. Launch EasyFlow. It runs without a Dock icon or menu-bar item.
  2. Move the pointer to the selected outer desktop edge (Right by default) and hold it there briefly.
  3. Type into Quick Notes. Return saves the note and readies the composer for the next one.
  4. Select New Task, enter a title, and press Return. Effort starts at 1; you can select 2–4 before creating the task.
  5. Hover a task to open its detail panel with Description, Steps, and Attached Notes.
  6. Drag Quick Notes onto tasks to move them into Attached Notes.
  7. Drag tasks, Quick Notes, and Steps directly to reorder them.
  8. Complete a task to move it into Recently Completed. EasyFlow shows the five most recent completed tasks; there is currently no restore action.
  9. Use the gear for centered Settings: Panel Side, panel size and surface, task reminder frequency and pause, appearance, Main Task row density, Reminders status, Software Updates, Launch at Login, and the running version.

Features

  • Left or Right edge activation, with Main on the outermost display and Secondary opening inward. Right is the default; changes apply immediately.
  • Rapid Quick Notes capture: Return saves the current note and immediately readies the next one, with direct drag/reorder.
  • Main Tasks with local effort, order, descriptions, Steps, styling, and Attached Notes.
  • Internal EasyFlow reminder banners for active Main Tasks, with frequency presets, pause controls, per-task exclusion, and click-to-open navigation.
  • Paste clipboard images or screenshots into Quick Notes and Attached Notes. Image-only notes and multiple images are supported, with compact thumbnails and a centered larger preview.
  • Quick Note → task movement preserves the same note, text, and images without copying or merging content.
  • Native Cut/Copy/Paste and selection; multiline editors support Command-B, Command-I, Command-U, and Control-Command-H for bold, italic, underline, and rounded text-marker highlighting.
  • Step title menus use the compact chevron action affordance while preserving drag behavior.
  • A contextual Secondary panel for task details and Quick Notes.
  • Five-item Recently Completed view.
  • Compact or Comfortable Main Task row density.
  • Apple Reminders synchronization for Main Task existence, title, and completion.
  • Standard and Frosted appearances on macOS 14+, with Liquid Glass available on macOS 26+.
  • Launch at Login through native macOS APIs.
  • Local SQLite metadata and image files in EasyFlow’s Application Support directory, with no EasyFlow account, backend, telemetry, or analytics.

Apple Reminders

EasyFlow uses a dedicated EasyFlow list in Apple Reminders. On first authorized launch, EasyFlow automatically creates that list if needed; if exactly one suitable writable list with that name already exists, it reuses it instead of creating a duplicate.

Synced with Reminders Kept local to EasyFlow
Main Task existence Effort and order
Main Task title Description
Main Task completion Steps and Step state
Quick Notes and Attached Notes
Styling and EasyFlow-only UI state

EasyFlow does not encode its local-only metadata into Reminder notes, priority, or other Reminder fields.

Privacy

EasyFlow has no account, custom backend, telemetry, or analytics. EasyFlow-specific workspace data stays on the Mac. EventKit is used only for the Apple Reminders synchronization boundary above.

Requirements

For normal use, EasyFlow requires macOS 14 or later. Reminders permission is required only for Main Task synchronization; the local workspace remains usable if access is denied. Liquid Glass requires macOS 26.

Building from source additionally requires Swift 6 through Xcode or the Xcode Command Line Tools.

Development

Current behavior and implementation boundaries live in PRODUCT_SPEC.md, ARCHITECTURE.md, DATA_MODEL.md, UX_BEHAVIOR.md, REMINDERS_SYNC.md, and AGENTS.md.

Run swift build and swift test before submitting changes. ./scripts/package-release.sh creates a validated development-channel ZIP for CI and local inspection. Public updater releases require a separately prepared app and signed assets; publication is a manual, explicitly approved step. See Signed GitHub updates for the key setup, packaging, validation, and release procedure. Pushing a tag alone does not publish a release.

License

EasyFlow is available under the MIT License.

About

Native macOS edge workspace for quick notes, focused tasks, and Apple Reminders sync.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages