parse-server
graphql-helix
Our great sponsors
parse-server | graphql-helix | |
---|---|---|
39 | 17 | |
20,613 | 831 | |
0.2% | -0.2% | |
9.4 | 0.0 | |
6 days ago | 21 days ago | |
JavaScript | TypeScript | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
parse-server
-
The 2024 Web Hosting Report
Backend as a Service (BaaS) goes back to early 2010’s with companies like Parse and Firebase. These products integrated everything a backend provides to a webapp in a single, integrated package that makes it easier to get started and enables you to offload some of the devops maintenance work to someone else.
- Placemark is going open source and shutting down
- Thoughts on Parse Platform / Server
-
Tools for scanning commits?
Prototype Pollution Fix
-
How to set up a Parse Server backend with Typescript
Parse Server is a great way to quickly spin up a backend for your project. Parse is a Node based utility that sits on top of ExpressJS.
-
A Guide On Appwrite
Parse
- [SERIOS] Solutie backend + DB pentru o aplicatie web
-
Free online DB for production app
You can try https://parseplatform.org/, it is self-hosted if you need. And also there are a number of cloud services with compatible API, like https://www.back4app.com/ It has dart-friendly generated API client, much simpler than firebase and is built on top of postgresql and mongodb.
-
Backend (auth/payment) options for Flutter app and web.
Parse - https://parseplatform.org/
-
Supabase Series B
Not to crash the party or anything. Supabase is great and all but in terms of feature completeness and getting actual products built, it doesn't come close to Parse[0].
Same with Appwrite. Both of these are very popular but they either lack essential features or have them behind a subscription wall. For example, the OSS version of Supabase (last I checked) doesn't include the edge functions which are really important for easily computing stuff on the server side. Parse on the other hand is 100% open source and has a huge feature set. It's older than all of these lo-code tools and actually helps solve the issues one comes across when using such tools.
Another thing is extending these tools which is a pain. For example, Parse supports multiple databases by default (postgres & MongoDB) and the ability to write a custom adapter if you need something else. Similarly, if you at any point need to go 100% custom it also makes that possible so you are never locked in. These tools however don't have that level of low-level control and are general all or nothing kind of tools best for small-to-medium sized problems which don't have a lot of room to grow.
But both of these (Appwrite & Supabase) are super markety. Appwrite is all over the place with their ads, Supabase got a huge trend when it launched etc. Parse on the other hand is not too good at marketing their product being fully community run which is one reason not many know of it. Another is their not-so-fancy docs.
I have no stake in any of these products: just my conclusion after having tried all of these.
[0] https://parseplatform.org/
graphql-helix
-
Apollo Layoffs
Depends on language, I've build GraphQL servers in a few, though mostly JavaScript and Python. For Python I used to use Graphene, these days I use Strawberry.
For JavaScript, I originally used graphql-js and express-graphql, as these were the original libraries and I was a literal day 1 adopter. All the libraries are essentially just wrappers around graphql-js, so it's still viable to use directly. But for schema-building I now use Pothos (https://pothos-graphql.dev/), I'd probably use graphql-helix as the http layer (https://github.com/contra/graphql-helix).
-
Does Apollo GraphQL cost money to use in production? And other beginner questions about GraphQL
If you want a lower level graphql server https://graphql-helix.vercel.app/ or https://benzene.vercel.app/ might be worth checking out.
-
Code-first schema definition
While there are many GraphQL server packages available, we need one that will play nicely with Nuxt3's server engine (Nitro / h3). In the spirit of keeping things extensible and framework-agnostic, GraphQL Helix seems like a really good choice. Let's add it to our project:
-
What's next?
Looks interesting, have you tried graphql-helix?
-
When to use multiple endpoints in GraphQL
When using a JavaScript server, a convenient way to achieve this is with GraphQL Helix, which decouples the handling of the HTTP request from the GraphQL server. With Helix, we can have the routing logic be handled by a Node.js web framework (such as Express.js or Fastify), and then — depending on the requested path (i.e., the requested endpoint — we can provide the corresponding schema to the GraphQL server.
-
a first look at graphQL helix
GraphQL Helix is a framework and runtime agnostic collection of utility functions for building your own GraphQL HTTP server. Instead of providing a complete HTTP server or middleware plugin function, GraphQL Helix only provides a handful of functions for turning an HTTP request into a GraphQL execution result. You decide how to send back the response.
-
Introducing Envelop - The GraphQL Plugin System
import { envelop, useSchema, useLogger } from '@envelop/core'; import fastify from 'fastify'; import { processRequest, getGraphQLParameters } from 'graphql-helix'; // This creates the `getEnveloped` function for us. Behind the scense the wrapped functions are created once, here. const getEnveloped = envelop({ plugins: [useSchema(schema), useLogger()], }); const app = fastify(); app.route({ method: ['POST'], url: '/graphql', async handler(req, res) { // Here we can pass the request and make available as part of the "context". // The return value is the a GraphQL-proxy that exposes all the functions. const { parse, validate, contextFactory, execute, schema } = getEnveloped({ req, }); const request = { body: req.body, headers: req.headers, method: req.method, query: req.query, }; const { operationName, query, variables } = getGraphQLParameters(request); // Here, we pass our custom functions to Helix, and it will take care of the rest. const result = await processRequest({ operationName, query, variables, request, schema, parse, validate, execute, contextFactory, }); if (result.type === 'RESPONSE') { res.status(result.status); res.send(result.payload); } else { // You can find a complete example with Subscriptions and stream/defer here: // https://github.com/contrawork/graphql-helix/blob/master/examples/fastify/server.ts res.send({ errors: [{ message: 'Not Supported in this demo' }] }); } }, }); app.listen(3000, () => { console.log(`GraphQL server is running...`); });
-
Subscriptions and Live Queries - Real Time with GraphQL
Fortunately, we now have libraries like Graphql Helix, which, in my humble opinion, should replace express-graphql as the reference HTTP implementation since GraphQL Helix is also not tied to any web server framework.
-
GraphQL - Diving Deep
If you are using Node.js there are a lot of implementations of GraphQL servers with a few being express-graphql, apollo-server, mercurius, graphql-helix and more. And if you are using other languages, you can see a great list here
-
The Stack #1
Graphql Helix
What are some alternatives?
Appwrite - Build like a team of hundreds_
graphql-yoga - 🧘 Rewrite of a fully-featured GraphQL Server with focus on easy setup, performance & great developer experience. The core of Yoga implements WHATWG Fetch API and can run/deploy on any JS environment.
supabase - The open source Firebase alternative.
apollo-server - 🌍 Spec-compliant and production ready JavaScript GraphQL server that lets you develop in a schema-first way. Built for Express, Connect, Hapi, Koa, and more.
nestjs-graphql - GraphQL (TypeScript) module for Nest framework (node.js) 🍷
mercurius - Implement GraphQL servers and gateways with Fastify
ObjectBox Java (Kotlin, Android) - Java and Android Database - fast and lightweight without any ORM
MongoDB - The MongoDB Database
express-graphql - Create a GraphQL HTTP server with Express.
Vapor - 💧 A server-side Swift HTTP web framework.
graphql-jit - GraphQL execution using a JIT compiler