个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证Non-destructive photo editor for your Immich library and your phone’s gallery. Android and Windows, open source under the AGPL.
翻译准备中
正在加载完整 README。
查看完整 README ↗IMAGO opens the photos you already have — on your own Immich server or in your phone’s gallery — and gives them light, color, curves, masks and recipes. The original file is never rewritten: every edit is kept as a recipe you can change at any time. When you export to Immich, the result goes back at full resolution, stacked on the original, so your timeline doesn’t fill up with copies.
Every adjustment runs on the device’s GPU at 16 bits per channel, and the export comes out exactly as the screen shows it. Your photos never pass through anyone else’s server.
Works with your Immich server
user.read, asset.read, asset.view and asset.download: with those IMAGO edits and exports to
the device without being able to change anything on the server. album.read, asset.upload,
stack.create, stack.read, stack.update, stack.delete, asset.update, asset.delete and the asset.edit ones are optional, and each
turns on only what it does.The tools developing asks for
Made for phone, tablet and desktop. On a tablet, in split screen or on a phone turned sideways, the adjustments move to a column beside the photo. A Windows app shares most of the interface and logic.
From photos to a post. The composer puts photos from your library into stories, posts and continuous carousels, with text, shapes and freehand drawing. Keep your brand’s colors and fonts in a kit. Each page comes out as JPEG or PNG.
On more than one device. With an optional account, recipes, presets, templates, the brand kit and compositions sync between devices. The same photo is recognized on another device by its content, and the edit continues where it left off. Photos themselves never sync.
Private by design. Processing is local. The Immich address and API key stay encrypted on the device. The account is optional, and without one nothing leaves the device. No ads and no analytics.
app/.desktop/.core/, feature/ and
shared/.backend/.The Immich OpenAPI specifications the client is checked against are pinned in open-api/.
Requirements: JDK 17 and the Android SDK with API 36.
./gradlew :app:assembleDebug # Android debug APK
./gradlew testDebugUnitTest # Android unit tests
./gradlew :desktop:run # Windows app
./gradlew :desktop:test # desktop tests
cd backend/tests && npm install && npm test # Supabase migration tests (PGlite, no Docker)
The app builds and runs without any keys: sync is simply unavailable. To build with sync against
your own Supabase project, apply the migrations in backend/ to it and copy
local.properties.example to local.properties with your project’s URL and publishable
key. Never put the secret key there: it bypasses row-level security, and anything in
local.properties ends up in the app.
See CONTRIBUTING.md.
IMAGO is licensed under the GNU Affero General Public License version 3, with an additional permission to link with the purchase libraries of app stores. The copyright notice and that permission are in NOTICE.
The sample photographs used by the recipe previews and shown in these screenshots are by Paulo Marques, under CC BY 4.0: use them freely, crediting the author.
The name IMAGO and its logo are not covered by the licence: a fork must use its own name and icon before it is distributed. See TRADEMARKS.md.
IMAGO works with Immich servers but is not affiliated with or endorsed by the Immich project.