个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证Free, local, open-source photo editor: apply Lightroom XMP presets and .cube LUTs to RAW photos in your browser. No uploads.
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗The open-source photo editor that stays on your device.
Free, open-source in-browser RAW photo editor that applies Lightroom XMP presets and .cube LUTs. No uploads, no account.
Fifteen seconds: sliders on an open photo, paste across the shoot, export, then presets (XMP and .cube LUTs). MP4 if the GIF does not play.
If you find it useful, a star helps others find it ⭐
Lightroom and Camera Raw are trademarks of Adobe. Lightframes is an independent project and is not affiliated with or endorsed by Adobe.
.cube 3D LUTs apply after the parametric edits..xmp develop presets, including Lightroom and Camera Raw, are mapped onto Lightframes sliders.
What is imported: basic tone (exposure, contrast, highlights, shadows, whites, blacks), white balance (a relative temperature, or an approximation of Kelvin), tint, HSL, the tone curve (master and per channel), vibrance and saturation, texture, clarity, dehaze, colour grading (or the older split toning), vignette amount and midpoint, grain, sharpening, and luminance and colour noise reduction.
What is not imported: camera profiles, lens corrections, local masks, crop and transform, calibration, and detail controls beyond those sliders. A preset that depends on the missing pieces will not match Lightroom.
Your photos are opened, edited and exported in the browser. Nothing is uploaded.
The first use of object removal downloads its AI model (MI-GAN) from Hugging Face, checks it against a SHA-256, and caches it. The photo is not uploaded with that download. Segmentation and upscale models are served from this site, not from a third party. Each model downloads once, is hash-checked, and then runs in the browser.
Page visits are counted with Vercel Web Analytics, which does not use cookies and does not receive your photos.
The editor and the gear page include links to Amazon.es. As an Amazon Associate, Lightframes earns from qualifying purchases. The cards are drawings in the page: they do not load images or scripts from Amazon. Amazon is contacted only when you click a link.
Node.js 20+. The production build is a static dist/ folder. Any static host can serve it.
npm install
npm run build
npm run preview serves that build locally. npm run dev starts the dev server (usually http://localhost:4321). The landing page is /. The editor is /editor.
| Script | What it does |
|---|---|
npm run dev | Dev server with hot reload |
npm run build | Type-check (astro check) and build to dist/ |
npm run preview | Serve the production build locally |
npm run check | Type-check .astro, .ts and .tsx only |
npm run lint | Lint with oxlint |
A Chromium browser (Chrome, Edge, Brave) is the best bet for opening a folder and for canvas performance. Large RAW files and the AI tools are slower on phones.
localStorage backup of presets/editor.astro.config.mjs site URL, integrations (React, sitemap, PWA)
integrations/pwa.mjs writes dist/sw.js with workbox-build after the build
vercel.json clean URLs, no trailing slash
src/
App.tsx, components/, hooks/, lib/, types/ the editor (React)
EditorRoot.tsx editor entry, mounted by src/pages/editor.astro
pages/ routes: landing, editor, tools, blog, FAQ, legal, robots.txt, llms.txt…
site/ layouts, i18n, JSON-LD, landing copy
content/ tools, blog, pages, FAQ (Markdown / JSON, EN + ES)
public/ icons, manifest, samples, AI models, site images
promo/ promo video (Remotion), separate package
Tool pages, guides, the FAQ and the legal pages are Markdown or JSON in src/content/. See docs/SEO.md for the URL map and how to add a post.
Press ? in the editor for the full list. Shortcuts are ignored while a text field is focused.
| Shortcut | Action |
|---|---|
Ctrl/Cmd+Z | Undo |
Ctrl/Cmd+Shift+Z / Ctrl/Cmd+Y | Redo |
Ctrl/Cmd+C | Copy edits |
Ctrl/Cmd+V | Paste edits to the selection |
Ctrl/Cmd+A | Select all in the filmstrip |
Ctrl/Cmd+E | Export dialog |
Shift+1–8 | Switch panel |
W | White balance picker |
R | Crop |
Q | Retouch: spots and background |
M / Shift+M | New linear / radial mask |
K / Shift+K | New brush / AI subject mask |
\ | Before (whole image) |
Y | Before / after split |
J | Clipping overlay |
G | Show / hide filmstrip |
1–5 / 0 | Rate stars / clear rating |
P / X / U | Pick / reject / unflag |
[ ] or ↑ ↓ | Previous / next photo |
Issues and pull requests are welcome. For anything larger than a small fix, open an issue first so the approach is agreed.
npm install
npm run lint
npm run build
Bug reports are most useful with the browser, the device, and, for RAW, the camera model. Please don't add a third-party script, font host, ad network or tracker: a page load stays on this origin, apart from the cases named in the privacy policy.
MIT. See LICENSE.
Sample photos in public/samples/ (and the preset renders made from them) are © the Lightframes author, all rights reserved. They are not covered by the MIT license. The AI models keep their own licenses (see public/models/NOTICE.md).