sqlc vs Symfony MakerBundle
sqlc
sqlc.devSymfony MakerBundle
symfony.comSide by side
| Figure | sqlc | Symfony MakerBundle |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | Yes |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| API | — | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 2 | 1 |
| Spec score · Code Generators | 7.6 (#23) | 8.3 (#10) |
| Purpose | sqlc generates fully type-safe, idiomatic code from SQL queries. | Symfony Maker generates commands, controllers, form classes, tests, and other code to reduce boilerplate. |
| Support | The maker invites users to contact [email protected] or join the sqlc Discord server with feedback. | The Symfony documentation directs users to open an issue to discuss requested MakerBundle extension points. |
Plans
In their own words
sqlc
sqlc is a free command-line tool that turns SQL queries into type-safe application code. You write queries, run sqlc, and call the generated methods from application code through type-safe interfaces. Its documented database matrix covers MySQL, PostgreSQL, and SQLite. Official generators are available for Go, Kotlin, Python, and TypeScript; Go is stable, while Kotlin, Python, and TypeScript are marked beta for MySQL and PostgreSQL. Plugins allow additional languages, with community plugins listed for C#, F#, Java, PHP, Ruby, Zig, Python, and Rust. The sqlc vet command checks queries against configured rules, and sqlc verify checks whether schema changes break existing queries and generated code. Installation options include prebuilt Linux, macOS, and Windows downloads, package managers, Go, and Docker. sqlc Cloud can create short-lived hosted databases for analysis and linting, with managed databases described as read-only.
Symfony MakerBundle
Symfony MakerBundle generates PHP code for Symfony projects through commands in the `make:` namespace. It can create commands, controllers, form classes, tests, and other code to reduce boilerplate. The bundle requires no configuration by default, though its settings can be overridden, and generated PHP files are formatted with php-cs-fixer. The `make:entity` command requires `doctrine/orm` to be installed and configured; it supports ORM but not ODM. Developers can add commands by extending `AbstractMaker` and registering the class as a `maker.command` service. Generated code generally cannot be modified, so the documentation recommends creating a custom maker when changes are needed. Symfony source code is released under the MIT license. The bundle is installed with Composer as a development dependency and costs nothing. Symfony directs users to report security issues privately; for confirmed vulnerabilities, its core team prepares a patch, obtains a CVE identifier, and publishes an announcement. The documentation directs extension-point requests to an issue.