#vanillajs — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #vanillajs, aggregated by home.social.
-
Электрика без Excel: считаем щиток, кабели и смету прямо в браузере — один файл, ноль зависимостей
Каждый раз когда я помогаю кому-то с электрикой, происходит одно и то же. Человек спрашивает «какой кабель на розетки?». Я говорю «2.5 мм²». Он спрашивает «а автомат?». Я говорю «C16». Потом: «а сколько метров нужно?», «а УЗО куда?», «а сколько это будет стоить?». И вот уже час объяснений, Excel непонятного происхождения и ощущение что что-то всё равно забыли. Я решил сделать инструмент который отвечает на всё сразу. Добавил комнаты, указал приборы и расстояние до щитка - нажал кнопку - получил группы, кабели, автоматы, схему щитка и смету. Без регистрации, без интернета, без установки. Получился один HTML-файл на ~1400 строк ванильного JS. https://darkenamber.github.io/electrokit/
-
-
-
React-like syntax with WebComponents.
After spending some time with Lit, I really appreciated its lightweight footprint but wasn't a fan of the class-based components. While Vue offers a great approach, I still prefer the intuitive nature of React's syntax for debugging and deterministic rendering. This led me to a challenge: could I build a UI framework using WebComponents that completely eliminates the need for transpilation?
I have written a breakdown of the concept, the architecture, and where I want to take it. I highly invite you to take a look, check out the code, and explore the live demo.
* How it works: https://positive-intentions.com/docs/projects/dim/dim-jsx-webcomponents
* Checkout the code: https://github.com/positive-intentions/dim
* Storybook demo: https://dim.positive-intentions.comPlease note, while the project is open-source, this is a personal exploration rather than an attempt to launch "yet another framework." It is not production-ready and is built for my own upcoming project migrations, but I am sharing it in hopes that the methodology is educational or interesting to the community.
I would love to hear your thoughts on this approach. Feel free to reach out if you have any questions or want to discuss the implementation details.
#WebDev #WebDevelopment #Frontend #FrontendDev #JavaScript #JS #TypeScript #TS #HTML #HTML5 #CSS #SoftwareEngineering #SoftwareEngineer #Coding #Programming #WebDesign #OpenSourceProject #IndieDev #SideProject #Tech #Technology #DevCommunity #Fediverse #FediverseDevs #WebStandards #CustomElements #ShadowDOM #VanillaJS #NoTranspiler #NoBuild #BuildStep #EsModules #ComponentDriven #UIUX #DesignSystems #TechExperiment #LearningInPublic #Developer #ComputerScience #OSS #Github #React #WebComponents #Lit #Vue #ReactJS #JSX #Storybook #TechArticle #TechBlog #TechWriting #WebDevArticles
-
React-like syntax with WebComponents.
After spending some time with Lit, I really appreciated its lightweight footprint but wasn't a fan of the class-based components. While Vue offers a great approach, I still prefer the intuitive nature of React's syntax for debugging and deterministic rendering. This led me to a challenge: could I build a UI framework using WebComponents that completely eliminates the need for transpilation?
I have written a breakdown of the concept, the architecture, and where I want to take it. I highly invite you to take a look, check out the code, and explore the live demo.
* How it works: https://positive-intentions.com/docs/projects/dim/dim-jsx-webcomponents
* Checkout the code: https://github.com/positive-intentions/dim
* Storybook demo: https://dim.positive-intentions.comPlease note, while the project is open-source, this is a personal exploration rather than an attempt to launch "yet another framework." It is not production-ready and is built for my own upcoming project migrations, but I am sharing it in hopes that the methodology is educational or interesting to the community.
I would love to hear your thoughts on this approach. Feel free to reach out if you have any questions or want to discuss the implementation details.
#WebDev #WebDevelopment #Frontend #FrontendDev #JavaScript #JS #TypeScript #TS #HTML #HTML5 #CSS #SoftwareEngineering #SoftwareEngineer #Coding #Programming #WebDesign #OpenSourceProject #IndieDev #SideProject #Tech #Technology #DevCommunity #Fediverse #FediverseDevs #WebStandards #CustomElements #ShadowDOM #VanillaJS #NoTranspiler #NoBuild #BuildStep #EsModules #ComponentDriven #UIUX #DesignSystems #TechExperiment #LearningInPublic #Developer #ComputerScience #OSS #Github #React #WebComponents #Lit #Vue #ReactJS #JSX #Storybook #TechArticle #TechBlog #TechWriting #WebDevArticles
-
Custom Elements Collection: 147 компонентов двумя строками через CDN
Как создавать веб-страницы без фреймворков, сборщиков и другого зоопарка. Технология Custom Elements появилась в браузерах в 2018-2020 годах, но долгое время незаслуженно обходилась стороной сообществом, в связи со сложностью разработки компонентов. Однако ничто не мешает использовать уже созданные компоненты с любым фреймворком. Об этом и пойдёт речь.
https://habr.com/ru/articles/1042520/
#custom_elements #web_components #custom_elements_collection #vanillajs
-
12 паттернов, которые приведут твой код в порядок
ES6 ввел синтаксис деструктурирующего присваивания — лаконичный способ распаковки значений из массивов и объектов в отдельные переменные. Это одна из тех фич, начав использовать которые, ты удивишься, как раньше без нее жил.
https://habr.com/ru/articles/1037430/
#javascript #typescript #react #vue #angular #программирование #nodejs #svelte #vanillajs
-
108 окон, 0 фреймворков, 1 Kubernetes: как команда без разработчиков построила интерактивный дом-таймлайн про ТВ 90-х
Зов джунглей, Поле чудес, Ералаш — мы сделали интерактивный дом-таймлайн про телевидение 90-х и 00-х. Под катом: как команда без разработчиков дошла от JSON-файла на VPS за $5 до корпоративного Kubernetes. Читать, пока не началась реклама
https://habr.com/ru/articles/1025152/
#vanillajs #frontend #cms #kubernetes #canvas #webp #avif #parallax #вайбкодинг #телевидение
-
Pourquoi je développe en HTML/CSS/JS sans framework ?
Autonomie : pas de dépendance à un écosystème qui peut disparaître
Transparence : clic droit → Inspecter, tout est là
Légèreté : quelques Ko, offline-first
Résilience : le code d'aujourd'hui tournera dans 20 ans
L'esprit maker appliqué au dev : comprendre, maîtriser, transmettre.
👉 https://sylvaindenis.ovh/blog/pourquoi_je_developpe_presque_tout_en_html_css_et_javascript
#WebDev #FabLab #OpenWeb #VanillaJS -
React-Like JSX Syntax for Webcomponents
TLDR: I’ve been #experimenting with react-like jsx-syntax with webcomponents to see if I could theoretically replace #React in one of my larger #software projects. It is not ready for production use, but rather a #Research exploration into #CustomElements and #ModernJS performance.
The goal was to build #FunctionalWebComponents that handle #StateManagement and #DOM updates without the overhead of a massive #JavaScript framework. By leveraging #StandardWebAPIs and #Proxy objects, I’ve managed to create a #Reactive programming model that feels familiar but stays closer to the #Platform.
Check out the full #TechnicalTutorial and #DeepDive here: https://positive-intentions.com/docs/research/Tutorials/dim/dim-functional-webcomponents
(Disclosure: this project may be getting deprecated. Sharing this because it might still be interesting or educational.)
#WebDevelopment #Frontend #BuildTheWeb #NoFramework #JS #JSX #WebStandards #Coding #ResearchAndDevelopment #VanillaJS #SoftwareEngineering #TechBlog #WebDevCommunity
-
React-Like JSX Syntax for Webcomponents
TLDR: I’ve been #experimenting with react-like jsx-syntax with webcomponents to see if I could theoretically replace #React in one of my larger #software projects. It is not ready for production use, but rather a #Research exploration into #CustomElements and #ModernJS performance.
The goal was to build #FunctionalWebComponents that handle #StateManagement and #DOM updates without the overhead of a massive #JavaScript framework. By leveraging #StandardWebAPIs and #Proxy objects, I’ve managed to create a #Reactive programming model that feels familiar but stays closer to the #Platform.
Check out the full #TechnicalTutorial and #DeepDive here: https://positive-intentions.com/docs/research/Tutorials/dim/dim-functional-webcomponents
(Disclosure: this project may be getting deprecated. Sharing this because it might still be interesting or educational.)
#WebDevelopment #Frontend #BuildTheWeb #NoFramework #JS #JSX #WebStandards #Coding #ResearchAndDevelopment #VanillaJS #SoftwareEngineering #TechBlog #WebDevCommunity
-
Czasem warto wrócić do korzeni. Takim ruchem może być świadoma rezygnacja z frameworków frontendowych i powrót do czystego #JavaScript (tzw. #VanillaJS). Jakie są tego zalety - o tym opowiada ten artykuł (i mimo wszystko mało jest o wadach).
https://thenewstack.io/why-developers-are-ditching-frameworks-for-vanilla-javascript/
-
Czasem warto wrócić do korzeni. Takim ruchem może być świadoma rezygnacja z frameworków frontendowych i powrót do czystego #JavaScript (tzw. #VanillaJS). Jakie są tego zalety - o tym opowiada ten artykuł (i mimo wszystko mało jest o wadach).
https://thenewstack.io/why-developers-are-ditching-frameworks-for-vanilla-javascript/
-
Je voulais calculer la résolution logique (viewport) à partir de la résolution physique (écran) d'un téléphone.
Je trouve un gars qui fournit une application web consistant en, tenez vous bien, 3 champs numériques et un bouton.
Rien de bien compliqué.
Bah pour ça, le type a utilisé... ReactJs, Typescript, TailwindCSS, Vite et des containers sous ZorinOS !!!!
MAIS PINAISE DE PINAISE 😡 !!!!
Pas étonnant que les gens nous jettent des cailloux !
-
#Topography rendering in single-file #HTML #Canvas and #VanillaJS webpage (<2kb).
https://www.thomasweibel.ch/topo/
#switzerland #map #mapping #geography #3d #gis #opendata #opensource #openglam #glamhack #digitalhumanities @spatialists @OpendataCH #webdev #3d #illusion #js #javascript
-
#Topography rendering in single-file #HTML #Canvas and #VanillaJS webpage (<2kb).
https://www.thomasweibel.ch/topo/
#switzerland #map #mapping #geography #3d #gis #opendata #opensource #openglam #glamhack #digitalhumanities @spatialists @OpendataCH #webdev #3d #illusion #js #javascript
-
Experimenting with #2D #topography rendering in #VanillaJS.
#switzerland #map #mapping #geography #gis #opendata #opensource #openglam #glamhack #digitalhumanities @spatialists @OpendataCH #webdev #3d #illusion #js #javascript
-
Experimenting with #2D #topography rendering in #VanillaJS.
#switzerland #map #mapping #geography #gis #opendata #opensource #openglam #glamhack #digitalhumanities @spatialists @OpendataCH #webdev #3d #illusion #js #javascript
-
My new hobby: Building #SPA with #VanillaJS Code is from an ongoing side project: #LFS Builder #JS #Developer #Development #JavaScript #LinuxFromScratch
-
My new hobby: Building #SPA with #VanillaJS Code is from an ongoing side project: #LFS Builder #JS #Developer #Development #JavaScript #LinuxFromScratch
-
r6d6: Heute haben wir ein weiteres Repo nach #codeberg migriert:
web-components
Eine kleine Sammlung von offenen WebComponents, die beinahe in allen wichtigen Frameworks wie #vuejs, #angular oder #react oder einfach auch in plain #VanillaJS laufen sollten.
Darunter auch ein kleines
codeberg-ribbon "View on Codeberg".
\__
@Codeberg #OpenSource #giveUpGitHub #diday #didit #100DaysOfCode #jek25 #39c3 -
Trong 24 ngày hackathon, tác giả ra mắt framework Vanilla JS “Funky” với 806.893 dòng code, 74 component, 35 module và hơn 8.800 test, nhờ Claude AI. Không cần React, Webpack, npm—chỉ edit‑file‑refresh. Ví dụ: Funky.Toast.show('Hello world'). #tech #javascript #hackathon #framework #vanillajs #dev #lập_trình
-
Trong 24 ngày hackathon, tác giả ra mắt framework Vanilla JS “Funky” với 806.893 dòng code, 74 component, 35 module và hơn 8.800 test, nhờ Claude AI. Không cần React, Webpack, npm—chỉ edit‑file‑refresh. Ví dụ: Funky.Toast.show('Hello world'). #tech #javascript #hackathon #framework #vanillajs #dev #lập_trình
-
IVVV Stack: kiến trúc front‑end chỉ dùng IndexedDB, Vanilla JS, HTML & CSS. Được minh hoạ bằng một ứng dụng ghi chú đơn giản, cho thấy dù khó khăn với dev hiện đại, việc dùng vanilla vẫn khả thi nếu kết hợp AI để nhanh chóng tạo prototype. #IVVV #Frontend #VanillaJS #IndexedDB #Tech #CôngNghệ #LậpTrình #WebDev
-
Grateful to the #VanillaJS team for enabling my super-minimalist #CMS.
This is the idea:
https://monastic.neocities.org/window.addEventListener("load", async (event) => {
const params = new URLSearchParams(document.location.search)
const filepath = params.get("c") ?? "index.md"
const filefetch = await fetch(filepath, {method: "GET", cache: "no-store"})
const markdown = await filefetch.text()
document.getElementById("content").innerHTML = marked.parse(markdown)
}) -
Grateful to the #VanillaJS team for enabling my super-minimalist #CMS.
This is the idea:
https://monastic.neocities.org/window.addEventListener("load", async (event) => {
const params = new URLSearchParams(document.location.search)
const filepath = params.get("c") ?? "index.md"
const filefetch = await fetch(filepath, {method: "GET", cache: "no-store"})
const markdown = await filefetch.text()
document.getElementById("content").innerHTML = marked.parse(markdown)
}) -
I just checked the stats for #BullsAndCows and I can’t stop smiling 😄
The game has been played by 1,092 people across 177 cities around the world 🌍
And guess what? I hadn’t even used hashtags until today — all direct visitors!
You’re all amazing, seriously. 💛
Next step: turning it into an app.
#IndieDev #BullsAndCows #VanillaJS #GameDev -
I just checked the stats for #BullsAndCows and I can’t stop smiling 😄
The game has been played by 1,092 people across 177 cities around the world 🌍
And guess what? I hadn’t even used hashtags until today — all direct visitors!
You’re all amazing, seriously. 💛
Next step: turning it into an app.
#IndieDev #BullsAndCows #VanillaJS #GameDev -
October is more a Halloween month, less a "snow & snowflakes" time but that did not keep me from writing a #VanillaJS snowflake generator for #WeirdWebOctober https://artlung.com/wwo/29/
-
October is more a Halloween month, less a "snow & snowflakes" time but that did not keep me from writing a #VanillaJS snowflake generator for #WeirdWebOctober https://artlung.com/wwo/29/
-
Das Wandern ist des Schweizers Lust: "Mont" ist eine #AugmentedReality-#Webapp, die Schweizer Berggipfel und Hügelkuppen benennt und auf dem Handybildschirm anzeigt (iOS only).
https://www.thomasweibel.ch/mont2/
Endlich ist nun auch mein Paper über die verwendete Technik erschienen:
https://phaidra.fhstp.ac.at/detail/o:7234
Für alle, die hoch hinaus wollen - mit #VanillaJS oder in Wanderschuhen.
#html5 #ar #geoinformatics #geography #topography #ios #opendata #geodata #swisstopo #switzerland @OpendataCH
-
Das Wandern ist des Schweizers Lust: "Mont" ist eine #AugmentedReality-#Webapp, die Schweizer Berggipfel und Hügelkuppen benennt und auf dem Handybildschirm anzeigt (iOS only).
https://www.thomasweibel.ch/mont2/
Endlich ist nun auch mein Paper über die verwendete Technik erschienen:
https://phaidra.fhstp.ac.at/detail/o:7234
Für alle, die hoch hinaus wollen - mit #VanillaJS oder in Wanderschuhen.
#html5 #ar #geoinformatics #geography #topography #ios #opendata #geodata #swisstopo #switzerland @OpendataCH
-
https://css-tricks.com/scroll-triggered-animation-vanilla-javascript/ - trigger #JavaScript and #CSS from user scroll in #VanillaJS. Nice walk-through of IntersectionObserver API https://github.com/0shuvo0.
-
https://css-tricks.com/scroll-triggered-animation-vanilla-javascript/ - trigger #JavaScript and #CSS from user scroll in #VanillaJS. Nice walk-through of IntersectionObserver API https://github.com/0shuvo0.
-
https://github.com/YALDAKHOSHPEY/Calculator_pro - a simple, stylish calculator in #VanillaJS. No frameworks, no bundling, just raw #JavaScript. Nice work https://www.linkedin.com/in/yalda-twin.
-
https://github.com/YALDAKHOSHPEY/Calculator_pro - a simple, stylish calculator in #VanillaJS. No frameworks, no bundling, just raw #JavaScript. Nice work https://www.linkedin.com/in/yalda-twin.
-
OAuth in VanillaJS: Mind your encodings
https://blog.narf.ssji.net/2025/07/30/oauth-in-vanillajs-mind-your-encodings/
I wrote an implementation of the OAuth Authorisation Grant flow in VanillaJS. It worked pretty well except for some mismatch in String encodings. tl;dr: use `String.fromCharCode` over `TextDecoder` if you want to use `atob`. Or wait for `Uint8Array.toBase64`.
-
我整理了一下vanilla js 背后的有趣故事 | what is vanilla js
不知道你有没有在网上看见过 #vanillajs / vanilla HTML 这样的表述,我时不时的看见但是又不知道是什么意思,前几天又看见一个数据库产品的文档中提到 vanilla js 的使用方法,就去探索了一番。
vanilla,意思是香草,在 vanilla js 这个表述中表示 plain,standard,你可以理解成纯血原生 #Javascript,不需要任何第三方库,只使用 JS 标准功能和语法。
我写了一篇公众号,讲述背后的有趣故事关于为什么叫这个名字,以及还有人专门给这个【 JS 库】做了一个调侃味极浓的官网。
-
React-like functional webcomponents, but with vanilla HTML, JS and CSS
Introducing Dim – a new #Framework that brings #ReactJS-like functional #JSX-syntax with #VanillaJS. Check it out here:
🔗 Project: https://github.com/positive-intentions/dim
🔗 Website: https://dim.positive-intentions.comMy journey with #WebComponents started with Lit, and while I appreciated its native browser support (less #Tooling!), coming from #ReactJS, the class components felt like a step backward. The #FunctionalProgramming approach in React significantly improved my #DeveloperExperience and debugging flow.
So, I set out to build a thin, functional wrapper around #Lit, and Dim is the result! It's a #ProofOfConcept right now, with "main" #Hooks similar to React, plus some custom ones like useStore for #EncryptionAtRest. (Note: #StateManagement for encryption-at-rest is still unstable and currently uses a hardcoded password while I explore #Passwordless options like #WebAuthn/#Passkeys).
You can dive deeper into the #Documentation and see how it works here:
📚 Dim Docs: https://positive-intentions.com/docs/category/dimThis #OpenSource project is still in its early stages and very #Unstable, so expect #BreakingChanges. I've already received valuable #Feedback on some functions regarding #Security, and I'm actively investigating those. I'm genuinely open to all feedback as I continue to develop it!
#FrontendDev #JSFramework #Innovation #Coding #Programmer #Tech
-
React-like functional webcomponents, but with vanilla HTML, JS and CSS
Introducing Dim – a new #Framework that brings #ReactJS-like functional #JSX-syntax with #VanillaJS. Check it out here:
🔗 Project: https://github.com/positive-intentions/dim
🔗 Website: https://dim.positive-intentions.comMy journey with #WebComponents started with Lit, and while I appreciated its native browser support (less #Tooling!), coming from #ReactJS, the class components felt like a step backward. The #FunctionalProgramming approach in React significantly improved my #DeveloperExperience and debugging flow.
So, I set out to build a thin, functional wrapper around #Lit, and Dim is the result! It's a #ProofOfConcept right now, with "main" #Hooks similar to React, plus some custom ones like useStore for #EncryptionAtRest. (Note: #StateManagement for encryption-at-rest is still unstable and currently uses a hardcoded password while I explore #Passwordless options like #WebAuthn/#Passkeys).
You can dive deeper into the #Documentation and see how it works here:
📚 Dim Docs: https://positive-intentions.com/docs/category/dimThis #OpenSource project is still in its early stages and very #Unstable, so expect #BreakingChanges. I've already received valuable #Feedback on some functions regarding #Security, and I'm actively investigating those. I'm genuinely open to all feedback as I continue to develop it!
#FrontendDev #JSFramework #Innovation #Coding #Programmer #Tech
-
Does anyone have good reading on how major frameworks make their SPA url router? I'm not talking about a hash router, I'd like to see how (with the server configured properly) the JS handles all the things (history pop state changes, link clicks, etc)
-
Does anyone have good reading on how major frameworks make their SPA url router? I'm not talking about a hash router, I'd like to see how (with the server configured properly) the JS handles all the things (history pop state changes, link clicks, etc)
-
@QueerMatters #HTML #CSS #VanillaJS and Nunjucks all along https://github.com/teotimepacreau/www.teotimepacreau.fr
-
@QueerMatters #HTML #CSS #VanillaJS and Nunjucks all along https://github.com/teotimepacreau/www.teotimepacreau.fr
-
Teskoanno is now live! My #threejs powered 3D N-Body simulator is now up - it's a dev build, and not optimised but it works! I tested it on mobile - UI needs to work, but runs well on my Pixel 8 Pro.
Would love to get #feedback
https://tanepiper.github.io/teskooano/
#gamedev #astronomy #webDev #webComponents #vanillaJS #opensource
(Bonus debug tools screenshot)
-
Teskoanno is now live! My #threejs powered 3D N-Body simulator is now up - it's a dev build, and not optimised but it works! I tested it on mobile - UI needs to work, but runs well on my Pixel 8 Pro.
Would love to get #feedback
https://tanepiper.github.io/teskooano/
#gamedev #astronomy #webDev #webComponents #vanillaJS #opensource
(Bonus debug tools screenshot)
-
DOM-Scope: создание искусственных областей видимости и управление идентификаторами элементов
В процессе работы с HTML-документами часто возникает необходимость получить доступ к конкретным элементам DOM. Обычно это делается с помощью уникальных идентификаторов, которые присваиваются нужным элементам. Однако существует вероятность, что в большом документе может оказаться несколько элементов с одинаковыми идентификаторами, что может привести к путанице. Чтобы избежать этой проблемы, я разработал библиотеку dom-scope, которая позволяет создавать искусственные области видимости (скоупы) внутри DOM. Я хочу поделиться своим решением с сообществом Хабра.
-
@kajou solution 100% #HTML #CSS #VanillaJS mais sans le défilement de mon côté (flèches et fonctionnalité de défilement à implémenter de ton côté) :
- insertion dynamique d'un clone de l'image dans un <dialog> via JS
- style image plein écran via CSSTout est documenté ici : https://github.com/teotimepacreau/eleventy-plugin-img-magnifier/blob/master/.eleventy.js
En usage sur les images de mon blog
-
bon, #help, je sais pas comment formuler ça efficacement pour une recherche web alors je vais juste poser ma question ici, avec plein de mots :
Comment je peux faire un carousel d'images en popup - je m'explique.
J'ai une miniature, et au clic je veux que ça ouvre un modal ou whatever, par-dessus la fenêtre active, qui contient le reste des images du carousel. Avec les flèches de navigation itout#HMTL #CSS #VanillaJS only !
petit schéma pour visualiser l'idée
Edit : j'ai la solution !!
-
Is there a suite of vanilla JS web components implemented as classes somewhere on https://npmjs.org? Like, what if I want a Dark Mode switch or a tags input field with auto-complete that I can import (via import maps, of course), is there a project or namespace where I could find those?