[{"data":1,"prerenderedAt":742},["ShallowReactive",2],{"project-19981869":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":34,"aspects":35,"strip":46,"post_text":49,"what":50,"said":94,"maker_in_thread":229,"shape":236,"grid":241,"attempts":705,"same_week":706,"maker_shows":47,"maker_hidden":734,"reader_version":735,"card":736},"19981869","Scar","Static websites with HTTPS, a global CDN, and custom domains","title","Show HN: Scar – Static websites with HTTPS, a global CDN, and custom domains","https:\u002F\u002Fgithub.com\u002Fcloudkj\u002Fscar","github.com","cloudkj",1558537002,2019,363,170,72,2195,4,"legend","infrastructure","static site hosting","other",[21,24,25,26],"aws cloudformation","cloudfront","custom domain https","mixed",-0.256,{"positive":30,"neutral":31,"mixed":32,"critical":33},6,23,2,17,48,{"execution":36,"idea":37,"performance":39,"privacy":41,"pricing":43,"design":44,"docs":45},{"positive":32,"critical":18},{"positive":32,"critical":38},8,{"positive":40,"critical":40},1,{"positive":42,"critical":40},0,{"positive":42,"critical":42},{"positive":42,"critical":32},{"positive":40,"critical":40},[47,42,42,32,42,42,42,42,42,42,42,42,42,42,42,42,42,42,42,47,47,40,47,47,40,47,47,40,48,32,40,40,48,48,32,32,40,47,47,40],3,5,null,{"problem":51,"audience":49,"pricing":57,"motivation":64,"time_to_build":49,"stack":70,"openness":92,"stage":93,"team_size":93},{"value":52,"source":53,"evidence":54},"Hosting a static website with HTTPS, a CDN and custom domains","inferred",[55],{"id":56},"post",{"value":58,"source":59,"evidence":60},"Costs at least $0.50\u002Fmonth for the Route 53 hosted zone, plus usage","maker",[61],{"id":62,"by":11,"text":63},"19983750","It costs at least $0.50\u002Fmonth but probably not much more than that for most small to medium sites. The $0.50 is the monthly cost of the Route 53 hosted zone; the CloudFront and…",{"value":65,"source":59,"evidence":66},"A DIY way to own the deployed bits while staying close to the infrastructure",[67],{"id":68,"by":11,"text":69},"19984173","I was actually wondering that myself: Is there interest in a hosted service? It'd be quite similar to (as many comments have suggested) Netlify and the one you linked to. I was…",[71,80,84,88],{"value":72,"source":59,"evidence":73},"AWS CloudFormation",[74,77],{"id":75,"by":11,"text":76},"19985509","Wow, that is a fun coincidence! Indeed, I was going for a catchy four-letter acronym in the same vein as popular stacks like LAMP or MEAN. Perhaps the fact that we both landed on…",{"id":78,"by":11,"text":79},"19984025","The AWS CloudFormation console has a \"Designer\" tool that allows drag-and-drop creation of template files, and also visualizes existing JSON or YAML template files with these…",{"value":81,"source":59,"evidence":82},"AWS S3",[83],{"id":62,"by":11,"text":63},{"value":85,"source":59,"evidence":86},"AWS CloudFront",[87],{"id":62,"by":11,"text":63},{"value":89,"source":59,"evidence":90},"AWS Route 53",[91],{"id":62,"by":11,"text":63},"open_source","unknown",{"praise":95,"objections":112,"requests":155,"questions":169,"alternatives":196},[96,105],{"value":97,"source":98,"evidence":99},"Similar design to the commenter's own project, a sign the approach is sound","commenter",[100,104],{"id":101,"by":102,"text":103},"19982862","fishtoaster","Looks very similar to my project https:\u002F\u002Fgithub.com\u002Fkkuchta\u002Fscarr from a while back. It even uses the same acronym (I assume that's just a coincidence, since we both just picked…",{"id":75,"by":11,"text":76},{"value":106,"source":98,"evidence":107},"Bundling config and launch makes setup easier",[108],{"id":109,"by":110,"text":111},"19982388","kaiku","Bundling service config and launch makes the whole process easier, for sure. There's also more than one way to configure this depending on what your needs are, so it'd be cool to…",[113,132,151],{"value":114,"source":98,"evidence":115},"Too many AWS services and too complex for a static site",[116,120,124,128],{"id":117,"by":118,"text":119},"19982067","blairanderson","TL;DR this is an AWS stack with 10 AWS services required to build\u002Fdeploy a static site with HTTPS\u002FCDN I will be staying with netlify",{"id":121,"by":122,"text":123},"19982948","whalesalad","I have a two-line Makefile that with one target that sync's my website with an S3 bucket. Deploys are instant. The rest is handled by Cloudflare an AWS. The sheer number of…",{"id":125,"by":126,"text":127},"19991088","shapiro92","This is highly complex for no reason. GitHubPages, Netify provide you with easy to use custom static page hosting. Your abstraction is nice, but the learning curve for someone is…",{"id":129,"by":130,"text":131},"19983008","vijaybritto","This seems like a nightmare to setup and maintain for a new comer. Netlify lets us setup things in a whiff. This is a nice project but not for anyone below intermediate.",{"value":133,"source":98,"evidence":134},"Netlify, GitHub Pages or Firebase are simpler alternatives",[135,139,143,147],{"id":136,"by":137,"text":138},"19982148","jaden","GitHub pages [0] gives you static sites with HTTPS and a custom domain without nearly as much complexity as this if you're looking for an alternative to Netlify. [0]…",{"id":140,"by":141,"text":142},"19982253","t0astbread","What benefit does this have over Netlify?",{"id":144,"by":145,"text":146},"19982183","tamalsaha001","How is this any different from Firebase hosting? We have been using it for a while with no problem. Also comes with a very generous free tier.",{"id":148,"by":149,"text":150},"19982565","faheel","Just use Netlify.",{"value":152,"source":98,"evidence":153},"S3 does not serve index.html for parent directory URLs",[154],{"id":109,"by":110,"text":111},[156,163],{"value":157,"source":98,"evidence":158},"A hosted version of the service",[159],{"id":160,"by":161,"text":162},"19982292","iBelieve","For anyone looking for a hosted solution, https:\u002F\u002Fsurge.sh\u002F is super nice and simple without any of the complexity of managing the stack yourself. Deploying uses one simple…",{"value":164,"source":59,"evidence":165},"Variants of the default stack, such as www redirects or removing www",[166],{"id":167,"by":11,"text":168},"19983917","That should indeed be the default behavior out of the box with the way the S3 buckets are configured. I have a couple Jekyll sites deployed this way, and a request to the parent…",[170,185],{"value":171,"source":98,"evidence":172},"What does it cost per month to run",[173,177,181],{"id":174,"by":175,"text":176},"19982295","djsumdog","How much does this cost? I put in some more effort to setup my HAProxy and nginx containers on a Vultr node, but I get LetsEncrypt for free, so I'm just paying for a Vultr node…",{"id":178,"by":179,"text":180},"19985230","srathi","How much should this cost per month in AWS billing for a small static website?",{"id":182,"by":183,"text":184},"19985334","SadWebDeveloper","Anyone have an a average monthly fee for using these as hosting solution? last time i ran the numbers using all that services go from 5 to 10 USD per month and was better to use…",{"value":186,"source":98,"evidence":187},"Whether a CDN is needed for a static site at all",[188,192],{"id":189,"by":190,"text":191},"19982195","gvand","Nice project. As an aside, I genuinely wonder under which circumstances a CDN will be useful for a static website nowadays. I have a static website that has been on the HN…",{"id":193,"by":194,"text":195},"19982583","ryanisnan","Other than the notion that all traffic should be served over HTTPs, if you have purely static site, why the big fuss?",[197,206,210,214,218],{"value":198,"source":98,"evidence":199},"Netlify",[200,204,205],{"id":201,"by":202,"text":203},"19983635","rsweeney21","We use a combination of Netlify + Webflow + Hugo for our website (www.facetdev.com). With that we get a global CDN and our website will never go down. Netlify has been awesome…",{"id":117,"by":118,"text":119},{"id":148,"by":149,"text":150},{"value":207,"source":98,"evidence":208},"GitHub Pages",[209],{"id":136,"by":137,"text":138},{"value":211,"source":98,"evidence":212},"Firebase hosting",[213],{"id":144,"by":145,"text":146},{"value":215,"source":98,"evidence":216},"Surge.sh",[217],{"id":160,"by":161,"text":162},{"value":219,"source":98,"evidence":220},"Self-hosted nginx on a VPS",[221,225],{"id":222,"by":223,"text":224},"19982918","NateEag","Am I the only one who still hosts my own static sites on a plain old virtual machine? It's pretty simple to configure nginx for static sites, and by doing it yourself you reduce…",{"id":226,"by":227,"text":228},"19983058","tyre","yes. I host my personal website (maddo.xxx) on a single EC2 instance with just nginx. It's easy. It's fast. When I want to over-engineer the shit out of it for fun, it's ready.…",{"comments":30,"answered":47,"key":230},[231,232,233],{"id":75,"text":76},{"id":62,"text":63},{"id":234,"text":235},"19983876","I think the complexity for this setup is about the same. Once the different AWS services are provisioned during the initial setup, subsequent deploys are quite straightforward.…",{"commenters":237,"max_depth":238,"maker_replies":30,"first_comment_mins":239,"lifespan_hours":240},120,10,12,52,[242,244,246,250,252,256,259,262,265,267,270,273,276,279,283,286,289,292,295,298,301,304,307,310,312,315,318,321,324,327,330,333,334,337,340,343,346,348,351,354,356,359,361,364,367,370,371,374,376,379,382,384,386,389,391,393,396,398,400,402,404,406,408,411,414,416,418,420,422,424,427,429,431,433,436,439,442,445,448,450,452,454,457,460,462,465,468,470,474,478,481,484,487,491,495,496,499,501,503,505,508,511,513,516,518,521,522,524,527,530,531,535,536,538,540,543,545,550,553,556,559,561,566,569,571,574,576,578,581,584,588,591,595,596,598,602,606,610,614,617,620,623,626,629,631,633,636,638,641,644,646,648,653,657,659,662,665,667,670,674,676,679,682,684,687,689,691,694,698,702],[101,42,48,243,102,42],"project\u002Fpositive\u002Fexecution",[75,42,42,245,11,40],"maker\u002Fneutral\u002Fnone",[247,42,42,248,249,42],"19985554","commenter\u002Fneutral\u002Fnone","sova",[136,40,40,251,137,42],"project\u002Fcritical\u002Fidea",[253,40,42,254,255,42],"19982353","other\u002Fneutral\u002Fnone","fjp",[257,40,42,254,258,42],"19982584","jkarneges",[260,40,42,254,261,42],"19983311","ainiriand",[263,40,42,254,264,42],"19983444","masukomi",[266,40,42,248,261,42],"19984129",[268,40,42,248,269,42],"19985173","jobigoud",[271,40,42,248,272,42],"19986449","bradknowles",[274,40,42,254,275,42],"19986471","adam1210",[277,40,42,254,278,42],"19987034","type0",[280,40,47,281,282,42],"19982683","project\u002Fneutral\u002Fidea","gtirloni",[284,40,40,251,285,42],"19982778","weego",[287,40,47,281,288,42],"19983191","nathankunicki",[290,40,42,254,291,42],"19983612","xondono",[293,40,42,254,294,42],"19988585","sharcerer",[296,40,42,254,297,42],"19988938","ztjio",[299,40,42,254,300,42],"19984397","dguo",[302,40,42,254,303,42],"19985829","jeremyjh",[305,40,42,254,306,42],"19987307","Phrodo_00",[308,40,42,254,309,42],"19985432","alfredxing",[311,40,42,254,278,42],"19987023",[313,40,42,254,314,42],"19985869","davchana",[316,40,42,254,317,42],"19986100","r3bl",[319,40,42,254,320,42],"19988793","vidyesh",[322,40,42,254,323,42],"19984823","Scarbutt",[325,40,42,254,326,42],"19984965","anonfunction",[328,40,42,254,329,42],"19985098","tasuki",[331,40,42,254,332,42],"19985418","stock_toaster",[222,32,42,254,223,42],[335,32,42,254,336,42],"19982967","mevile",[338,32,42,254,339,42],"19983122","codegladiator",[341,32,42,254,342,42],"19982978","shshhdhs",[344,32,42,254,345,42],"19983030","danpalmer",[347,32,42,254,227,42],"19983118",[349,32,42,254,350,42],"19986006","mises",[352,32,42,254,353,42],"20004187","O_H_E",[355,32,42,254,278,42],"19987153",[357,32,42,254,358,42],"19988316","tty2300",[360,32,42,254,345,42],"19989836",[362,32,42,254,363,42],"19983120","tomschlick",[365,32,42,254,366,42],"19984721","herbst",[368,32,42,254,369,42],"19983016","pushpop",[226,32,42,254,227,42],[372,32,42,254,373,42],"19983160","WhiteOwlLion",[375,32,42,254,350,42],"19985989",[377,32,42,254,378,42],"19984018","clintonb",[380,32,42,254,381,42],"19984982","ehonda",[383,32,42,254,378,42],"19985940",[385,32,42,254,350,42],"19985973",[387,32,42,248,388,42],"19988698","KingFelix",[390,32,42,248,350,42],"19993498",[392,32,42,248,388,42],"19993620",[394,32,42,254,395,42],"19988834","viraptor",[397,32,42,254,381,42],"19991313",[399,32,42,254,395,42],"19995361",[401,32,42,248,381,42],"19996801",[403,32,42,248,395,42],"19996878",[405,32,42,248,381,42],"19997073",[407,32,42,248,395,42],"19997237",[409,32,42,248,410,42],"19986425","seriocomic",[412,32,42,248,413,42],"19987008","jasonlingx",[415,32,42,248,378,42],"19987795",[417,32,42,248,413,42],"19988695",[419,32,42,254,320,42],"19988815",[421,32,42,248,413,42],"19990623",[423,32,42,254,223,42],"19990363",[425,32,42,254,426,42],"19984083","jakelazaroff",[428,32,42,248,223,42],"19985029",[430,32,42,248,426,42],"19985370",[432,32,42,248,223,42],"19990282",[434,32,42,254,435,42],"19984133","jniedrauer",[437,32,42,254,438,42],"19984901","dmitriid",[440,32,42,254,441,42],"19985408","wolco",[443,32,42,254,444,42],"19986782","Symbiote",[446,32,42,248,447,42],"19987087","MarvelousWololo",[449,32,42,254,358,42],"19988308",[451,32,42,248,444,42],"19989617",[453,32,42,248,447,42],"19998266",[455,32,42,248,456,42],"19999326","dewey",[458,32,42,254,459,42],"19987372","klodolph",[189,47,47,461,190,42],"project\u002Fneutral\u002Fperformance",[463,47,42,248,464,42],"19982222","Xylakant",[466,47,42,248,467,42],"19982296","toredash",[469,47,42,248,464,42],"19982368",[471,47,48,472,473,42],"19982305","project\u002Fpositive\u002Fperformance","zachruss92",[475,47,40,476,477,42],"19982813","project\u002Fcritical\u002Fprivacy","dvfjsdhgfv",[479,47,42,248,480,42],"19983504","acdha",[482,47,42,248,483,42],"19995981","nybble41",[485,47,42,248,486,42],"19983685","cortesoft",[488,47,40,489,490,42],"19984541","project\u002Fcritical\u002Fperformance","donmcronald",[492,47,47,493,494,42],"19984648","project\u002Fneutral\u002Fnone","tedshroyer",[201,18,42,254,202,42],[497,18,42,254,498,42],"19984410","triangleman",[500,18,42,254,202,42],"19984449",[502,18,42,254,490,42],"19984592",[504,18,42,254,202,42],"19984818",[506,18,42,254,507,42],"19986073","gcb0",[509,48,42,254,510,42],"19982517","singingwolfboy",[174,30,47,512,175,42],"project\u002Fneutral\u002Fpricing",[514,30,47,512,515,42],"19982500","1023bytes",[62,30,42,517,11,40],"maker\u002Fneutral\u002Fpricing",[121,519,40,520,122,42],7,"project\u002Fcritical\u002Fdesign",[234,519,42,245,11,40],[109,38,47,523,110,42],"project\u002Fneutral\u002Fexecution",[525,38,42,248,526,42],"19982509","IanCal",[528,38,42,248,529,42],"19984286","FelipeCortez",[167,38,42,245,11,40],[532,533,42,254,534,42],"19982339",9,"huphtur",[182,238,47,512,183,42],[160,537,42,254,161,42],11,[68,537,42,539,11,40],"maker\u002Fneutral\u002Fidea",[541,239,42,254,542,42],"19982278","jareware",[144,544,47,281,145,42],13,[546,547,40,548,549,42],"19984165",14,"project\u002Fcritical\u002Fdocs","timClicks",[551,547,42,248,552,42],"19984561","pbhjpbhj",[554,547,42,248,555,42],"19984590","tide_ad",[557,547,42,558,549,42],"19984980","commenter\u002Fneutral\u002Fdocs",[560,547,42,248,555,42],"19992728",[562,563,48,564,565,42],"19982179",15,"maker\u002Fpositive\u002Fexecution","morenoh149",[567,563,47,568,490,42],"19984875","project\u002Fmixed\u002Fpricing",[140,570,47,281,141,42],16,[572,570,47,281,573,42],"19982541","pier25",[575,570,40,251,498,42],"19984441",[577,570,42,254,320,42],"19988835",[579,33,40,520,580,42],"19982859","anvarik",[117,582,40,583,118,42],18,"project\u002Fcritical\u002Fexecution",[585,582,47,586,587,42],"19982154","project\u002Fmixed\u002Fexecution","vnglst",[589,582,47,523,590,42],"19982300","d-sc",[592,593,47,594,573,42],"19982551",19,"maker\u002Fneutral\u002Fdesign",[78,593,42,594,11,40],[597,593,42,248,573,42],"19984045",[599,600,40,583,601,42],"19987268",20,"bsingh4",[603,604,40,251,605,42],"19984735",21,"myresume",[607,608,47,523,609,42],"19982197",22,"js2",[611,31,48,612,613,42],"19981998","project\u002Fpositive\u002Fidea","paulgb",[615,31,42,248,616,42],"19982093","quaffapint",[618,31,42,248,619,42],"19982803","chrisfinazzo",[621,31,42,248,622,42],"19982402","gk1",[624,31,42,248,625,42],"19982515","reificator",[627,31,42,248,628,42],"19982733","StavrosK",[630,31,48,612,613,42],"19983622",[632,31,42,248,625,42],"19984584",[634,31,40,251,635,42],"19982709","holtalanm",[178,637,47,512,179,42],24,[639,637,47,512,640,42],"19985390","jboynyc",[642,637,47,512,643,42],"19985525","enigmango",[125,645,40,251,126,42],25,[129,647,40,583,130,42],26,[649,650,48,651,652,42],"19982075",27,"maker\u002Fpositive\u002Fdocs","dlhavema",[654,655,40,583,656,42],"19983243",28,"adontz",[148,658,40,251,149,42],29,[660,658,42,248,661,42],"19984939","mluggy",[663,658,42,248,664,42],"19986580","bobfunk",[666,658,42,248,661,42],"19989179",[193,668,47,669,194,42],30,"project\u002Fneutral\u002Fprivacy",[671,668,42,672,673,42],"19982636","commenter\u002Fneutral\u002Fprivacy","thethirdone",[675,668,42,672,194,42],"19983027",[677,668,47,669,678,42],"19982657","ummonk",[680,668,47,669,681,42],"19982659","dumboluzz",[683,668,42,672,194,42],"19983021",[685,668,47,281,686,42],"19982672","woogley",[688,668,47,281,194,42],"19983052",[690,668,42,248,673,42],"19984257",[692,668,42,248,693,42],"19984917","Avamander",[695,696,47,493,697,42],"19983036",31,"tempsolution",[699,700,40,251,701,42],"19982849",32,"romanovcode",[703,700,42,248,704,42],"19985246","whereareyouwow",[],[707,712,717,721,726,730],{"id":708,"name":709,"points":710,"category":711},"19968271","Keikai",386,"dev_tools",{"id":713,"name":714,"points":715,"category":716},"19946941","The Cyber Plumber's Handbook",277,"learning_science",{"id":718,"name":719,"points":720,"category":711},"19984582","Metacode",209,{"id":722,"name":723,"points":724,"category":725},"19960313","Link Drop",188,"productivity",{"id":727,"name":728,"points":729,"category":711},"19954195","UXY",126,{"id":731,"name":732,"points":733,"category":711},"19960412","Oya",116,false,"v2",{"id":737,"name":5,"line":6,"ai":734,"cat":20,"year":13,"points":14,"comments":15,"rec":27,"s":738,"top":18,"kw":739,"maker":11,"domain":10,"tier":19,"attempts":42,"strip":740,"url":9,"mix":741,"praise":97,"objection":114,"sub":21},19981869,-0.26,[21,24,25,26],"3002000000000000000331331331521155221331",[30,31,32,33],1793990989653]