All Projects → latitov → JS_HTML_Widgets

latitov / JS_HTML_Widgets

Licence: other
Easily create widget objects of arbitrary complexity

Programming Languages

javascript
184084 projects - #8 most used programming language
HTML
75241 projects
CSS
56736 projects

Projects that are alternatives of or similar to JS HTML Widgets

rottenjs
An all-in-one (2.6kb) Javascript library for web development
Stars: ✭ 15 (-6.25%)
Mutual labels:  ui-design, ui-development
YouTube-UI
A recreation of UI of the YouTube app in Android
Stars: ✭ 35 (+118.75%)
Mutual labels:  ui-design, ui-development
Daisyui
⭐️ ⭐️ ⭐️ ⭐️ ⭐️  Tailwind Components
Stars: ✭ 382 (+2287.5%)
Mutual labels:  ui-design, ui-framework
meshery.io
Site for Meshery, the cloud native management plane
Stars: ✭ 135 (+743.75%)
Mutual labels:  ui-design, ui-development
Awesome flutter ui
This repository demonstrates use of various widgets in flutter and tricks to create beautiful UI elements in flutter for Android and IOS
Stars: ✭ 120 (+650%)
Mutual labels:  ui-design, widgets
Flutter filter selection
UI challenge for creating a filter selection screen with animations
Stars: ✭ 17 (+6.25%)
Mutual labels:  ui-design
cactoos-matchers
Elegant object-oriented hamcrest matchers
Stars: ✭ 30 (+87.5%)
Mutual labels:  oop
awesome-software-architecture
A curated list of awesome articles, videos, and other resources to learn and practice software architecture, patterns, and principles.
Stars: ✭ 1,594 (+9862.5%)
Mutual labels:  oop
Whatsappui
WhatsApp UI in Xamarin.Forms
Stars: ✭ 251 (+1468.75%)
Mutual labels:  ui-design
php-mvc-skeleton
A PHP OOP web application skeleton that uses MVC architectural pattern to create a basic application that contains login and multi language systems and can be used in any web project.
Stars: ✭ 46 (+187.5%)
Mutual labels:  oop
tkmacosx
Tkmacosx is a Python library extension to the Tkinter module. Change background and foreground colors of a Button, Use ColorVar to change colors of multiple widgets just like StringVar, and much more.
Stars: ✭ 48 (+200%)
Mutual labels:  widgets
cactoos-crypto
Crypto extensions for Cactoos library
Stars: ✭ 15 (-6.25%)
Mutual labels:  oop
Design-Patterns
Project for learning and discuss about design patterns
Stars: ✭ 16 (+0%)
Mutual labels:  oop
jet
Jet is a simple OOP, dynamically typed, functional language that runs on the Erlang virtual machine (BEAM). Jet's syntax is Ruby-like syntax.
Stars: ✭ 22 (+37.5%)
Mutual labels:  oop
PolishAnnoyanceFilters
Polskie Filtry Elementów Irytujących ukrywają i blokują wyskakujące okienka, widgety, newslettery, powiadomienia push, strzałki, niezgodne z tematem artykułów otagowane linki wewnętrzne i inne drażniące elementy (Polskie Filtry RODO-Ciasteczkowe są już w nich zawarte).
Stars: ✭ 45 (+181.25%)
Mutual labels:  widgets
device-epd
E-Paper Display Device
Stars: ✭ 26 (+62.5%)
Mutual labels:  ui-design
Flutter firebase
Flutter UI with different widgets and firebase authentication email and gmail
Stars: ✭ 254 (+1487.5%)
Mutual labels:  ui-design
IC-InteractiveConstructor
Construtor Interativo de website.
Stars: ✭ 15 (-6.25%)
Mutual labels:  ui-design
insta-story
🤖 📷 Instagram Story Downloader Anonymously - PHP
Stars: ✭ 25 (+56.25%)
Mutual labels:  oop
LuaKit
Lua核心工具包,包含对面向对象,组件系统(灵活的绑定解绑模式),mvc分模块加载,事件分发系统等常用模式的封装。同时提供打印,内存泄漏检测,性能分析等常用工具类。
Stars: ✭ 112 (+600%)
Mutual labels:  oop

JS_HTML_Widgets

Easily create widget objects of arbitrary complexity

By Leonid Titov, 2019-09-23

Please download, and open the Widget_v3.md.html in a browser, and read. Or, go to the Githab Pages of this https://latitov.github.io/JS_HTML_Widgets/, then follow the link to whitepaper from there.

What you'll get:

  • very interesting article about this;
  • snippets of code and examples;
  • ready to use... framework in vanilla JS, to create widgets of your own;

Note: this version is outdated. If you are interested in a production ready one, and in a help to migrate to it, please contact me.

Here's an example of what it look like.

A widget code

// inside a js file of a widget class
(function () {
	var Module_Path = ["WidgetsLib", "a1", "Button"];
	var curr = this;
	Module_Path.forEach(function(i){if (curr[i] == null) {addChildToTree(curr, i, {})} curr = curr[i]});

	specialize_with(curr, {
		CSS_Literal: `
			.{{WIDGET_CLASS_ID}}_Something {
				color: hsl(0, 0%, 20%);
			}
		`,
		HTML_Literal: `
			<div onclick="{{WIDGET_INSTANCE}}.onclick(event)"
				class="{{WIDGET_CLASS_ID}}_Something"
			>
			SOME SUPER COOL WIDGET
			</div>
		`,
		new: typical_widget_new,
		WidgetSpecializer: {
			remove: typical_widget_remove,
		}
	});
})();

An HTML:

<div id="w1" style="background-color: hsl(200, 50%, 50%);"></div>

<script src="WidgetsLib/a1/Button/js"></script>

A user JavaScript code:

var b1 = WidgetsLib.a1.Button.new("w1", {
	onclick: function(ev) {
		ev.target.style.color = "#ffff00";
		console.log("====== HERE");
	}
});

Download and enjoy reading and using it. Then try demo_test.html, and see inside it.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].