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
Introduction into Harp
Search
Alexander Reelsen
December 04, 2014
Technology
1
500
Introduction into Harp
A quick introduction into harp. Hold at the MNUG Meetup in Munich in December 2014
Alexander Reelsen
December 04, 2014
Tweet
Share
More Decks by Alexander Reelsen
See All by Alexander Reelsen
Elasticsearch: From Keyword Search To Data Science
spinscale
0
160
Evolving Search at an ecommerce marketplace
spinscale
0
180
The new generation of data stores
spinscale
0
260
Search Evolution - Keeping up with the hype?
spinscale
0
390
Mirror mirror... what am I typing next?
spinscale
0
480
The New Generation of Data Stores
spinscale
0
240
Elasticsearch: Distributed Search Under the Hood
spinscale
0
170
Working distributed - but how?
spinscale
0
210
Implementing a custom aws lambda runtime using Crystal
spinscale
0
770
Other Decks in Technology
See All in Technology
Function Body Macros で、SwiftUI の View に Accessibility Identifier を自動付与する/Function Body Macros: Autogenerate accessibility identifiers for SwiftUI Views
miichan
2
180
初めてAWSを使うときのセキュリティ覚書〜初心者支部編〜
cmusudakeisuke
1
240
OCI Oracle Database Services新機能アップデート(2025/06-2025/08)
oracle4engineer
PRO
0
110
エラーとアクセシビリティ
schktjm
1
1.2k
MCPで変わる Amebaデザインシステム「Spindle」の開発
spindle
PRO
3
3.2k
Rustから学ぶ 非同期処理の仕組み
skanehira
1
130
5分でカオスエンジニアリングを分かった気になろう
pandayumi
0
240
データアナリストからアナリティクスエンジニアになった話
hiyokko_data
2
450
【実演版】カンファレンス登壇者・スタッフにこそ知ってほしいマイクの使い方 / 大吉祥寺.pm 2025
arthur1
1
830
Webブラウザ向け動画配信プレイヤーの 大規模リプレイスから得た知見と学び
yud0uhu
0
230
これでもう迷わない!Jetpack Composeの書き方実践ガイド
zozotech
PRO
0
400
AIのグローバルトレンド2025 #scrummikawa / global ai trend
kyonmm
PRO
1
280
Featured
See All Featured
Unsuck your backbone
ammeep
671
58k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.7k
BBQ
matthewcrist
89
9.8k
How STYLIGHT went responsive
nonsquared
100
5.8k
We Have a Design System, Now What?
morganepeng
53
7.8k
Designing Experiences People Love
moore
142
24k
The Cult of Friendly URLs
andyhume
79
6.6k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.1k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.9k
For a Future-Friendly Web
brad_frost
180
9.9k
Transcript
Alexander Reelsen @spinscale
[email protected]
Introduction into harp
About me Developer at Elasticsearch Interested in all things scale,
search & a bit web No clue about web design likes tech meetups...
More search... Check out the Search Meetup Munich (15th Dec)
http://www.meetup.com/Search-Meetup-Munich/events/218856224/
Devcamp anyone? Like a barcamp, but for developers only! Location
for 150 people One big room 5 small conference rooms Sponsors wanted as well Contact me!
Introduction
Static site generators There are a few out there... 388
https://staticsitegenerators.net/ Known ones Jekyll, Octopress, Pelican, Middleman
Use-Cases Prototyping Documentation Small websites Blogs Potentially replacing misused CMS
harp static web server with built-in preprocessing HTML: EJS, Jade,
Markdown CSS: LESS, Stylus, SASS JS: Coffeescript
Installation npm install -g harp harp init myproject harp server
myproject
Features
Command line options harp compile creates compiled HTML/CSS/JS for static
hosting harp multihost allows to develop multiple projects in parallel
Features - Partials <!-- _nav.ejs --> <nav> <a href="#">Home</a> <a
href="#">Product</a> <a href="#">Services</a> </nav> <!-- index.ejs --> <body> <%= partial("_nav") %> <h1>Services</h1> <!-- etc. --> </body>
Features - Metadata { "team": { "title": "Team page", "members":
["Rob", “Brock", "Jorge"] } } h1= title ul each member in members li= member _data.json team.jade
Integration - express.js var express = require("express"); var harp =
require("harp"); var app = express(); app.configure(function(){ app.use(express.static(__dirname + "/public")); app.use(harp.mount(__dirname + "/public")); });
Features - Boilerplates harp init -b harp-boilerplates/hb-blog Blog, Bootstrap, Presentations...
https://github.com/harp-boilerplates
Features - Environment Act different depending on your environment production
|| development Display drafts etc.. Different caching strategy (LRU vs. none) harp compile is production as well!
Features - Deployment GitHub Pages Heroku Azure harp.io
Features... Support for globals.json current object for application state Basic
Auth Custom 404, 200 (for client apps) More help through recipes http://harpjs.com/recipes/
Not (yet) implemented... browser-sync https://github.com/sintaxi/harp/pull/360 terraform needs to be updated
more regularly lots of pending PRs with support for other languages Big picture: Harp editor https://github.com/silentrob/harp-editor
DEMO
Resources Harp http://harpjs.com/ https://github.com/sintaxi/harp Harp Platform https://www.harp.io/ Note: No affiliation
with harp just stole the design!
Thanks for listening! Alexander Reelsen @spinscale
[email protected]