I have finished setting up Umami on my home server for my websites analytics โจ
It's oddly satisfying to self-host things ! I'm starting small with a simple public API
@jsulpis.dev.bsky.social
๐ป Front-end engineer & speaker ๐ก I explore ways to make the web more fun and performant for everyone. #WebGL #WebGPU #JS #CSS
I have finished setting up Umami on my home server for my websites analytics โจ
It's oddly satisfying to self-host things ! I'm starting small with a simple public API
๐
19.06.2025 18:28 โ ๐ 1 ๐ 0 ๐ฌ 0 ๐ 0I should put something at jsulpis.dev ๐ค
It's currently used only for my git email and Bluesky handle.
Anything you would like to see in there ? Talks library, tech demos, blog...
I made this planet shader after completing @simondev.bsky.social's shader course, and now he has a new bundle including more advanced techniques and maths ? Let's do this ! ๐
Give me just 10 years to complete all the courses I bought, and I should come up with interesting stuff...
๐ค Tu te mets combien en responsive CSS ? (รdition 2025) avec @jsulpis.dev et Thรฉo Gianella
Cโest la base, non ? Mais entre breakpoints, container queries et unitรฉs modernesโฆ on sโy perd un peu. Une session en live-coding pour tout remettre ร plat.
๐ mixitconf.org/2025/tu-te-m...
I've been playing with the #WebGPU API recently, it's crazy powerful !
A useGPU lib is right around the corner ๐
PS : I will publish the code soon (vanilla WebGPU, OBJ file loader, compute shader and stuff)
Implementing Conway's Game of Life in useGL is relatively easy : I taught Claude the API by feeding it with the boids example, and after a few iterations... you have it, in less than 80 lines of code ๐
Interactive demo : usegl.vercel.app/examples/gpg...
#webGL #buildInPublic #gameOfLife
The function to make boids animations, or any other thing using the ping pong FBO technique, is published in usegl !
As always you can play with the interactive example :
usegl.vercel.app/examples/gpg...
#WebGL #buildInPublic #boids
Cโest Mads qui a tout fait ๐
19.02.2025 10:47 โ ๐ 1 ๐ 0 ๐ฌ 1 ๐ 0I am thrilled to give my first talk outside of France at @futurefrontend.bsky.social !
Thanks to m4dz.net for the opportunity ๐๐ป
I will be talking with him about Design Systems. Canโt wait !
It took me a while, but I finally implemented a boids behavior with the ping pong FBO technique.
Still need a bit of time to polish the API and make it straightforward to use, and I will publish that in useGL
Subtle things to make your shaders better:
1) Anti-aliasing - Real life is not limited to pixels so unless you're specifically going for a pixelated style, you should be anti-aliasing everything!
mini.gmshaders.com/p/antialiasing
Thank you for the thread ! Now I want to read all the tutoriels ๐
27.01.2025 17:48 โ ๐ 1 ๐ 0 ๐ฌ 0 ๐ 0The bloom effect itself is far from ideal, maybe on day I will take the time to understand and implement this article that has been used to make the bloom effect in the postprocessing toolkit of threejs
www.froyok.fr/blog/2021-12...
Phew, I made an example of a multi-pass bloom effect to showcase the API for creating effect passes and update their uniforms.
You can play with it in the interactive example (without types and autocompletion unfortunately) :
usegl.vercel.app/examples/pos...
#buildInPublic #shaders #WebGL
sample code for video.requestVideoFrameCallback()
TIL: there is an equivalent of `requestAnimationFrame` for videos : `requestVideoFrameCallback`, called for each video frame.
Could be useful to... automatically re-render a WebGL shader when a video texture is played \o/
Il nous a rรฉgaler avec des confรฉrences toujours excellentes, gagnant du dernier Code In The Dark, il nous paraissait normal d'inviter @jsulpis.dev pour nous parler cette fois de couleurs.
17.01.2025 13:00 โ ๐ 2 ๐ 1 ๐ฌ 0 ๐ 0Thank you for the idea ! You mean raymarching / ray tracing ? I already made a few shadertoys, I will probably show one in the examples
17.01.2025 12:51 โ ๐ 1 ๐ 0 ๐ฌ 1 ๐ 0It looks like it's #PortfolioDay !
I'm a front-end engineer currently focusing on making polished UIs and animations with #WebGL.
I'm building a lightweight, reactive WebGL library for working with shaders : usegl.vercel.app (WIP, #buildInPublic)
See you ๐
I used a vitepress plugin for the sandpack editor, and the code is much simpler than before
vitepress-sandbox.js...
The migration to VitePress is complete !
I hope you will like it as much as I do ๐
usegl.vercel.app/
(yeah it's missing a preview image)
#buildInPublic #webGL
VitePress UI on phone
Starlight UI on phone
Also... a proper top navigation, with two menus on mobile, no more hacking
07.01.2025 21:17 โ ๐ 0 ๐ 0 ๐ฌ 0 ๐ 0VitePress UI on desktop
Starlight UI on desktop
Much better ! ๐คฉ
default colors, white space, visual hierarchy... VitePress looks way better to me
I really like Astro, but for documentation I prefer the UI and UX of VitePress over Starlight ๐ค Also the lack of top navigation bothers me.
I will try to migrate the documentation of useGL ๐ค
I'm trying to switch from #Notion to #Obsidian for Personal Knowledge Management (because Notion is slow, owns the data and Obsidian has a better way of linking notes).
First impression : it's fast ! Local first + sync via iCloud (or any other cloud) is such a great combo โจ
Dโailleurs jโai vu quโune des documentation de cloudflare utilise aussi starlight, et ils ont aussi hackรฉ un composant pour la navigation du haut ๐
Ils ont pris le composant des rรฉseaux sociaux, et moi la barre de recherche. Mais leur navigation est cassรฉe sur mobile. Cโest un peu un pain point
Jโai essayรฉ, mais le plugin gรจre mal lโรฉtat des pages actives (attribut aria-current=ยซย pageย ยป). Jโai pas rรฉussi ร le faire fonctionner correctement donc je me suis rabattu sur lโoverride
20.12.2024 22:06 โ ๐ 0 ๐ 0 ๐ฌ 0 ๐ 0Astro banger, par contre dans Starlight il manque la navigation du haut que jโai du bricoler ๐
20.12.2024 19:46 โ ๐ 1 ๐ 0 ๐ฌ 1 ๐ 0Oh รงa va ๐
Les exemples eux mรชmes sont pas compliquรฉs, mais la lib qui les rend aussi simples a demandรฉ un peu de rรฉflexion ๐
The documentation is live !
Well, a first draft... only examples for now. I will continue to add features and break a few things before writing the documentation.
Any feedback on these first examples would be very appreciated ๐
usegl.vercel.app
#WebGL #buildInPublic