With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js. Learn more →
Top 23 vanilla-j Open-Source Projects
-
vanilla-lazyload
LazyLoad is a lightweight, flexible script that speeds up your website by deferring the loading of your below-the-fold images, backgrounds, videos, iframes and scripts to when they will enter the viewport. Written in plain "vanilla" JavaScript, it leverages IntersectionObserver, supports responsive images and enables native lazy loading.
-
SurveyJS
Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
-
mixitup
A high-performance, dependency-free library for animated filtering, sorting, insertion, removal and more
-
van
🍦 VanJS: World's smallest reactive UI framework. Incredibly Powerful, Insanely Small - Everyone can build a useful UI app in an hour.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
watching-you
watching-you is a javascript library for building animations that watch anything on DOM 👀.
-
tom-select
Tom Select is a lightweight (~16kb gzipped) hybrid of a textbox and select box. Forked from selectize.js to provide a framework agnostic autocomplete widget with native-feeling keyboard navigation. Useful for tagging, contact lists, etc.
-
create-chrome-ext
🍺 Scaffolding your Chrome extension! Boilerplates: react \ vue \ svelte \ solid \ preact \ alpine \ lit \ stencil \ inferno \ vanilla
-
replace-jquery
Automatically finds jQuery methods from existing projects and generates vanilla js alternatives.
-
svelte-ionic-app
Ionic UI showcase app - try Ionic UI and directly go to API or source code (Svelte, Angular, Vue, Vanilla and React)
-
surreal
🗿 Mini jQuery alternative. Dependency-free animations. Locality of Behavior. Use one element or arrays transparently. Pairs with htmx. Vanilla querySelector() but better!
-
loading-attribute-polyfill
Fast and lightweight dependency-free vanilla JavaScript polyfill for native lazy loading / the awesome loading='lazy'-attribute.
-
wordsandbuttons
A growing collection of interactive tutorials, demos, and quizzes about maths, algorithms, and programming.
-
lemonadejs
LemonadeJS is a 7KB reactive JavaScript micro-library offering two-way data binding. It is dependency-free, does not require transpiling, and works with webpack or directly in the browser.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
Project mention: Next 13: how to disable scrolling on body when modal is open? | /r/nextjs | 2023-04-27i built a modal system at work that uses this, except using https://github.com/willmcpo/body-scroll-lock to lock/unlock when a modal is displayed...you have to also limit scrolling on the html tag for full support across all devices
Depends on what you consider minimal, but I enjoy working with PocketBase and VanJS[1]. However there is no component library built in (if this is what you were asking for).
[1]: https://vanjs.org/
Project mention: Anything you wish there was an open source solution for? | /r/selfhosted | 2023-05-16
What specifically are you building? Is it a browser extension?? Typically, I begin the development of extensions by using boilerplate code. Recently, I've been using the create-chrome-ext tool to generate boilerplate code for extensions, including one called Netflix Hotkeys.
Project mention: Svelte Native: The Svelte Mobile Development Experience | news.ycombinator.com | 2024-01-29An alternative I’ve been enjoying is @tommertom’s Ionic port (+ Capacitor) for native integration: https://github.com/Tommertom/svelte-ionic-app
Love that this happened, but I've been waiting for 4.0 soooo long that I ended up making my own modern jQuery: https://github.com/gnat/surreal
key differences:
* Vanilla first. 1 file. Under 340 lines.
Meanwhile, all the pages on https://wordsandbuttons.online/ with all the animation and interactivity are still below 64 KB.
This one, for example, https://wordsandbuttons.online/trippy_polynomials_in_arctang... is 51 KB.
And the code is not at all economical. It's 80% copy-paste with little deviations. There is no attempt to save by being clever either, it's all just good old vanilla JS. And no zipping, no space reduction. The code is perfectly readable when opened with the "View page source" button.
The trick is - zero dependency policy. No third party, no internal. All the code you need, you get along with the HTML file. Paradoxically, in the long run, copy-paste is a bloat preventor, not a bloat cause.
vanilla-js related posts
- VanJS App Builder: A GPT That Builds Web Apps with VanJS
- Cami.js - A No Build, Web Component Based UI Framework
- Show HN: Cami.js – A No Build, Web Component Based Reactive Framework
- Leaders Are Tool Builders: Why I Wrote My Own JavaScript UI Framework
- An Improved Unix Terminal – Demo App for VanJS
- VanJS: A 0.9kB Grab 'n Go Reactive UI Framework without React/JSX
- VanJS - World's smallest reactive UI framework, enabling you to build UI app within an hour, no tool required
-
A note from our sponsor - SurveyJS
surveyjs.io | 22 Apr 2024
Index
What are some of the best open-source vanilla-j projects? This list will help you:
Project | Stars | |
---|---|---|
1 | vanilla-lazyload | 7,562 |
2 | Choices.js | 5,986 |
3 | imaskjs | 4,707 |
4 | mixitup | 4,500 |
5 | body-scroll-lock | 4,007 |
6 | van | 3,427 |
7 | formio | 1,947 |
8 | formio.js | 1,784 |
9 | watching-you | 1,569 |
10 | learn-vanilla-js | 1,505 |
11 | tom-select | 1,454 |
12 | suneditor | 1,345 |
13 | create-chrome-ext | 1,207 |
14 | replace-jquery | 1,160 |
15 | modern-todomvc-vanillajs | 1,063 |
16 | jkanban | 1,041 |
17 | svelte-toast | 760 |
18 | easytimer.js | 753 |
19 | svelte-ionic-app | 713 |
20 | surreal | 652 |
21 | loading-attribute-polyfill | 614 |
22 | wordsandbuttons | 474 |
23 | lemonadejs | 364 |
Sponsored