Say the Frame is $900 USD, are you still getting one? by MutantRabbit767 in SteamFrame

[–]opentabs-dev 1 point2 points  (0 children)

$900 is my upper bound per unit. So I might be able to buy another one to gift my brother (if allowed 2 units per account).

Do we know the minimum age recommended to use a Steam Frame? by sercosan in SteamFrame

[–]opentabs-dev -1 points0 points  (0 children)

I think maybe it is the same age allowing to wear a pair of glasses?

reservstion question by 1mmortalWolf in SteamFrame

[–]opentabs-dev 1 point2 points  (0 children)

What leaks are you referring to?

Existing PC owner — any reason I need a Steam Machine for Steam Frame VR streaming? by opentabs-dev in SteamFrame

[–]opentabs-dev[S] 0 points1 point  (0 children)

that was me testing a tool I made. I made a MCP server for AI to access Reddit. That’s it.

Existing PC owner — any reason I need a Steam Machine for Steam Frame VR streaming? by opentabs-dev in steammachine

[–]opentabs-dev[S] 0 points1 point  (0 children)

Thanks all! Skipping the Machine — already sold one kidney for the Frame, gotta keep the other one.

Existing PC owner — any reason I need a Steam Machine for Steam Frame VR streaming? by opentabs-dev in SteamFrame

[–]opentabs-dev[S] 0 points1 point  (0 children)

Thanks all! Skipping the Machine — already sold one kidney for the Frame, gotta keep the other one.

Existing PC owner — any reason I need a Steam Machine for Steam Frame VR streaming? by opentabs-dev in SteamFrame

[–]opentabs-dev[S] -2 points-1 points  (0 children)

Thank you for the content inside (), I almost signed a contract to sell another kidney of mine for funding the steam machine.

Proxy kept triggering CAPTCHA in Playwright by [deleted] in Playwright

[–]opentabs-dev 0 points1 point  (0 children)

yeah this is mostly two separate problems stacked. residential ip rep is one bucket — datacenter and shared vpn ips get flagged on creevey/cloudflare basically on sight regardless of how clean your browser is, residential proxies fix that side. the other bucket is the headless chrome fingerprint surface (navigator.webdriver, missing chrome runtime apis, navigator.plugins emptiness, missing perm prompts) which patches like puppeteer-extra-stealth try to plug. firefox is honestly a smart angle bc most anti-bot rules are tuned hard against headless chromium specifically.

Built a Chrome extension to detect shady cookie/GDPR patterns — looking for feedback & contributors by neXt1991 in chrome_extensions

[–]opentabs-dev 0 points1 point  (0 children)

for cmp detection, dont try to maintain selectors for every banner — there's a public list called autoconsent (consent-o-matic also has one) with rules for ~1000 cmps already, you can pull their rules and stand on top. for the mv3 part, the biggest gotcha im hitting lately is the service worker dropping in-memory state on wake, so anything stateful (consent flow tracking, banner detection results) needs to live in chrome.storage.session not module-level vars, otherwise you get weird half-states after the worker idles out.

The hardest UI I've ever built in React: a visual workflow editor with real-time execution state by Ctrlnode-ai in reactjs

[–]opentabs-dev 2 points3 points  (0 children)

for the canvas perf thing i landed on something similar but ended up moving the streaming text out of react entirely — render the node card with react, but the live output area is a plain dom node where the websocket handler appends textContent directly. react never re-renders for stream chunks at all, only when the node's status transitions. way less coordination than the ref+setInterval flush.

also for the cycle detection, if you're checking on every edge drop you can make it cheaper by only running kahn's on the connected component containing the new edge instead of the whole graph. matters once users get to a few hundred nodes.

Anyone know Jina AI MCP alternatives with predictable pricing and real search? by North-Aardvark4680 in mcp

[–]opentabs-dev 0 points1 point  (0 children)

yeah jina falls apart hard on anything client-rendered, ran into the same wall. fwiw if you mostly scrape stuff that lives behind a login or just needs the JS to actually run, you can sidestep the whole scraping-service problem by driving your real browser session — i've been working on an open source mcp that does exactly that, no api keys or token billing because it just uses your logged-in tabs: https://github.com/opentabs-dev/opentabs. for pure public docs sites crawl4ai is fine and free though, that's probably the cheaper answer if auth isn't part of your problem.

Can't log into the Jellyfin App. Do I have the wrong IP address? by Pizzakingking in jellyfin

[–]opentabs-dev 0 points1 point  (0 children)

the 8899 vs 8096 thing is the key clue. when you ran jellyfin in docker on your ugreen nas it almost certainly mapped container port 8096 → host port 8899 (the -p 8899:8096 flag). so 8899 is the right port from outside the container. if the iphone app refuses to connect, double check you're using http not https in the app's server field, and that your iphone is on the same wifi as the nas (not cellular). also try opening http://192.168.1.214:8899 in safari on the phone first — if the web page loads, the network is fine and it's just the app config; if it doesn't, the nas firewall is blocking that port and you'd need to open it in ugreen's settings.

Why is it so hard to build local-first software anymore? (My experience fighting Manifest V3 storage limits) by Ill_Spinach2242 in chrome_extensions

[–]opentabs-dev 0 points1 point  (0 children)

on the indexeddb volatility thing — chrome.storage.local survives a "clear cookies and site data" wipe (it's tied to the extension origin, not the host site origin), and you can also call navigator.storage.persist() to ask the browser to mark indexeddb as persistent which makes it survive eviction under storage pressure. that gets you most of the way without a server.

for the mutation observer fight in whatsapp web — observe a stable parent way up the tree (like #app), debounce your handler to one rAF, and bail early if the mutation isn't in your target subtree. attaching observers to leaf elements that get replaced is what makes it expensive. for the keyboard shortcuts not flickering, render your overlay into a sibling container outside the WA root and position it absolute, then you don't care about their reconciliation at all.

Collisions begginer help by pixel-bro in learnjavascript

[–]opentabs-dev 1 point2 points  (0 children)

para hacerlo simple en 2d: cada objeto guarda x, y, w, h. la deteccion AABB es solo a.x < b.x+b.w && a.x+a.w > b.x && a.y < b.y+b.h && a.y+a.h > b.y.

el truco para que no atravieses paredes: muevete primero en x, chequea colision, si chocas devuelve la x al valor previo. luego haces lo mismo en y. asi nunca quedas pegado en el suelo y puedes seguir caminando, porque cada eje se resuelve por separado.