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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Ken Wagatsuma
November 07, 2015
Programming
4k
0
Share
Hack Atom with Node.js
LT Presentation on Node Tokyo Gakuen 2015 (Tokyo Node Festival)
http://nodefest.jp/2015/
Ken Wagatsuma
November 07, 2015
More Decks by Ken Wagatsuma
See All by Ken Wagatsuma
Pregel Graph Compute Engines - Supersteps Exampls
kenju
0
240
Kafka on Kubernetes with Strimzi
kenju
0
200
AWS DynamoDB Accelerator (DAX) 101
kenju
2
7.3k
Moden browser introduction
kenju
1
460
Cookpad summer internship 2019 - API
kenju
0
10k
Introduction to Design Patterns
kenju
0
130
GraphQL Asia 2019 "Re-architecture of a decade-old app with BFF/GraphQL"
kenju
0
9.3k
Introduction to TypeScript
kenju
0
780
Introduction to Programmatic Ad
kenju
0
290
Other Decks in Programming
See All in Programming
「速くなった気がする」をデータで疑う
senleaf24
0
180
AI時代のPhpStorm最新事情 #phpcon_odawara
yusuke
0
190
iOS機能開発のAI環境と起きた変化
ryunakayama
0
180
KagglerがMixSeekを触ってみた
morim
0
390
ファインチューニングせずメインコンペを解く方法
pokutuna
0
310
瑠璃の宝石に学ぶ技術の声の聴き方 / 【劇場版】アニメから得た学びを発表会2026 #エンジニアニメ
mazrean
0
250
AIエージェントで業務改善してみた
taku271
0
520
Server-Side Kotlin LT大会 vol.18 [Kotlin-lspの最新情報と Neovimのlsp設定例]
yasunori0418
1
140
2026_04_15_量子計算をパズルとして解く
hideakitakechi
0
110
mruby on C#: From VM Implementation to Game Scripting (RubyKaigi 2026)
hadashia
2
370
forteeの改修から振り返るPHPerKaigi 2026
muno92
PRO
3
290
「話せることがない」を乗り越える 〜日常業務から登壇テーマをつくる思考法〜
shoheimitani
4
800
Featured
See All Featured
Building Applications with DynamoDB
mza
96
7k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
130
4 Signs Your Business is Dying
shpigford
187
22k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Become a Pro
speakerdeck
PRO
31
5.9k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
180
Reality Check: Gamification 10 Years Later
codingconduct
0
2.1k
Visualization
eitanlees
150
17k
Everyday Curiosity
cassininazir
0
200
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
180
Automating Front-end Workflow
addyosmani
1370
200k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.9k
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: ->