Manage all types of time series data in a single, purpose-built database. Run at any scale in any environment in the cloud, on-premises, or at the edge. Learn more →
Top 17 PHP GraphQL Projects
-
graphql-php
PHP implementation of the GraphQL specification based on the reference implementation in JavaScript
This package provides a convenient integration of the great https://github.com/webonyx/graphql-php/ library for Laravel 9+.
-
It's very easy to use when you use https://www.wpgraphql.com/ Here's an example of a repeatable component I set up using the repeater filled. It might help you.
-
InfluxDB
Collect and Analyze Billions of Data Points in Real Time. Manage all types of time series data in a single, purpose-built database. Run at any scale in any environment in the cloud, on-premises, or at the edge.
-
Sure.
1. SQLC is little more than a template generator for Prepared Statements wrapped in a class. [https://www.php.net/manual/en/mysqli.quickstart.prepared-sta...]. It's not exactly a mind bending or time saving tool.
2. There are multiple OpenAPI generators for PHP, in fact, they existed from nearly the start of the OpenAPI protocol (formerly Swagger) when Go was barely a year old. Here's a current popular one: https://openapi-generator.tech/docs/generators/php/]
3. PHP also, (unsurprisingly given the origination point of the spec) has many GraphQL implementations that support any database driver over ODBC, key-value stores, or even flat files. Here's one that plugs into Laravel [https://lighthouse-php.com/]
4. PHP has many mature, modern embedded KV store options... but it's also had one in the standard lib since years before Go even existed, or the concept of KV stores was even popular. [https://www.php.net/manual/en/class.splobjectstorage.php].
On your non-numbered points...
Go and PHP are fairly similar in raw processing speed since the JIT was added to PHP. However raw number crunching is rarely realistic when most applications are going to be using databases, stores, etc. So why not look at a benchmark of popular frameworks in both languages - which shows, again that the two are fairly similar in performance. [https://www.techempower.com/benchmarks/#section=data-r21&l=z...]
PHP has also had types for about 4 years now. It's not statically typed, but that's a preference, not a pro/con situation.
Built-in formatting is also a preference, not a pro/con situation. Many developers strongly dislike languages like Go and Python for this.
PHP has had one of the most powerful and useful package management ecosystems in the entire open source world since composer mostly replaced PEAR nearly a decade ago. It also has mature and well loved testing tooling. Neither of which are built in, because why would you need to build in tools that the community already creates and maintains for free?
I don't know what "bugs" you faced in the PHP stdlib, but I will concede that it is painful to use. Most of the stdlib is little more than a wrapper around C functions of the same name, and they inherit the frustration of using those C functions.
Laravel does allow you to write things by hand. You can also just define them ahead of time and have the Migrations, Models, Controllers, Views, Transformers and more generated for you automatically. [https://blueprint.laravelshift.com/]
There you go, there's your links. But frankly, you didn't need them. There's little you mentioned that's unique to Go at all, you just named a bunch of things that have become popular tools for most modern languages still being actively developed. I'm not sure why you think any of these things are Go-specific - some of them are maintained by the Go core team, like other newer languages have started doing, but that's it.
-
The most typical approach is having a CMS admin panel sit somewhere on the server; everyone with an account uses this. This is a very convenient approach, especially when working with a team. This way, many people can work on different articles simultaneously without worrying about potential conflicts or overwriting stuff. The only con is related to security - everyone can try to get inside, and if you forget to update our CMS or some user have a weak password, it can be someone outside of our team. WordPress, Drupal, CraftCMS, or Ghost are perfect examples of such CMSs.
-
Aah, that's always a controversial question, on one hand, some universal rules of usability do exist, but on the other hand, everyone's habits, taste and use cases are very different.
The most neutral definition of a "well designed" website, without any further context, could be "created in a way that helps users achieve intended goals efficiently, while keeping max number of users happy about its look".
Again, different audiences will have very different answers. Here at HN, sites like https://www.mcmaster.com/ and https://www.craigslist.org win – because HN users appreciate old look and how efficient these sites are.
https://www.apple.com/ is an industry standard of a marketing site for consumer tech. It's not universally "well designed".
Other examples of well done marketing pages: https://www.sketch.com/ ; https://statamic.com/ ; https://linear.app/ got its share of hype recently.
Other times, a website is well designed because its content is awesome and is easy to consume. See https://ciechanow.ski/ and https://www.joshwcomeau.com/
Is https://github.com/ well designed? As an amateur developers, I'd say yes.
Is https://htmx.org/ well designed? Hmm, at a glance, there's no design at all. Is no design also design? That's a rabbit hole.
P.S. I often hear my website is well-designed :-)
-
For a great setup to use as an example, see https://github.com/api-platform/core. The Behat library config is in behat.yml.dist, the feature files (process descriptions) are in the ./features directory, and the context files (Feature file Steps resolved to Context functions) can be found in ./tests/Behat.
-
OverblogGraphQLBundle
This bundle provides tools to build a complete GraphQL API server in your Symfony App.
-
Mergify
Tired of breaking your main and manually rebasing outdated pull requests?. Managing outdated pull requests is time-consuming. Mergify's Merge Queue automates your pull request management & merging. It's fully integrated to GitHub & coordinated with any CI. Start focusing on code. Try Mergify for free.
-
Project mention: As a React dev, I feel VERY lost in trying to understand Wordpress and CMS in general. Please help with your answers for some of my questions | /r/webdev | 2022-11-10
There are a few options here https://wordpress.org/plugins/wp-gatsby/ being one https://www.advancedcustomfields.com/ and https://github.com/wp-graphql/wp-graphql-acf being another
-
Project mention: Learning about HPOS - testing it out for the first time. A little information, please. | /r/woocommerce | 2023-03-15
So I heard that HPOS exists, and it's time to try WooCommerce again over 8-10 years or so. I set it up, enabled the HPOS feature and installed WpGraphQl + https://github.com/wp-graphql/wp-graphql-woocommerce. I still need to test WPML (or something else) for the product translations. But My question is:
-
Project mention: Show HN: Gato GraphQL – a tool to interact with data in WordPress | news.ycombinator.com | 2023-09-15
-
-
Here is another one that is has been around for awhile: https://github.com/pristas-peter/wp-graphql-gutenberg
-
-
-
-
graphpinator
:zap::globe_with_meridians::zap: Easy-to-use & Fast GraphQL server implementation for modern PHP. Includes features from latest draft, middleware directives and modules with extra functionality.
-
watchtower-symfony-bundle
Easily serve a GraphQL API for a Symfony application in as few as three easy steps!
-
SonarLint
Clean code begins in your IDE with SonarLint. Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.
PHP GraphQL related posts
- Show HN: Gato GraphQL – a tool to interact with data in WordPress
- Gato GraphQL: Interact with all your data in WordPress using GraphQL
- Show HN: Released v1.0 of Gato GraphQL (For WordPress)
- graphql-laravel 9.0.0 released 🎉
- Nuxt3, Wordpress and ACF Flexible content types
- redirect headless wordpress frontend without affecting API
- Looking for a plugin/codebase using which I can enter and save data which will then be available via the REST API
-
A note from our sponsor - InfluxDB
www.influxdata.com | 24 Sep 2023
Index
What are some of the best open-source GraphQL projects in PHP? This list will help you:
Project | Stars | |
---|---|---|
1 | graphql-php | 4,531 |
2 | wp-graphql | 3,521 |
3 | lighthouse | 3,228 |
4 | CraftCMS | 3,063 |
5 | cms | 2,962 |
6 | core | 2,276 |
7 | OverblogGraphQLBundle | 756 |
8 | wp-graphql-acf | 600 |
9 | wp-graphql-woocommerce | 598 |
10 | GatoGraphQL | 343 |
11 | wp-graphql-jwt-authentication | 306 |
12 | wp-graphql-gutenberg | 287 |
13 | wp-graphql-polylang | 108 |
14 | graphql-doctrine | 96 |
15 | php-graphql | 53 |
16 | graphpinator | 36 |
17 | watchtower-symfony-bundle | 0 |