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
450
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
96
Evolving Search at an ecommerce marketplace
spinscale
0
100
The new generation of data stores
spinscale
0
210
Search Evolution - Keeping up with the hype?
spinscale
0
340
Mirror mirror... what am I typing next?
spinscale
0
420
The New Generation of Data Stores
spinscale
0
190
Elasticsearch: Distributed Search Under the Hood
spinscale
0
150
Working distributed - but how?
spinscale
0
170
Implementing a custom aws lambda runtime using Crystal
spinscale
0
670
Other Decks in Technology
See All in Technology
ABWGのRe:Cap!
hm5ug
1
120
デジタルアイデンティティ人材育成推進ワーキンググループ 翻訳サブワーキンググループ 活動報告 / 20250114-OIDF-J-EduWG-TranslationSWG
oidfj
0
410
駆け出しリーダーとしての第一歩〜開発チームとの新しい関わり方〜 / Beginning Journey as Team Leader
kaonavi
0
120
20250116_JAWS_Osaka
takuyay0ne
2
190
チームが毎日小さな変化と適応を続けたら1年間でスケール可能なアジャイルチームができた話 / Building a Scalable Agile Team
kakehashi
2
220
シフトライトなテスト活動を適切に行うことで、無理な開発をせず、過剰にテストせず、顧客をビックリさせないプロダクトを作り上げているお話 #RSGT2025 / Shift Right
nihonbuson
3
2.1k
AWS Community Builderのススメ - みんなもCommunity Builderに応募しよう! -
smt7174
0
170
コロプラのオンボーディングを採用から語りたい
colopl
5
940
エンジニアリングマネージャー視点での、自律的なスケーリングを実現するFASTという選択肢 / RSGT2025
yoshikiiida
4
3.6k
AWSマルチアカウント統制環境のすゝめ / 20250115 Mitsutoshi Matsuo
shift_evolve
0
100
東京Ruby会議12 Ruby と Rust と私 / Tokyo RubyKaigi 12 Ruby, Rust and me
eagletmt
3
850
Accessibility Inspectorを活用した アプリのアクセシビリティ向上方法
hinakko
0
170
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
230
52k
Bash Introduction
62gerente
610
210k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
Building Adaptive Systems
keathley
38
2.4k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.1k
RailsConf 2023
tenderlove
29
970
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.1k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
30
2.1k
GraphQLとの向き合い方2022年版
quramy
44
13k
Into the Great Unknown - MozCon
thekraken
34
1.6k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Become a Pro
speakerdeck
PRO
26
5.1k
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]