frontpage.
newsnewestaskshowjobs

Open Source @Github

fp.

Open in hackernews

Show HN: Negs (Spektrafilm) brings spectral film simulations to the browser

https://getnegs.com/try/
2•haasisnoah•5h ago
Hi HN, I'm Noah. Negs runs spektrafilm, Andrea Volpato's physically based film simulation, in your browser (it's completely rewritten in Rust and using WebGPU). Drop in a photo (JPEG, PNG, TIFF or a RAW), pick a film and a print paper, and drag the sliders. The picture updates as you drag, and nothing is uploaded: it all runs on your machine.

Try it: https://getnegs.com/try/

Code (GPLv3): https://github.com/noahhaasis/negs

There are also native apps on the same engine: SwiftUI on macOS, GTK4 on Linux, and Windows.

Spektrafilm (it started life as agx-emulsion) isn't a LUT or a preset. It simulates the whole analog chain, negative and then print, using only the manufacturers' published datasheets. Andrea's original write-up on discuss.pixls.us is worth reading in full: https://discuss.pixls.us/t/spectral-film-simulations-from-sc.... Roughly, it goes like this:

- Your RGB image is turned back into a light spectrum and exposed onto the film's three dye layers through their published spectral sensitivity curves. - Each layer builds up density along its characteristic curve. Datasheet curves are measured with densitometers that see all three dyes at once, so they're first separated into a curve for each layer. - DIR couplers: where one layer develops a lot of density, it releases inhibitors that hold back development nearby, in the same layer and the ones next to it. This is where film's saturation and its edge sharpness come from. - Grain is simulated per layer, with fast and slow sub-layers, as random silver halide particles that become dye clouds. It depends on the density at each spot instead of being laid over the image. - Halation: light passes through the emulsion, bounces off the film base and exposes the red layer again (it's at the back), which gives the red glow around highlights. - The negative's dye spectra are then projected through a virtual enlarger with Y/M filtration onto print paper, which has its own sensitivities and curves, and the print is scanned back to RGB.

Because it's a model, the controls are physical: camera exposure, print exposure, enlarger filters, how much DIR coupling, grain particle size, halation strength. Push them too far and the image breaks the way film does, with colour crossovers when it's badly over- or underexposed. And you can experimentw with each control. There are about 50 stocks: Portra, Ektar, Gold, Pro 400H, Superia, Kodachrome, Velvia and Provia slide film, Aerochrome and some B&W (HP5, FP4...). There are 9 papers and print films too, such as Endura, Crystal Archive and Vision 2383. The paper choice has a huge impact on the final look.

Negs implements the entire chain and is orders of magnitudes faster than the original python Spektrafilm implementation, so you can play around with sliders and get live feedback.

Feedback is very welcome, especially from people who have actually shot these stocks: tell me which ones look wrong to you.

Show HN: Every satellite that passed over any place this week, and its photos

https://www.watched.earth
231•a585gupt•8h ago•43 comments

Show HN: MeowDisplay Is iPhone Mirroring, but in Reverse

https://meowdisplay.app/
76•raiseCatError•7h ago•29 comments

Show HN: Someone Was Here – Find out who used your Mac while you were away

https://someonewashere.app/
62•4onthefloor124•7h ago•25 comments

Show HN: STE80 Humanizer – de-AI text by writing 80% of the way to ASD-STE100

https://github.com/Dodaios/ste80-humanizer
59•Dodaios•8h ago•16 comments

Show HN: DBDelve – Open-Source DB Client Made with Rust and GPUI

96•shayan_abbas•9h ago•34 comments

Show HN: Recalc – Spreadsheet where cells can be Claude Code or Codex terminals

https://github.com/sshah03/recalc
24•sshah03•1d ago•8 comments

Show HN: Rat Race (After Dark, 1994), ported from 68k assembly to TypeScript

https://rat-race.heyitsjam.es/
2•shijie•2h ago•0 comments

Show HN: Flide: Make Jev-like decision models up to 9.5x faster

https://github.com/OmniJev/Flide
119•unikcc•21h ago•29 comments

Show HN: Airgap-check – find what your AI app silently downloads offline

https://github.com/humanethq/airgap-check
4•humanethq•5h ago•0 comments

Show HN: My daily word puzzle Jointter revisited

8•proy87•11h ago•4 comments

Show HN: Live counts of AI assistants reading a diaspora business directory

https://nibiashara.com/agent-index
3•NiBiashara•3h ago•1 comments

Show HN: Rollare – Bracket maker with registration and live scoring

https://rollare.com/
6•cloudyer•7h ago•1 comments

Show HN: Every Job in the Observability Space

https://o11y.jobs/
2•ScarZy•3h ago•0 comments

Show HN: Camwall – all your camera feeds on one screen, no black bars

https://github.com/vinodhalaharvi/camwall
2•vinodhalaharvi•3h ago•0 comments

Show HN: Totle, daily math puzzle game; Saturday puzzles have the fewest answers

https://playtotle.com/
2•zemelett•3h ago•1 comments

Show HN: Vork – headless 3D and VFX engine for agents

https://github.com/voyager-so/vork
5•raviparikh•3h ago•2 comments

Show HN: Fable 5.2 made a fun Claude castaway clone

https://claude-castaway.zachy.dev/
3•nzach•4h ago•0 comments

Show HN: Write GitHub Actions in any language: Loopt

https://github.com/preloopdev/loopt
12•Bnjoroge•8h ago•5 comments

Show HN: Brick Atlas: Explore 1000+ LEGO sets on one zoomable canvas

https://showcase.zoomhub.net/ecommerce/brick-atlas
4•gasi•4h ago•0 comments

Show HN: Vegetable Gardening for Engineers

https://jrcpl.us/contrib/2020/gardening-for-engineers/
217•jrcplus•5d ago•43 comments

Show HN: Bottled Reset Rune – auto-use spare Codex resets before they expire

https://github.com/sufferfml/reset-rune
2•morrowf•4h ago•1 comments

Show HN: Agent-email-guard – agent tried to send 400 receipts, stopped at 5

https://github.com/agentisend/agent-email-guard
3•Iammnhamza•4h ago•1 comments

Show HN: Emma, a real-time AI video persona from Nuance Labs

https://app.nuancelabs.ai/try
6•cvanea•4h ago•1 comments

Show HN: JavaScript web apps with WASM layout and GPU rendering in 280 KB

https://github.com/rkaehn/uniform
45•rkaehn•2d ago•21 comments

Show HN: Secure browser sessions for agents

https://easi.run/
3•roxygens•4h ago•2 comments

Show HN: ApiClay – Turn a Website, Google Sheet or Database into a Paid API

https://apiclay.com
3•apiclay•5h ago•0 comments

Show HN: Negs (Spektrafilm) brings spectral film simulations to the browser

https://getnegs.com/try/
2•haasisnoah•5h ago•0 comments

Show HN: Coldframe, a honeypot that poses as a supermarket fridge controller

https://github.com/hedgerow-dev/coldframe
285•hedgerow-dev•2d ago•69 comments

Show HN: Static analysis for JavaScript/TS test suites, written in Rust

https://spirolo.com/
3•AlexFromTwelve•5h ago•0 comments

Show HN: Open-source app that lets LLMs control your iPhone (no Mac required)

https://github.com/EliotAndres/iphone-use-app
2•ea016•6h ago•0 comments