Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Introducing Riot.js and about @4
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
kkeeth
June 23, 2018
Programming
650
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Introducing Riot.js and about @4
kkeeth
June 23, 2018
More Decks by kkeeth
See All by kkeeth
Programming to play with p5.js
clown0082
0
120
とある EM の初めての育休からの学び
clown0082
1
6k
The history of Javascript frameworks: changes in front-end design philosophy
clown0082
2
260
Visually experience the beauty of mathematics with p5.js
clown0082
1
3.4k
Rediscover the joy of coding with Creative Coding
clown0082
0
2k
全員が意思決定する会社で開発者体験や生産性を見る大変さについて
clown0082
0
680
JavaScript × Mathematics go to Digital Art
clown0082
1
480
In-house study group at YUMEMI
clown0082
0
250
Playing Ionic Logo by p5.js
clown0082
0
370
Other Decks in Programming
See All in Programming
Railsのためのパスキー実践入門 〜マルチテナントSaaSでの意思決定〜
utakaha
2
650
phperだってパンチカードでコーディングしたい
o0h
PRO
0
340
ActionController meets Protocol Buffers
sorah
0
540
Railsバージョンを4倍にした話
optim
0
430
[ハンズオン]AIへの指示だけで「五目並べ」を作ってみよう
satoshi256kbyte
1
380
Vue Fes Japan の “作る側”に関わってみて
naokihaba
0
160
設計次第でAIコードの読む量は減らせる / designing-for-code-reading
minodriven
35
17k
Herb in Rails 8.2: Your ERB views, now HTML-aware @ Rails World 2026, Austin, Texas
marcoroth
0
220
contenteditable と日本語入力に向き合う
colorful12
0
200
IBM Bob でAI駆動開発『QC-Playbook』
ichirokano2
0
110
[JA] Domain Modeling with Vanilla Rails: 「操作」から再考するRailsの設計論
yasaichi
2
350
全ての永続トークンを、生まれる前に消し去りたい!
sylph01
2
960
Featured
See All Featured
Designing for Timeless Needs
cassininazir
1
530
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
750
Chasing Engaging Ingredients in Design
codingconduct
0
360
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.6k
Docker and Python
trallard
47
4.2k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
330
Odyssey Design
rkendrick25
PRO
2
870
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
69
67k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.9k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
600
Building Flexible Design Systems
yeseniaperezcruz
330
41k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
890
Transcript
Introducing Riot.js and about @4 ʲୈ2ճʳReactʢJSϑϨʔϜϫʔΫଞʣx ϏΞόογϡ ॳ৺ऀษڧձ inळ༿ݪ
Who am I
Basic Information const my_info = { ɹ : ‘܂ݪਔ’, ɹ
: ‘Yumemi, Inc.’, : ‘@kuwahara_jsri’, : ‘k-kuwahara’, : ‘clown0082’ }
Communities translator staff staff
Communities github.com/k-kuwahara
⚠Caution⚠ will appear frequently in this slide.
What is ?
None
Characteristics ‣ Custom tags(Component based) ‣ Simple syntax and minimalistic
Custom tag <app> <h3>{ opts.title }</h3> <ul> <li each={ techs
}>{ name }</li> </ul> <script> this.techs = [ { name: 'HTML' }, { name: 'JavaScript' }, { name: 'CSS' } ] </script> <style> :scope { font-size: 2rem } ul { color: #999 } </style> </app>
Custom tag <app> <h3>{ opts.title }</h3> <ul> <li each={ techs
}>{ name }</li> </ul> <script> this.techs = [ { name: 'HTML' }, { name: 'JavaScript' }, { name: 'CSS' } ] </script> <style> :scope { font-size: 2rem } ul { color: #999 } </style> </app> HTML JS CSS
Mount <!doctype html> <html> <body> <app></app> <script src=“riot.js”></script> <script src=“app.tag”
type=“riot/tag”></script> <script> riot.mount(‘app’, {title: ‘Hello Riot.js!!’}) </script> </body> </html>
Mount <!doctype html> <html> <body> <app></app> <script src=“riot.js”></script> <script src=“app.tag”
type=“riot/tag”></script> <script> riot.mount(‘app’, {title: ‘Hello Riot.js!!’}) </script> </body> </html>
Stats of riotjs
Stats of Riot.js ‣ version: 3.10.3 ‣ github star: 13065
‣ open issues: 27 ‣ size: 10.78 kb(gzip)
Made with riot
Made with riot
Made with riot URL: http://riotjs.com/made-with-riot/
Performance of riot.js
Rendering time 10,000 rows of DOM elements
Ecosystem for
Ecosystem ɾriot ɾriot-clI ɾriot-compiler ɾriot-observable ɾriot-tmpl Basics SPA (routing) ɾriot-route
ɾriot-view-router ɾriot-routehandler ɾriotgear-router ɾredux-riot-router State management ɾRiotControl ɾriotify ɾriotx ɾobseriot Compile ɾgulp-riot ɾriot-tag-loader ɾriotjs-loader ɾriotify ɾrollup-plugin-riot Designs, Animations ɾriot-mui ɾnest-ui ɾriot-bootstrap ɾriot-fontawesome ɾsemantic-ui-riot ɾriot-animate ɾriot-flipcard ɾbabel-preset-es2015-riot ɾriot-placeholder ɾkarma-riot ɾriot-hot-reload ɾeslint-config-riot Others
Next @4
Pick up some of the roadmap @4 ‣ “this.tags” ‣
“riot-observable” ‣ “shouldUpdate” method ‣ “:scope” → “:root” ‣ parser/compiler
Let’s Create Web Application by Riot.js !!
None