Frontend

/frontend127381

Discussions about frontend development, HTML, CSS, JavaScript, browser APIs, web standards, component frameworks, rendering libraries, UI/UX patterns, and tools and technologies used to build websites and web apps!

I've been anti-position: fixed for elements that influence layout, like sidebars. I'll use min/max-h-screen with flex/grid and relative/absolute for consistent spacing. Fixed still makes sense for popups (createPortal), top headers, and floating buttons tho

Meme credit: https://decketts.medium.com/css-position-fixed-is-terrible-heres-why-a9b0a87bf154
for caching, do any of y'all use Vercel KV vs. a hosted Redis instance?
Is this the cheapest bg remover image library api? https://developer.pixelcut.ai/pricing

any others that support more than PNG?
What do we think? Should CSS Masonry layout be part of CSS Grid, or its own layout mode entirely?

(Feels like browsers have been debating this for a decade at this point 😕)

https://youtu.be/W91Wst6fMNU

https://www.w3.org/TR/css-grid-3/
Some large companies are moving towards svelte, and are experimenting with new products using svelte:

List:
- Apple
- Spotify
- Ikea
- Yelp
- Brave
- Cloudflare
- Google

https://youtu.be/_Ge-cVPHBjc
I don't understand deno. so you pass a CLI args to approve all file access? how is that any safer? shouldn't it be you only allow certain relative file paths like allowlisted domains?

who's using deno in prod? works with nextjs and also railway. what are the cons?
I probably use typescript incorrectly. It reads like js to me and gives me type safety. that's all I know. So the fact, its considered its own language means I'm missing a lot.

where do I start? no I don't want to do a 30 day course but I'm down to spend 5 -7 hours improving on my current experience.
when onboarding new users, don't just copy other successful projects

Like how ethermail is copying onboarding of social apps. It requires you subscribe to 3 mail letters in order to proceed. Why would an email service force you to subscribe to spam before creating an account?
you need to react to `localStorage` changes

attach an event listener to `storage` event: `window.addEventListener('storage', event => {})`

this doesn't work on the same browsing context. `localStorage.setItem(...)` won't be listened to

solution: dispatch `StorageEvent` synthetically with `window.dispatchEvent`
Anyone debugged "Error: Request Entity Too Large FUNCTION_PAYLOAD_TOO_LARGE"

in Remix or Vite.js before?

not sure how to properly accept > 3MB file uploads. using

<Form method="post" encType="multipart/form-data"
<input type="file" id="image" name="image" accept="image/*" required />
</Form>

and then on the action (POST) handle it using @mjackson/form-data-parser
but when calling that endpoint with either the default formData Handler or form-data-parser running into the request entity too large error for anything >= 3MB
is there a viable alternative to `npm update` that will actually update the packages in my repo's `package.json`? i feel like half of the time that i run it most of my packages still aren't updated to the latest available version

https://docs.npmjs.com/updating-packages-downloaded-from-the-registry
We talk about AI all day but this is the true state of the web 🤣

https://youtu.be/mc5P_082bvY?si=q8-Zjpztxn3ZPKuN
pro tip

to update all extensions to latest on chromium-based browsers

go to `chrome://extensions`
enable "Developer mode"
hit "Update"

if you don't enable dev mode, it only updates when you fully restart the browser
resharing this insanely useful extension because it's that good

https://dub.sh/visbug

you can play with it here before installing https://visbug.web.app
the inevitable curse of next.js + ORM cache is kicking my ass today. had to spend a few hours optimizing queries and rewriting to a client component to figure out some live piece of data 😵‍💫
Ran `deno upgrade` and didn't have to fix anything in my projects. Huzzah!
huge collection of video player designs ready to be dropped into your app https://player.style/
maybe i'll never learn how to use databases and i'll live forever in the magical world of frontend
Been fighting with react state inside a context today. Finally gave up and will be using zustand for state management. The struggle is real 😵‍💫