Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Hack Atom with Node.js
Search
Ken Wagatsuma
November 07, 2015
Programming
0
4k
Hack Atom with Node.js
LT Presentation on Node Tokyo Gakuen 2015 (Tokyo Node Festival)
http://nodefest.jp/2015/
Ken Wagatsuma
November 07, 2015
Tweet
Share
More Decks by Ken Wagatsuma
See All by Ken Wagatsuma
Pregel Graph Compute Engines - Supersteps Exampls
kenju
0
200
Kafka on Kubernetes with Strimzi
kenju
0
150
AWS DynamoDB Accelerator (DAX) 101
kenju
2
7.1k
Moden browser introduction
kenju
1
390
Cookpad summer internship 2019 - API
kenju
0
10k
Introduction to Design Patterns
kenju
0
74
GraphQL Asia 2019 "Re-architecture of a decade-old app with BFF/GraphQL"
kenju
0
8.9k
Introduction to TypeScript
kenju
0
710
Introduction to Programmatic Ad
kenju
0
240
Other Decks in Programming
See All in Programming
By the way Google Cloud Next 2025に行ってみてどうだった
ymd65536
0
120
fieldalignmentから見るGoの構造体
kuro_kurorrr
0
130
Ruby で作る RISC-V CPU エミュレーター / RISC-V CPU emulator made with Ruby
hayaokimura
5
590
カウシェで Four Keys の改善を試みた理由
ike002jp
1
120
Vibe Coding の話をしよう
schroneko
14
3.7k
Serving TUIs over SSH with Go
caarlos0
0
600
実践Webフロントパフォーマンスチューニング
cp20
45
10k
読書シェア会 vol.4 『ダイナミックリチーミング 第2版』
kotaro666
0
110
バイラテラルアップサンプリング
fadis
2
190
開発者フレンドリーで顧客も満足?Platformの秘密
algoartis
0
180
VitestのIn-Source Testingが便利
taro28
8
2.4k
状態と共に暮らす:ステートフルへの挑戦
ypresto
3
1.1k
Featured
See All Featured
KATA
mclloyd
29
14k
Thoughts on Productivity
jonyablonski
69
4.6k
Unsuck your backbone
ammeep
671
57k
Building a Modern Day E-commerce SEO Strategy
aleyda
40
7.2k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
5
590
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.8k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Fontdeck: Realign not Redesign
paulrobertlloyd
84
5.5k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
We Have a Design System, Now What?
morganepeng
52
7.6k
Navigating Team Friction
lara
185
15k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Transcript
Hack Atom w/ Node Kenju Wagatsuma
/* * Introduce Myself * * @kenjuwagatsuma */
'me' = { name : 'Kenju Wagatsuma ( KJ )’,
}
'me' = { name : 'Kenju Wagatsuma ( KJ )’,
company : 'Recruit Technologies Co.,LTD.', }
'me' = { name : 'Kenju Wagatsuma ( KJ )’,
company : 'Recruit Technologies Co.,LTD.', profession : 'Android Development', }
'me' = { name : 'Kenju Wagatsuma ( KJ )’,
company : 'Recruit Technologies Co.,LTD.', profession : 'Android Development', career : { 2011 : 'Graphic Designer ( PS, AI, ID )' 2013 : 'Web Designer ( HTML+CSS, jQuery)' 2014 : 'Web Engineer ( JavaScript )' 2015 : 'Programmer ( Java/Android )' } }
Me * Node =
Me * Node = Not Professional (Just for fun)
None
None
None
None
None
None
None
None
None
None
/* * What Atom? */
Atom is: -> ❖ Project supported by GitHub
Atom is: -> ❖ Project supported by GitHub ❖ Specialized
variant of Chromium designed to be a text editor
Atom is: -> ❖ Project supported by GitHub ❖ Specialized
variant of Chromium designed to be a text editor ˕ asset pipelines
Atom is: -> ❖ Project supported by GitHub ❖ Specialized
variant of Chromium designed to be a text editor ˕ asset pipelines ˕ access to local files
Atom is: -> ❖ Project supported by GitHub ❖ Specialized
variant of Chromium designed to be a text editor ˕ asset pipelines ˕ access to local files ˕ asynchronous module definition
Atom is: -> ❖ Project supported by GitHub ❖ Specialized
variant of Chromium designed to be a text editor ˕ asset pipelines ˕ access to local files ˕ asynchronous module definition ˕ script concatenation
https://speakerdeck.com/zcbenz/practice-on-embedding-node-dot-js-into-atom-editor
https://speakerdeck.com/zcbenz/practice-on-embedding-node-dot-js-into-atom-editor (Before Electron)
/* * Why Atom? */
Why Atom: -> ❖ Play with Node API ❖ FS,
HTTP, Stream, Async methods…
Why Atom: -> ❖ Play with Node API ❖ FS,
HTTP, Stream, Async methods… ❖ Always running on the newest Chromium ❖ No more polyfill ❖ Can ignore browser compatibility
Why Atom: -> ❖ Play with Node API ❖ FS,
HTTP, Stream, Async methods… ❖ Always running on the newest Chromium ❖ No more polyfill ❖ Can ignore browser compatibility ❖ Support from GitHub teams ❖ Long-term development
/* * How Atom? */
❖ 1. Contribute to Atom Editor ❖ 2. Contribute to
Atom Packages ❖ 3. Write Your Own Atom Package You can: ->
❖ 1. Contribute to Atom Editor ❖ 2. Contribute to
Atom Packages ❖ 3. Write Your Own Atom Package You can: ->
* * @param x : ?(mental) * @param y :
?(skill) * @param z : ?(grammer) * @return ? */ contribute(x, y, z): -> while x.isExist doYourBest
* * @param x : Passion * @param y :
Node * @param z : CoffeScript * @return ? */ contribute(x, y, z): -> while x.isExist doYourBest
❖ 1. Contribute to Atom Editor ❖ 2. Contribute to
Atom Packages ❖ 3. Write Your Own Atom Package You can: ->
None
None
/* * We Need Your Help! */
❖ 1. Contribute to Atom Editor ❖ 2. Contribute to
Atom Packages ❖ 3. Write Your Own Atom Package You can: ->
Atom API: -> Clipboard Color Cursor Directory File GitRepository KeymapManager
TextBuffer ThemeManager …etc
Get Started: -> ‘cmd-shift-p’ then ‘Package Generator’ … That’s it!
Package: -> This is the basic package layout. `lib` file
is the core of the packages: ***-view.coffee ***.coffee
Debug: -> It’s based on Chromium, right?
Test: -> Oh, my princess Jasmine—
Publish: -> `apm publish` is what you’re looking for. Run
`apm publish -h` for help
/* * Conclusion */
❖ 1. Contribute to Atom Editor → Please do if
you can :) ❖ 2. Contribute to Atom Packages → A lot of rooms for improvement ❖ 3. Write Your Own Atom Package → Super Easy You can: ->
Read this: -> https://atom.io/docs/v1.1.0/ Atom Flight Manual
Ask Here: -> https://discuss.atom.io/ Atom Discuss
Join us: -> https://atomio.slack.com/ Atom Slack
Atom is really hackable
Atom is really hackable powered by Node.js
Atom is really hackable powered by Node.js and you are
Node Professional!
None
http://bit.ly/nodefest2015kj Thanks;
/* * Appendix */
❖ Release Notes ➡ https://atom.io/releases ❖ API References ➡ https://atom.io/docs/api/v1.1.0/Atom
❖ Blog ➡ http://blog.atom.io/ References: ->
❖ “node-webkit” by Cheng Zhao ➡ https://speakerdeck.com/zcbenz/ node-webkit-app-runtime-based-on- chromium-and-node-dot-js ❖
“Atom” by John Nunemaker ➡ https://speakerdeck.com/ jnunemaker/atom Best Slides: ->