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
Introducing Mint Source
Search
Andy Appleton
November 24, 2011
Technology
1
400
Introducing Mint Source
Talk given at the lnug meetup on 23rd November 2011
Andy Appleton
November 24, 2011
Tweet
Share
More Decks by Andy Appleton
See All by Andy Appleton
Done is better than perfect
appltn
0
570
Rage against the state machine
appltn
1
480
Modular UI with (Angular || Ember)
appltn
0
110
Building web apps with Express
appltn
4
490
The Modern JavaScript Application
appltn
5
620
Object Creation Pattern Performance
appltn
1
780
Other Decks in Technology
See All in Technology
Prox Industries株式会社 会社紹介資料
proxindustries
0
210
Definition of Done
kawaguti
PRO
6
460
生成AIでwebアプリケーションを作ってみた
tajimon
2
130
AIの最新技術&テーマをつまんで紹介&フリートークするシリーズ #1 量子機械学習の入門
tkhresk
0
130
[TechNight #90-1] 本当に使える?ZDMの新機能を実践検証してみた
oracle4engineer
PRO
3
140
_第3回__AIxIoTビジネス共創ラボ紹介資料_20250617.pdf
iotcomjpadmin
0
140
Oracle Audit Vault and Database Firewall 20 概要
oracle4engineer
PRO
3
1.6k
AI技術トレンド勉強会 #1MCPの基礎と実務での応用
nisei_k
1
250
2年でここまで成長!AWSで育てたAI Slack botの軌跡
iwamot
PRO
2
380
CI/CDとタスク共有で加速するVibe Coding
tnbe21
0
230
AWS CDK 実践的アプローチ N選 / aws-cdk-practical-approaches
gotok365
4
520
ユーザーのプロフィールデータを活用した推薦精度向上の取り組み
yudai00
0
490
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Docker and Python
trallard
44
3.4k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Speed Design
sergeychernyshev
31
1k
A Tale of Four Properties
chriscoyier
160
23k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
The Pragmatic Product Professional
lauravandoore
35
6.7k
Typedesign – Prime Four
hannesfritz
42
2.7k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Transcript
MINT SOURCE
None
Andy Appleton @appltn http://mintdigital.com
What, why?
Node.js - Redis - Heroku CoffeeScript - Socket.IO
Simple Heroku deploy $ git clone
[email protected]
:mintdigital/mint-source.git $ heroku create
appname --stack cedar $ git push heroku master $ heroku ps:scale web=1 $ heroku addons:add redistogo:nano $ heroku config:add NODE_ENV=production
Optional HTTP Auth $ heroku config:add AUTH_ENABLED=true $ heroku config:add
AUTH_USER=chunky $ heroku config:add AUTH_PASS=bacon
http://github.com/user/project/admin/hooks
{ "before": "5aef35982fb2d34e9d9d4502f6ede1072793222d", "repository": { "url": "http://github.com/mint-digital/mint-source", "name": "mintdigital", "description":
"A simple Node.js status board showing github commits and more.", "watchers": 5, "forks": 2, "private": 1, "owner": { "name": "mintdigital" } }, "commits": [ { "id": "41a212ee83ca127e3c8cf465891ab7216a705f59", "url": "http://github.com/mintdigital/mint-source/commit/41a212ee83ca127e3891ab7216a705f59", "author": { "email": "
[email protected]
", "name": "Andrew Appleton" }, "message": "Devs love bacon", "timestamp": "2011-11-15T14:57:17-08:00", "added": ["filepath.rb"] POST http://appname.herokuapp.com/github_prh
None
Jenkins CI http://jenkins-ci.org/
Notification Plugin (post build hooks for Jenkins) https://wiki.jenkins-ci.org/display/JENKINS/Notification+Plugin
$ heroku config:add JENKINS_ENABLED=true http://your-ci-box/job/project-name/configure
{ "name":"bacon", "url":"http://devslovebacon.com", "build":{ "number":1, "phase":"FINISHED", "status":"FAILURE", "url":"job/project/5", "fullUrl":"http://your-ci-box/job/project/5" }
} POST http://appname.herokuapp.com/jenkins_pbh
None
no HTTP auth support, so Jenkins box IP whitelisting $
heroku config:add JENKINS_IP=60.70.80.90
Discretion $ redis-cli > lpush Discretions "{\"orig\":\"secret\", \"subs\":\"public\"}"
None
Last.fm http://www.last.fm/api
POST http://appname.herokuapp.com/github_prh $ heroku config:add LASTFM_ENABLED=true $ heroku config:add LASTFM_KEY=12345...
$ heroku config:add LASTFM_USER=mintdigital Last.fm API credentials
Polling on the server, send data to clients via Socket.IO
What’s next?
app.get('/javascripts/:resource.js', (req, res) -> # Compile and serve client side
CoffeeScript on the fly filePath = "./public/javascripts/#{req.params.resource}.coffee" fs.readFile(filePath, 'utf-8', (err, data) -> res.writeHead(200, {'Content-Type': 'application/javascript'}) res.write(coffee.compile(data)) res.end() ) ) CS > JS Caching
Server Sent Events (Possibly)
More Services Tweets, Foursquare checkins Generic notification endpoint
Available now on Github https://github.com/mintdigital/mint-source
http://devslovebacon.com