[{"data":1,"prerenderedAt":389},["ShallowReactive",2],{"project-37333976":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":28,"sentiment":29,"stance_mix":30,"scored_comments":35,"aspects":36,"strip":43,"post_text":45,"what":46,"said":115,"maker_in_thread":243,"shape":253,"grid":257,"attempts":337,"same_week":354,"maker_shows":244,"maker_hidden":381,"reader_version":382,"card":383},"37333976","ShipFast","A NextJS boilerplate to automate all the boring stuff","title","Show HN: A NextJS boilerplate to automate all the boring stuff","https:\u002F\u002Fshipfa.st\u002F","shipfa.st","marclou",1693469532,2023,23,37,1576,3109,51,"shown","dev_tools","boilerplate starter kit","library",[24,25,26,27],"nextjs boilerplate","starter kit","stripe webhooks","saas template","roasted",-0.375,{"positive":31,"neutral":32,"mixed":33,"critical":34},2,9,0,15,26,{"idea":37,"docs":40,"execution":41},{"positive":38,"critical":39},1,5,{"positive":33,"critical":33},{"positive":38,"critical":42},10,[38,33,44,38,44,33,33,38,38,44,33,44,38,33,44,33,33,33,38,44,33,44,44,38,38,38,38,38,38,39,33,33,33,33,38,33,39,44,33,38],3,"Hey HN,\n\nI'm a solopreneur and I ship apps like a madman. 16 startups in the last 2 years.\n\nI realized I was doing the same thing over and over: set up DNS records, connect DB, listen to Stripe webhooks...\n\nSo I built ShipFast for 2 reasons:\n1. Save time and focus on what matters: building a business\n2. Avoid headaches like emails ending in spam or waiting 3 days for Google to approve\n\nI hope this boilerplate will be as helpful to you as it is for me. Would love your feedback pls\n\nMarc",{"problem":47,"audience":53,"pricing":62,"motivation":71,"time_to_build":75,"stack":76,"openness":112,"stage":113,"team_size":114},{"value":48,"source":49,"evidence":50},"Repeated setup work for shipping web apps: DNS, database, Stripe webhooks, email deliverability","maker",[51],{"id":52},"post",{"value":54,"source":55,"evidence":56},"Solopreneurs and developers who ship web apps quickly","inferred",[57,58],{"id":52},{"id":59,"by":60,"text":61},"37346622","rbadillap","People forget that this is a starter kit. I see complaints against JavaScript vs Typescript for large projects. If you need to ship a web app in hours, I can guarantee that…",{"value":63,"source":64,"evidence":65},"Commercial product, sold for a price","commenter",[66,70],{"id":67,"by":68,"text":69},"37344564","gitgud","> I hope this boilerplate will be as helpful to you as it is for me. Would love your feedback pls It’s a commercial product, so you won’t get much feedback as not many HN readers…",{"id":59,"by":60,"text":61},{"value":72,"source":49,"evidence":73},"Stop repeating setup work across many startups and avoid email and approval headaches",[74],{"id":52},null,[77,85,91,100,104,108],{"value":78,"source":49,"evidence":79},"Next.js",[80,81],{"id":52},{"id":82,"by":83,"text":84},"37336095","audessuscest","It uses NextAuth that in my experience works well only on Vercel (and they don't care) Also please stop using mongodb",{"value":86,"source":49,"evidence":87},"JavaScript",[88],{"id":89,"by":11,"text":90},"37344217","Been using JS for 6+ years and never felt the need to upgrade, so I tried to keep the boilerplate minimal",{"value":92,"source":49,"evidence":93},"MongoDB",[94,97],{"id":95,"by":11,"text":96},"37336619","Why not MongoDB? I've been using it for 6+ years and never had any issue Over 30,000 people used my apps",{"id":98,"by":11,"text":99},"37336585","I've been using Mailgun for 6 years and never had any issue, so it pass my reliability filter. Same for MongoDB. It's also free, scalable. For now I don't see a reason to…",{"value":101,"source":49,"evidence":102},"Mailgun",[103],{"id":98,"by":11,"text":99},{"value":105,"source":64,"evidence":106},"NextAuth",[107],{"id":82,"by":83,"text":84},{"value":109,"source":49,"evidence":110},"Stripe",[111],{"id":52},"paid","launched","solo",{"praise":116,"objections":139,"requests":189,"questions":208,"alternatives":219},[117,128,132],{"value":118,"source":64,"evidence":119},"Stack choices are sensible and opinionated starter kits are useful",[120,124],{"id":121,"by":122,"text":123},"37336152","scrollaway","(Not criticising your choices, they’re mostly reasonable and opinionated stacks are very useful.) I’m curious if you can talk about why you went with mailgun, and especially why…",{"id":125,"by":126,"text":127},"37336657","phas0ruk","Lots of negative comments below which I think are overly critical. I think the stack looks good and I’ve also had no issues with mongo. Will take a look!",{"value":129,"source":64,"evidence":130},"Good decision selling the tool",[131],{"id":59,"by":60,"text":61},{"value":133,"source":64,"evidence":134},"Site design and typeface admired",[135],{"id":136,"by":137,"text":138},"37336736","bavell","As a fellow solopreneur who builds a few apps a year, sorry but I'm not at all interested in something like this. Good luck though! P.S. love your site designs and layouts.…",[140,147,162,170,181],{"value":141,"source":64,"evidence":142},"Closed source, so users cannot trust foundational code",[143],{"id":144,"by":145,"text":146},"37336658","sickcodebruh","You might consider just releasing this as an open source repo. I’m sure your work is excellent but there is no way I would ever trust such foundational elements to a closed…",{"value":148,"source":64,"evidence":149},"Using JavaScript instead of TypeScript",[150,154,158],{"id":151,"by":152,"text":153},"37336117","needz","> Javascript or Typescript? > Javascript :) Pass",{"id":155,"by":156,"text":157},"37336868","jmondi","Oof, choosing JS over TS was certainly a choice. Not one that I would have made…",{"id":159,"by":160,"text":161},"37344054","quickthrower2","Arguable a reasonable choice to avoid tooling, but if you are going to use NextJS anyway… might as well choose TS",{"value":163,"source":64,"evidence":164},"MongoDB is a poor choice",[165,166],{"id":82,"by":83,"text":84},{"id":167,"by":168,"text":169},"37345119","theogravity","As someone who have dealt with it in the past two years, no. If you want to do complex queries (aggregations), it's a huge pain in the ass to do, reason about, and also…",{"value":171,"source":64,"evidence":172},"Founder's startup count is inflated",[173,177],{"id":174,"by":175,"text":176},"37336130","jdthedisciple","16 startups in 2 years? Should I too turn every other weekend project into a startup? Serious question.",{"id":178,"by":179,"text":180},"37341915","MH15","Looking at his own numbers https:\u002F\u002Findiepa.ge\u002Fmarclou it's hard to call most of these startups. He's embellishing at best.",{"value":182,"source":64,"evidence":183},"NextAuth is hard to use outside Vercel and limits username\u002Fpassword login",[184,185],{"id":82,"by":83,"text":84},{"id":186,"by":187,"text":188},"37336524","alexlur","NextAuth also intentionally made username-password authentication difficult to use because they think signing in with your Twitter or Google account is better. Meanwhile their…",[190,195,202],{"value":191,"source":64,"evidence":192},"Open source the repo",[193,194],{"id":144,"by":145,"text":146},{"id":67,"by":68,"text":69},{"value":196,"source":64,"evidence":197},"Explain choice of JavaScript over TypeScript",[198],{"id":199,"by":200,"text":201},"37337195","lessaligned","Can you explain the choice of JS over TS?",{"value":203,"source":64,"evidence":204},"Recommend auth alternatives",[205],{"id":206,"by":200,"text":207},"37337191","what other good recommendations do you have for auth?",[209,215],{"value":210,"source":64,"evidence":211},"Where is the repo?",[212],{"id":213,"by":145,"text":214},"37338681","I’m having trouble finding the repo for this project. Can you link it?",{"value":216,"source":64,"evidence":217},"Why MongoDB and Mailgun?",[218],{"id":121,"by":122,"text":123},[220,224,230,236],{"value":221,"source":64,"evidence":222},"Supabase",[223],{"id":121,"by":122,"text":123},{"value":225,"source":64,"evidence":226},"Postmark",[227],{"id":228,"by":137,"text":229},"37336835","I used mailgun previously and was pretty happy with it. I'm using postmark now, forget exactly why I switched but I think it was because I can have one account with silo'd API…",{"value":231,"source":64,"evidence":232},"Passport.js",[233],{"id":234,"by":168,"text":235},"37345066","Didn't know about this. I started a new personal project using NextAuth but without the username\u002Fpass features. Might have to reconsider since I may eventually add that back in.…",{"value":237,"source":64,"evidence":238},"Ruby on Rails",[239],{"id":240,"by":241,"text":242},"37336772","multiplegeorges","And yet, likely still slower than a plain Ruby on Rails app. This is not a troll, Rails remains one of the quickest, simplest, out-of-the-box ready solutions for a web app. Every…",{"comments":244,"answered":44,"key":245},8,[246,249,250],{"id":247,"text":248},"37337070","I'm 100% open and public about my work and revenue on Twitter https:\u002F\u002Ftwitter.com\u002Fmarc_louvion & this is what i built: https:\u002F\u002Fmarclou.com",{"id":95,"text":96},{"id":251,"text":252},"37336589","if the weekend project has a buy button and a product, yes",{"commenters":254,"max_depth":255,"maker_replies":244,"first_comment_mins":256,"lifespan_hours":14},21,4,254,[258,260,262,264,266,269,273,276,277,280,281,282,283,285,288,292,293,296,298,299,300,301,302,304,305,306,307,308,310,312,314,317,320,323,325,327,330,332,333,334,336],[144,33,38,259,145,33],"project\u002Fcritical\u002Fidea",[247,33,33,261,11,38],"maker\u002Fneutral\u002Fnone",[213,33,44,263,145,33],"project\u002Fneutral\u002Fdocs",[82,38,38,265,83,33],"project\u002Fcritical\u002Fexecution",[267,38,44,268,175,33],"37336151","project\u002Fneutral\u002Fexecution",[270,38,33,271,272,33],"37336229","commenter\u002Fneutral\u002Fnone","re-thc",[274,38,33,271,275,33],"37336550","branperr",[186,38,38,265,187,33],[278,38,38,265,279,33],"37343252","wdb",[234,38,44,268,168,33],[95,38,33,268,11,38],[206,38,44,268,200,33],[174,31,38,284,175,33],"maker\u002Fcritical\u002Fidea",[286,31,33,287,272,33],"37336239","other\u002Fneutral\u002Fidea",[289,31,44,290,291,33],"37336481","maker\u002Fneutral\u002Fidea","michaelmior",[251,31,33,290,11,38],[294,31,33,295,137,33],"37336790","commenter\u002Fneutral\u002Fidea",[297,31,33,290,11,38],"37344206",[178,31,38,284,179,33],[121,44,44,268,122,33],[98,44,33,268,11,38],[228,44,44,268,137,33],[303,44,44,268,160,33],"37344093",[167,44,38,265,168,33],[151,255,38,265,152,33],[155,255,38,265,156,33],[159,255,38,265,160,33],[309,255,38,265,200,33],"37347662",[311,255,38,265,168,33],"37345085",[125,39,39,313,126,33],"project\u002Fpositive\u002Fexecution",[315,39,33,316,11,38],"37337088","maker\u002Fpositive\u002Fnone",[240,318,33,319,241,33],6,"other\u002Fcritical\u002Fnone",[321,318,33,322,145,33],"37336999","other\u002Fneutral\u002Fnone",[324,318,33,322,241,33],"37340135",[136,326,38,259,137,33],7,[328,326,33,329,11,38],"37337082","maker\u002Fpositive\u002Fdesign",[59,244,39,331,60,33],"project\u002Fpositive\u002Fidea",[199,32,44,268,200,33],[89,32,33,268,11,38],[335,32,38,265,200,33],"37347654",[67,42,38,259,68,33],[338,339,342,345,348,351],{"id":4,"t":12,"points":14,"comments":15},{"id":340,"t":341,"points":39,"comments":33},"38652096",1702627950,{"id":343,"t":344,"points":31,"comments":38},"38680511",1702890254,{"id":346,"t":347,"points":38,"comments":33},"38681584",1702902595,{"id":349,"t":350,"points":255,"comments":33},"38791098",1703750282,{"id":352,"t":353,"points":44,"comments":38},"38978105",1705133018,[355,359,363,367,372,376],{"id":356,"name":357,"points":358,"category":20},"37408150","smolsite.zip",602,{"id":360,"name":361,"points":362,"category":20},"37391848","Puck",451,{"id":364,"name":365,"points":366,"category":20},"37393099","RecipeUI",275,{"id":368,"name":369,"points":370,"category":371},"37381268","Keep",181,"infrastructure",{"id":373,"name":374,"points":375,"category":20},"37364124","Shaq",155,{"id":377,"name":378,"points":379,"category":380},"37398812","Perplexity",153,"ai",false,"v2",{"id":384,"name":5,"line":6,"ai":381,"cat":20,"year":13,"points":14,"comments":15,"rec":28,"s":385,"top":18,"kw":386,"maker":11,"domain":10,"tier":19,"attempts":318,"strip":387,"url":9,"mix":388,"praise":118,"objection":141,"sub":21},37333976,-0.37,[24,25,26,27],"1031300113031030001303311111150000105301",[31,32,33,34],1794036641020]