{"id":48951918,"url":"https://github.com/goodbug89/unifyl.app","last_synced_at":"2026-05-10T14:14:23.909Z","repository":{"id":350312525,"uuid":"1206288450","full_name":"goodbug89/Unifyl.app","owner":"goodbug89","description":"The AI-powered dual-pane file manager for macOS. Total Commander's depth. ForkLift's polish. Intelligence built in.","archived":false,"fork":false,"pushed_at":"2026-04-17T01:38:57.000Z","size":30529,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-17T03:36:39.616Z","etag":null,"topics":["ai","apple-silicon","developer-tools","dual-pane","file-manager","macos","productivity","swift","swiftui"],"latest_commit_sha":null,"homepage":null,"language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/goodbug89.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-09T19:07:48.000Z","updated_at":"2026-04-17T01:39:00.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/goodbug89/Unifyl.app","commit_stats":null,"previous_names":["goodbug89/unifyl.app"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/goodbug89/Unifyl.app","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goodbug89%2FUnifyl.app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goodbug89%2FUnifyl.app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goodbug89%2FUnifyl.app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goodbug89%2FUnifyl.app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/goodbug89","download_url":"https://codeload.github.com/goodbug89/Unifyl.app/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goodbug89%2FUnifyl.app/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31945987,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-17T17:29:20.459Z","status":"ssl_error","status_checked_at":"2026-04-17T17:28:47.801Z","response_time":62,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","apple-silicon","developer-tools","dual-pane","file-manager","macos","productivity","swift","swiftui"],"created_at":"2026-04-17T21:00:47.742Z","updated_at":"2026-05-04T07:04:48.873Z","avatar_url":"https://github.com/goodbug89.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"docs/screenshots/icon.png\" alt=\"Unifyl\" width=\"128\" height=\"128\"\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003eUnifyl\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cstrong\u003eThe AI-powered dual-pane file manager for macOS.\u003c/strong\u003e\u003cbr\u003e\n  Total Commander's depth. ForkLift's polish. Intelligence built in.\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/macOS-14%2B-000?logo=apple\u0026logoColor=white\" alt=\"macOS 14+\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Swift-6.0-F05138?logo=swift\u0026logoColor=white\" alt=\"Swift 6\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Apple%20Silicon-Optimized-8E8E93\" alt=\"Apple Silicon\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/License-Proprietary-blue\" alt=\"License\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://unifyl.app\"\u003eWebsite\u003c/a\u003e \u0026middot;\n  \u003ca href=\"https://unifyl.app/docs\"\u003eDocumentation\u003c/a\u003e \u0026middot;\n  \u003ca href=\"https://unifyl.app/download\"\u003eDownload\u003c/a\u003e\n\u003c/p\u003e\n\n---\n\n![Unifyl Screenshot](docs/screenshots/main.png)\n\n## Features\n\n### :file_folder: Dual-Pane File Management\n\n- Single, dual, triple, and free-split pane layouts\n- Tabbed browsing with tab groups and persistent workspaces\n- Drag-and-drop with spring-loaded folders\n- Queue manager with pause, resume, and speed throttling\n- Inline terminal per pane\n\n### :mag: Search \u0026 Filter\n\n- Real-time filtering as you type\n- Regex and wildcard pattern matching\n- Spotlight integration for instant system-wide search\n- Content search across file bodies\n- Advanced filters by size, date, kind, and tags\n\n### :robot: AI-Powered Tools\n\n- **Semantic search** -- find files by meaning, not just name (local embeddings + vector DB)\n- **AI rename** -- suggest filenames from image recognition or document content\n- **Smart tagging** -- auto-classify files using on-device NLP\n- **Duplicate intelligence** -- perceptual hashing to surface near-duplicates\n- **Natural language commands** -- tell the command palette what you want in plain English\n- All AI processing runs locally on Apple Neural Engine. Your files never leave your Mac.\n\n### :globe_with_meridians: Remote \u0026 Cloud\n\n- FTP, FTPS, SFTP (PPK, FIDO2, 2FA), WebDAV, SMB, AFP, NFS\n- Amazon S3, Backblaze B2, Google Cloud Storage, Azure Blob\n- Google Drive, Dropbox, OneDrive, iCloud Drive\n- Docker container and Kubernetes pod browsing\n- iOS/Android device connectivity\n\n### :wrench: 75+ Professional Tools\n\n- File → PDF conversion (images, text, Office docs via LibreOffice; HWP / HWPX with Hancom-app fallback when LibreOffice's filter rejects the file)\n- Multi-rename with regex, numbering, EXIF data, AI suggestions, and undo\n- Text diff, binary hex compare, image overlay, recursive directory diff\n- 3-way file merge with per-conflict Accept Left/Right/Both\n- Bidirectional directory sync (local and remote)\n- Archives as virtual folders: browse, copy, move, delete inside ZIP, 7z, TAR, GZ, BZ2, XZ, ZSTD, RAR\n- Encrypted archives: ZIP and 7z password support\n- Smart filename decoding for legacy CJK ZIPs — Chinese (CP936/GBK), Japanese (Shift-JIS), Korean (CP949) detected by Hangul/Kana/Hanja distribution, not by guess\n- Overwrite confirmation dialogue when extracting or copying out of archives (Skip / Rename / Overwrite, with \"Apply to all\")\n- Entry mtimes preserved on extract — no more \"extracted file is 9 hours off\" on KST machines\n- Inline hex editor with pattern search and edit/save\n- EXIF/metadata bulk editor: batch edit date, GPS, author, copyright\n- Incremental backup with delta analysis (new, modified, unchanged)\n- Real-time log viewer with keyword highlighting and filter\n- File operation undo/redo (copy, move, delete reversible)\n- Macro recorder: record file operations, save, replay with variables\n- Multi-panel workspace layouts: save and restore tab arrangements\n- File operation scheduler with cron-based automation\n- Checksums: CRC32, MD5, SHA-1/256/512, SHA-3, BLAKE3\n- App uninstaller with leftover cleanup\n- Automation engine: Shell, AppleScript, JavaScript (JXA)\n\n### :computer: Developer Tools\n\n- Git integration panel: status, stage/unstage, commit, push/pull, inline diff\n- SSH tunnel manager: save port forwarding profiles, start/stop tunnels\n- Docker container file editing with auto-sync\n- Process map, port viewer, environment manager, REST API explorer\n\n### :art: Customizable Themes\n\n- Light and dark mode with system auto-switching\n- 12 built-in presets: Classic Navy, Midnight, Nord, Solarized, and more\n- Full theme editor with 20+ color tokens\n- Export and share `.ultratheme` files\n- Per-filetype color coding\n\n### :keyboard: Keyboard-First Design\n\nEvery action is reachable from the keyboard. Command palette (`Cmd+Shift+P`), Vim-style navigation, and full shortcut customization. Remap any of 120+ commands across 12 categories in Settings \u003e Keyboard Shortcuts, with conflict detection and one-click reassignment.\n\n### :earth_americas: 15 Languages\n\nEnglish, Korean, Japanese, Chinese (Simplified \u0026 Traditional), German, French, Spanish, Portuguese, Italian, Russian, Turkish, Arabic, Thai, Vietnamese.\n\n---\n\n## Installation\n\n### Download\n\nGet the latest release from [unifyl.app/download](https://unifyl.app/download).\n\n1. Open the `.dmg` file\n2. Drag Unifyl to your Applications folder\n3. Launch and grant file access when prompted\n\n### Homebrew (planned)\n\n```bash\nbrew install --cask unifyl\n```\n\n---\n\n## Pricing\n\n| | **Free** | **Pro -- $39.99** |\n|---|---|---|\n| Pane layouts | Single \u0026 Dual | Single, Dual, Triple, Free-split |\n| Tabs \u0026 workspaces | 5 tabs | Unlimited |\n| Search | Basic + Spotlight | Full regex + content search |\n| AI tools | -- | All AI features |\n| Remote connections | FTP, SFTP | All protocols + cloud storage |\n| Archives | ZIP | ZIP, 7z, TAR, GZ, BZ2, XZ, ZSTD, RAR |\n| Multi-rename | Basic | Full (regex, EXIF, AI, presets) |\n| Compare \u0026 sync | -- | Text, binary, image, directory |\n| Themes | Light \u0026 Dark | 12 presets + custom editor |\n| Plugins | -- | All 6 plugin types |\n\nOne-time purchase. No subscription. Free updates for life via built-in Sparkle auto-updater.\n\n---\n\n## Keyboard Shortcuts\n\n| Shortcut | Action |\n|---|---|\n| `Cmd + Shift + P` | Command palette |\n| `Tab` | Switch active pane |\n| `Return` | Open file / Enter folder (cursor item only) |\n| `Shift + Return` | Rename selected file |\n| `Space` | Quick Look preview |\n| `Cmd + Delete` | Move to Trash |\n| `Cmd + Z` | Undo last file operation |\n| `Cmd + Shift + N` | New folder |\n| `Cmd + F` | Find / filter |\n| `Cmd + Shift + F` | Advanced search |\n| `Cmd + Opt + F` | Content search |\n| `Cmd + Opt + S` | AI Semantic search |\n| `Ctrl + F7` | Advanced search panel |\n| `Insert` | Toggle select + move down |\n| `Shift + ↓/↑` | Toggle select range |\n| `Ctrl + S` | Add to Smart Folder |\n| `Cmd + T` | New tab |\n| `Cmd + W` | Close tab |\n| `Cmd + 1` | Single pane layout |\n| `Cmd + 2` | Dual pane layout |\n| `Cmd + K` | Open terminal |\n| `Cmd + Opt + C` | Compare files |\n| `Cmd + Opt + G` | Git panel |\n| `Cmd + I` | Get Info |\n\nAll shortcuts are customizable in Settings \u003e Keyboard Shortcuts.\n\n---\n\n## Building from Source\n\n### Requirements\n\n- macOS 14 Sonoma or later\n- Xcode 16.0+\n- Swift 6.0+\n\n### Steps\n\n```bash\ngit clone https://github.com/niceguy61/unifyl.git\ncd unifyl\n\n# Verify your toolchain (xcodegen / swift / dmgbuild / 7zz / notarytool …)\nmake doctor\n\n# Generate Xcode project\nmake gen\n\n# Build all packages — sequentially with clean log per package\nmake build\n\n# Or in parallel (8.0s → 0.5s no-op rebuild, ~3s cold)\nmake build-fast\n\n# Run tests\nmake test\n\n# Lint + check that user docs / in-app help / KeyBindingManager don't drift\nmake lint\n```\n\nSee the [Makefile](Makefile) for all available targets.\n\n---\n\n## Plugin Development\n\nExtend Unifyl with `.unifylplugin` bundles. Six plugin types are supported: Viewer, Packer, Content, FileSystem, Action, and AI.\n\n```swift\nimport UnifylPluginSDK\n\npublic class MyViewerPlugin: ViewerPlugin {\n    public var manifest: PluginManifest { ... }\n    public func canView(_ url: URL) -\u003e Bool { ... }\n    public func makeView(for url: URL) -\u003e AnyView { ... }\n}\n```\n\nInstall plugins to `~/Library/Application Support/Unifyl/Plugins/`. SDK documentation coming soon.\n\n---\n\n## Contributing\n\nUnifyl is proprietary software. We welcome:\n\n- **Bug reports** -- open an issue with reproduction steps\n- **Feature requests** -- describe your workflow and what you need\n- **Translations** -- help us reach more languages\n- **Plugins** -- build on the plugin SDK\n\n---\n\n## License\n\nProprietary. Copyright 2024-2026 Unifyl. All rights reserved. See [LICENSE](LICENSE) for details.\n\n---\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://unifyl.app\"\u003eWebsite\u003c/a\u003e \u0026middot;\n  \u003ca href=\"https://unifyl.app/docs\"\u003eDocs\u003c/a\u003e \u0026middot;\n  \u003ca href=\"https://twitter.com/unifylapp\"\u003eTwitter\u003c/a\u003e \u0026middot;\n  \u003ca href=\"https://discord.gg/unifyl\"\u003eDiscord\u003c/a\u003e\n\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgoodbug89%2Funifyl.app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgoodbug89%2Funifyl.app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgoodbug89%2Funifyl.app/lists"}