[{"data":1,"prerenderedAt":267},["ShallowReactive",2],{"project-35450687":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":34,"aspects":35,"strip":41,"post_text":43,"what":44,"said":85,"maker_in_thread":181,"shape":192,"grid":196,"attempts":228,"same_week":229,"maker_shows":258,"maker_hidden":259,"reader_version":260,"card":261},"35450687","WunderGraph","Back end for Front end Framework","title","Show HN: WunderGraph – Back end for Front end Framework","https:\u002F\u002Fgithub.com\u002Fwundergraph\u002Fwundergraph","github.com","jensneuse",1680680627,2023,19,17,1721,3109,56,"shown","dev_tools","api gateway","library",[24,25,26,27],"graphql gateway","backend for frontend","openapi gateway","typed api client","mixed",0.083,{"positive":31,"neutral":32,"mixed":31,"critical":33},3,4,1,11,{"idea":36,"design":38,"execution":39,"performance":40},{"positive":37,"critical":37},0,{"positive":37,"critical":37},{"positive":31,"critical":33},{"positive":37,"critical":37},[31,37,31,37,31,42,31,33,42,37,37,42,37,31,31,31,37],5,null,{"problem":45,"audience":53,"pricing":43,"motivation":43,"time_to_build":43,"stack":62,"openness":82,"stage":83,"team_size":84},{"value":46,"source":47,"evidence":48},"Composing multiple APIs and data sources behind one typed front-end-facing backend","commenter",[49],{"id":50,"by":51,"text":52},"35458727","morbicer","I am a big fan WunderGraph and I think it's a very promising project. Some solid design choices. What I like: - customization in TypeScript but running the core gateway in Go for…",{"value":54,"source":55,"evidence":56},"Front-end and full-stack developers building web and mobile apps","inferred",[57,58],{"id":50,"by":51,"text":52},{"id":59,"by":60,"text":61},"35459070","therpeterson","WG is operational ready and I would consider it mature - we've used in production for an app with 6M MAU and that was before the 1.0 release. Maturity isn't a time based thing -…",[63,67,71,75],{"value":64,"source":47,"evidence":65},"TypeScript",[66],{"id":50,"by":51,"text":52},{"value":68,"source":47,"evidence":69},"Go",[70],{"id":50,"by":51,"text":52},{"value":72,"source":47,"evidence":73},"GraphQL",[74],{"id":50,"by":51,"text":52},{"value":76,"source":77,"evidence":78},"Prisma","maker",[79],{"id":80,"by":11,"text":81},"35466124","WunderGraph uses Prisma internally to talk to the database, so I'd say this is quite mature. Here's a more comprehensive guide about our database support:…","unknown","launched","company",{"praise":86,"objections":101,"requests":123,"questions":136,"alternatives":157},[87,91,95],{"value":88,"source":47,"evidence":89},"Well-designed architecture with TypeScript customization and Go core gateway",[90],{"id":50,"by":51,"text":52},{"value":92,"source":47,"evidence":93},"Operationally ready and used in production with a large app",[94],{"id":59,"by":60,"text":61},{"value":96,"source":47,"evidence":97},"Responsive maker and fast releases",[98],{"id":99,"by":51,"text":100},"35459177","Nice! You guys are crazy productive and responsive! What I like from Mesh is also some \"tidying\" utilities like renaming transforms…",[102,109,113,117],{"value":103,"source":47,"evidence":104},"OpenAPI introspection weak on real-world specs",[105,106],{"id":50,"by":51,"text":52},{"id":107,"by":51,"text":108},"35459211","I guess depends what your sources are. If it's other GQLs or DBs it can work well. For me the important usecase is OpenAPIs and there the introspection hasn't stabilized yet.",{"value":110,"source":47,"evidence":111},"Documentation is sparse",[112],{"id":50,"by":51,"text":52},{"value":114,"source":47,"evidence":115},"Hard to debug schema generation errors",[116],{"id":99,"by":51,"text":100},{"value":118,"source":47,"evidence":119},"Partially working Kubernetes setup was costly",[120],{"id":121,"by":60,"text":122},"35459559","Yeah, we started going the k8s route and after burning about 90K with a partially working setup - we found WunderGraph trying to remove complexity of a Service Mesh, and API…",[124,128,132],{"value":125,"source":47,"evidence":126},"Built-in OpenTelemetry and Prometheus support",[127],{"id":50,"by":51,"text":52},{"value":129,"source":47,"evidence":130},"Renaming transforms like GraphQL Mesh",[131],{"id":99,"by":51,"text":100},{"value":133,"source":47,"evidence":134},"Per-user rate limiting",[135],{"id":99,"by":51,"text":100},[137,141,148],{"value":138,"source":47,"evidence":139},"How to customize or override auto-generated schemas",[140],{"id":50,"by":51,"text":52},{"value":142,"source":47,"evidence":143},"How it compares to SurrealDB",[144],{"id":145,"by":146,"text":147},"35454629","Nezteb","I wonder how this compares to SurrealDB: https:\u002F\u002Fgithub.com\u002Fsurrealdb\u002Fsurrealdb",{"value":149,"source":47,"evidence":150},"Serverless deployment on Lambda or Cloudflare Workers",[151,154],{"id":152,"by":60,"text":153},"35459291","We did run into that in v0.8 and just submitted a patch to resolve what was causing our issues in one case, in another - we just download Open API spec and edited out offending…",{"id":155,"by":51,"text":156},"35459469","Manually cleaning specs is something I would like to avoid, our oas are generated from code so they would have to be re-cleaned after every endpoint addition\u002Fchange. Great to…",[158,163,172,177],{"value":159,"source":47,"evidence":160},"GraphQL Mesh",[161,162],{"id":50,"by":51,"text":52},{"id":152,"by":60,"text":153},{"value":164,"source":47,"evidence":165},"Hasura",[166,169],{"id":167,"by":146,"text":168},"35462361","Whoops my bad, I am wrong. When I see \"BFF\" I associate it with something like Nhost\u002FHasura\u002FSupabase\u002FAppwrite that's essentially a DB with REST\u002FGraphQL APIs and extra goodies…",{"id":170,"by":51,"text":171},"35466028","There is some overlap, you can hook WunderGraph to db directly but I would say Supabase\u002FHasura has more fine grained capabilities there…",{"value":173,"source":47,"evidence":174},"Supabase",[175,176],{"id":167,"by":146,"text":168},{"id":170,"by":51,"text":171},{"value":178,"source":47,"evidence":179},"SurrealDB",[180],{"id":145,"by":146,"text":147},{"comments":32,"answered":37,"key":182},[183,186,189],{"id":184,"text":185},"35458926","Btw, we've adopted the OpenAPI parser from Mesh. The latest version allows you to use it already. Open Telemetry is almost done, will probably be released tomorrow. What else are…",{"id":187,"text":188},"35459252","I'd suggest you join our discord if you haven't done yet. https:\u002F\u002FWunderGraph.com\u002Fdiscord Id you're open to it, please book a meeting with me after next week, I'm on vacation,…",{"id":190,"text":191},"35459266","If you use the new \"introspect.openapiV2\" you should be fine.",{"commenters":32,"max_depth":193,"maker_replies":32,"first_comment_mins":194,"lifespan_hours":195},6,393,26,[197,199,201,203,205,207,209,211,213,214,216,217,219,221,224,225,227],[50,37,31,198,51,37],"project\u002Fmixed\u002Fidea",[184,37,37,200,11,33],"maker\u002Fneutral\u002Fexecution",[99,37,31,202,51,37],"project\u002Fneutral\u002Fdesign",[187,37,37,204,11,33],"maker\u002Fneutral\u002Fnone",[206,37,31,204,51,37],"35459489",[152,37,42,208,60,37],"project\u002Fpositive\u002Fexecution",[155,37,31,210,51,37],"project\u002Fmixed\u002Fexecution",[121,37,33,212,60,37],"project\u002Fcritical\u002Fexecution",[59,37,42,208,60,37],[107,37,37,215,51,37],"commenter\u002Fcritical\u002Fexecution",[190,37,37,200,11,33],[218,37,42,208,51,37],"35459619",[145,33,37,220,146,37],"other\u002Fneutral\u002Fnone",[222,33,31,223,51,37],"35457701","project\u002Fneutral\u002Fidea",[167,33,31,223,146,37],[170,33,31,226,51,37],"project\u002Fmixed\u002Fperformance",[80,33,37,208,11,33],[],[230,235,240,244,249,253],{"id":231,"name":232,"points":233,"category":234},"35419771","Unknown Pleasures",661,"creative",{"id":236,"name":237,"points":238,"category":239},"35370284","StratusGFX",483,"games",{"id":241,"name":242,"points":243,"category":20},"35440552","e2b",369,{"id":245,"name":246,"points":247,"category":248},"35387160","CoScreen",350,"productivity",{"id":250,"name":251,"points":252,"category":20},"35371469","Gut",314,{"id":254,"name":255,"points":256,"category":257},"35447288","Cheetah",301,"ai",8,false,"v2",{"id":262,"name":5,"line":6,"ai":259,"cat":20,"year":13,"points":14,"comments":15,"rec":28,"s":263,"top":18,"kw":264,"maker":11,"domain":10,"tier":19,"attempts":37,"strip":265,"url":9,"mix":266,"praise":88,"objection":103,"sub":21},35450687,0.08,[24,25,26,27],"30303531500503330",[31,32,31,33],1793991063293]