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
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?
any others that support more than PNG?
ACF, my old friend
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/
(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
List:
- Apple
- Spotify
- Ikea
- Yelp
- Brave
- Cloudflare
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?
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.
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?
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`
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`
Kinda saves my week
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
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
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
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
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
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!
Made a website
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 😵💫