[{"data":1,"prerenderedAt":371},["ShallowReactive",2],{"project-7361824":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":27,"sentiment":28,"stance_mix":29,"scored_comments":33,"aspects":34,"strip":43,"post_text":44,"what":45,"said":79,"maker_in_thread":195,"shape":208,"grid":212,"attempts":334,"same_week":335,"maker_shows":32,"maker_hidden":363,"reader_version":364,"card":365},"7361824","Metalsmith","A pluggable static site generator","title","Show HN: Metalsmith – A pluggable static site generator","http:\u002F\u002Fwww.metalsmith.io\u002F","metalsmith.io","ianstormtaylor",1394216687,2014,174,46,126,2272,6,"notable","dev_tools","static site generator","library",[21,24,25,26],"node.js","markdown","build plugins","mixed",0.377,{"positive":30,"neutral":18,"mixed":31,"critical":32},14,1,5,26,{"design":35,"idea":38,"performance":39,"execution":41,"docs":42},{"positive":36,"critical":37},3,2,{"positive":18,"critical":31},{"positive":31,"critical":40},0,{"positive":37,"critical":31},{"positive":40,"critical":31},[32,31,40,32,40,40,40,36,36,40,40,32,40,32,36,40,40,32,40,32,32,32,32,36,31,36,40,40,31,40,36,32,32,40,31,40,31,40,32,32],null,{"problem":46,"audience":44,"pricing":44,"motivation":53,"time_to_build":44,"stack":57,"openness":76,"stage":77,"team_size":78},{"value":47,"source":48,"evidence":49},"Building static sites with extra features that other static site generators do not support well.","maker",[50],{"id":51,"by":11,"text":52},"7363734","Yeah it depends on what your use case is to begin with. If it's just the simplest blog with a running series of Markdown files, then really any of the static site generators will…",{"value":54,"source":48,"evidence":55},"Segment.io needed docs, academy and blog features that existing generators could not handle well, and wanted to drop a Ruby dependency.",[56],{"id":51,"by":11,"text":52},[58,65,69],{"value":59,"source":60,"evidence":61},"Node.js","commenter",[62],{"id":63,"by":11,"text":64},"7362215","I haven't tried it on crazy amounts of files, but it's just using node's basic async I\u002FO under the covers, and reading once. If you notice any sluggishness let me know! It's also…",{"value":66,"source":48,"evidence":67},"Handlebars",[68],{"id":51,"by":11,"text":52},{"value":70,"source":60,"evidence":71},"Markdown",[72],{"id":73,"by":74,"text":75},"7362206","xianshou","If this really works, I would love to see it replace the hellish jumble of team-editable documentation. I've seen Confluence, PBWiki, Google Sites, and a smattering of others…","open_source","launched","company",{"praise":80,"objections":103,"requests":129,"questions":145,"alternatives":154},[81,96],{"value":82,"source":60,"evidence":83},"Simple, composable design built around plugins",[84,88,92],{"id":85,"by":86,"text":87},"7362000","mercurial","It appears to be indeed both extremely simple, and extremely composable. How well does it handle large collections of files?",{"id":89,"by":90,"text":91},"7363302","ricardobeat","Not just a nice tool, but a great implementation. Simple, lean code, no promises or anything fancy.",{"id":93,"by":94,"text":95},"7362346","sgdesign","This looks very cool. I like the focus on plugins, it would be pretty awesome to have a flexible static site generator with an active plugin ecosystem.",{"value":97,"source":60,"evidence":98},"Clean, readable source code",[99,100],{"id":89,"by":90,"text":91},{"id":101,"by":11,"text":102},"7363775","The problem with Gulp is just that it just adds too much extra cruft into the mix that isn't really necessary, mostly around running tasks from the CLI. Our general thought for…",[104,115,122],{"value":105,"source":60,"evidence":106},"Unclear documentation for installation and the JavaScript API",[107,111],{"id":108,"by":109,"text":110},"7363081","Kiro","How do I get this working on Windows? I've installed it with npm install metalsmith. Now what?",{"id":112,"by":113,"text":114},"7364216","roryokane","You’re right, the “Install It” section should make that clearer. Anyway, there is an explanation of basic usage if you follow the link to “CLI”…",{"value":116,"source":60,"evidence":117},"Unclear advantage over existing static site generators",[118],{"id":119,"by":120,"text":121},"7363665","caiob","I fail to see the big advantage of this over its competitors.",{"value":123,"source":60,"evidence":124},"Front-matter parsing is hard-coded to YAML rather than a plugin",[125],{"id":126,"by":127,"text":128},"7363019","Touche","One problem I see. On the one hand you say: > All of the logic in Metalsmith is handled by plugins. But on the other hand, you say this: > Each plugin is invoked with the…",[130,138],{"value":131,"source":60,"evidence":132},"Support JSON front-matter",[133,134],{"id":126,"by":127,"text":128},{"id":135,"by":136,"text":137},"7363157","icebraining","A JSON file is a YAML file, so what's the problem?",{"value":139,"source":60,"evidence":140},"Side-by-side feature comparison of static site generators",[141],{"id":142,"by":143,"text":144},"7364317","rayshan","With sooooo many static site generators (all very well done too), would be awesome to have a side-by-side by-feature comparison table.",[146,150],{"value":147,"source":60,"evidence":148},"How it performs with large numbers of files",[149],{"id":85,"by":86,"text":87},{"value":151,"source":60,"evidence":152},"How to use it on Windows",[153],{"id":108,"by":109,"text":110},[155,166,177,184,188],{"value":156,"source":60,"evidence":157},"Jekyll",[158,162],{"id":159,"by":160,"text":161},"7362285","cristianpascu","One thing I don't like about jekyll (unless I'm missing something), is that on site generation, the last modified time stamp of the files gets updated too even if the file…",{"id":163,"by":164,"text":165},"7369974","rainburg","Couldn't choose between Jekyll and Middleman, but now I think I'm going with Metalsmith. No ruby, understandable plugin structure… I'm sold!",{"value":167,"source":60,"evidence":168},"Gulp",[169,173],{"id":170,"by":171,"text":172},"7362205","dangoor","Could be compared to assemble.io and stylistically reminds me of Gulp.",{"id":174,"by":175,"text":176},"7362662","justarandomanon","Gulp was the first thing I though of when looking through the examples. Edit: In fact, could this whole thing just be a gulp plugin?",{"value":178,"source":60,"evidence":179},"DocPad",[180],{"id":181,"by":182,"text":183},"7362289","8ig8","Thanks. Looking forward to trying it out this weekend. My current generator, which I'm generally happy with, is DocPad. http:\u002F\u002Fdocpad.org",{"value":185,"source":60,"evidence":186},"Middleman",[187],{"id":163,"by":164,"text":165},{"value":189,"source":60,"evidence":190},"Harp",[191],{"id":192,"by":193,"text":194},"7362557","shortformblog","This is really intriguing. I also recommend HarpJS (https:\u002F\u002Fwww.harp.io\u002F) as well, which has some impressive pre-compile features.",{"comments":196,"answered":197,"key":198},10,4,[199,202,205],{"id":200,"text":201},"7363056","Hmm yeah that's true. Tough call since that is the front-matter is a 99% case, and the idea of file's being able to have their own metadata is kinda core to the functionality. I…",{"id":203,"text":204},"7366484","Thought about it a bit more (was actually convinced for a second) but then I realized that that would mean lots of the other plugins would be depending on the YAML\u002FJSON plugins…",{"id":206,"text":207},"7366477","That's really cool actually.",{"commenters":209,"max_depth":197,"maker_replies":196,"first_comment_mins":210,"lifespan_hours":211},31,34,194,[213,217,219,221,224,225,227,231,232,235,237,239,242,244,247,250,251,252,255,256,258,260,262,264,268,271,274,278,281,283,286,290,293,297,300,303,305,307,309,311,314,315,318,320,324,329],[214,40,32,215,216,40],"7362400","project\u002Fpositive\u002Fdesign","sneak",[126,31,31,218,127,40],"project\u002Fcritical\u002Fdesign",[200,31,40,220,11,31],"maker\u002Fneutral\u002Fdesign",[222,31,32,215,223,40],"7364840","sturadnidge",[203,31,40,220,11,31],[135,31,40,226,136,40],"commenter\u002Fneutral\u002Fdesign",[228,31,40,229,230,40],"7364139","commenter\u002Fneutral\u002Fnone","asb",[206,31,40,229,11,31],[233,31,36,234,182,40],"7363299","project\u002Fneutral\u002Fdesign",[181,37,36,236,182,40],"project\u002Fneutral\u002Fnone",[159,36,40,238,160,40],"other\u002Fcritical\u002Fnone",[240,36,40,241,216,40],"7362407","other\u002Fneutral\u002Fnone",[73,197,32,243,74,40],"project\u002Fpositive\u002Fidea",[245,197,40,246,11,31],"7362259","maker\u002Fpositive\u002Fidea",[248,197,32,243,249,40],"7362595","sixdimensional",[170,32,36,236,171,40],[174,32,36,234,175,40],[253,32,40,226,254,40],"7363714","andyfleming",[101,32,40,215,11,31],[85,18,32,257,86,40],"project\u002Fpositive\u002Fperformance",[63,18,40,259,11,31],"maker\u002Fneutral\u002Fperformance",[192,261,40,241,193,40],7,[93,263,32,243,94,40],8,[265,266,32,215,267,40],"7362614",9,"andrewflnr",[269,196,32,243,270,40],"7406242","jon49",[89,272,32,273,90,40],11,"project\u002Fpositive\u002Fexecution",[275,272,36,276,277,40],"7364510","project\u002Fneutral\u002Fexecution","tobobo",[108,279,31,280,109,40],12,"project\u002Fcritical\u002Fdocs",[112,279,36,282,113,40],"project\u002Fmixed\u002Fdocs",[284,279,40,285,11,31],"7366502","maker\u002Fpositive\u002Fdocs",[287,288,40,241,289,40],"7363122",13,"esquivias",[291,288,40,292,113,40],"7364236","other\u002Fcritical\u002Fdocs",[294,30,31,295,296,40],"7362159","project\u002Fcritical\u002Fexecution","aram",[298,30,40,299,11,31],"7362171","maker\u002Fneutral\u002Fexecution",[301,30,36,276,302,40],"7362203","BrandonSmith",[304,30,32,273,296,40],"7362236",[163,306,32,243,164,40],15,[142,308,40,241,143,40],16,[310,308,40,241,143,40],"7364335",[119,312,31,313,120,40],17,"project\u002Fcritical\u002Fidea",[51,312,40,246,11,31],[316,317,31,218,127,40],"7362987",18,[319,317,40,220,11,31],"7363050",[321,322,32,243,323,40],"7362194",19,"sdegutis",[325,326,32,327,328,40],"7365521",20,"maker\u002Fpositive\u002Fnone","borplk",[330,331,32,332,333,40],"7362185",21,"project\u002Fpositive\u002Fnone","fredsters_s",[],[336,341,346,351,355,359],{"id":337,"name":338,"points":339,"category":340},"7386672","lessmilk game 10",362,"games",{"id":342,"name":343,"points":344,"category":345},"7375696","Scout Realtime",346,"infrastructure",{"id":347,"name":348,"points":349,"category":350},"7360296","Animatron",295,"creative",{"id":352,"name":353,"points":354,"category":340},"7361947","Cloud Breaker",290,{"id":356,"name":357,"points":358,"category":20},"7354491","Chartspree",129,{"id":360,"name":361,"points":362,"category":20},"7369642","What's my browser",121,false,"v2",{"id":366,"name":5,"line":6,"ai":363,"cat":20,"year":13,"points":14,"comments":15,"rec":27,"s":367,"top":18,"kw":368,"maker":11,"domain":10,"tier":19,"attempts":40,"strip":369,"url":9,"mix":370,"praise":82,"objection":105,"sub":21},7361824,0.38,[21,24,25,26],"5105000330050530050555531300103550101055",[30,18,31,32],1793990903537]