Ents is in maintenance mode. Should I use it?
"Ents is in maintenance mode. We're open to taking PRs, and will make sure it doesn't break. There will not be active feature development from the Convex team."
Is it OK to use ents? Should I avoid using it if I started a new project?
11 Replies
Thanks for posting in <#1088161997662724167>.
Reminder: If you have a Convex Pro account, use the Convex Dashboard to file support tickets.
- Provide context: What are you trying to achieve, what is the end-user interaction, what are you seeing? (full error message, command output, etc.)
- Use search.convex.dev to search Docs, Stack, and Discord all at once.
- Additionally, you can post your questions in the Convex Community's <#1228095053885476985> channel to receive a response from AI.
- Avoid tagging staff unless specifically instructed.
Thank you!
No danger in using it, really comes down to preference. It can save boilerplate on relationship related code for sure. Just comes with the caveats you mentioned.
Thanks for the response. What caveats?
We're open to taking PRs, and will make sure it doesn't break. There will not be active feature development from the Convex team.We like the stuff in Ents and are thinking about how to incorporate some of it into Convex core. We're not adding new feature to Ents.
Does that mean if I go now with Ents, I can expect some relevant migration later if you ship your own version as part of the convex core?
Migration as in a stack post comparing the two approaches and outlining the differences and how to update, yes. An automated codemod, probably not; the changes may be deep enough that it would be difficult automatically convert the code.
You should check out the new helpers here:
https://stack.convex.dev/merging-streams-of-convex-data
and article on doing SQL with it here:
https://stack.convex.dev/translate-sql-into-convex-queries
I'd love to know if this is sufficient to skip using Ents, or if there was something else you really liked - e.g. edge definition & traversal sugar
Merging Streams of Convex data
New convex-helpers are available now for fetching streams of documents, merging them together, filtering them them out, and paginating the results. Wi...
Translate SQL into Convex Queries
Here’s a cheatsheet with examples of conversions between SQL queries and Convex queries. This article is geared towards developers (and LLMs) who have...
I never actually used Fauna - what's an example query look like? It's their special graphql-style declarative syntax?
They had GraphQL support, but they dropped it in favor of their more powerful FQL language, which is inspired by JavaScript, Python, and GraphQL.
Collections (Table)
Written in a language file called fsl (fauna schema language).
I appreciated the co-location of collection constraints, making it easy to understand a collection and its associated rules.
CRUD
(Written in FQL - Fauna query language)
I liked the short, but powerful syntax.
More queries: https://docs.fauna.com/fauna/current/reference/fql-api/cheat-sheet/
Security (ABAC) - written in FSL
I love their simple yet powerful ABAC system - in my opinion, the best part of Fauna, because it makes security relatively easy.
Thanks! Looks pretty nifty - similar to a few existing helpers in Convex. Best of luck with the migration!