Nicheloom visits: 58,069 all-time · 7,637 in the last 7 days

The opportunity tracker for new startups.

Today: 1,953 launches · Niche of the day: specialized calculation tools · See what launched today →

We built a type-safe Python ORM for RedisGraph/FalkorDB

Get picks like this daily. Today's launch numbers, the top launches, AI and tech news, and a daily opportunity pick, straight to your inbox.

Want to reach these readers? Sponsor an issue.

We were tired of writing raw Cypher — escaping quotes, zero autocomplete, refactoring nightmares — so we built GraphORM: a type-safe Python ORM for RedisGraph/FalkorDB using pure Python objects.What it does Instead of fragile Cypher: query = """ MATCH (a:User {user_id: 1})-[r1:FRIEND]->(b:User)-[r2:FRIEND]->(c:User) WHERE c.user_id <> 1 AND b.active = true WITH b, count(r2) as friend_count WHERE friend_count > 5 RETURN c, friend_count ORDER BY friend_count DESC LIMIT 10 """ You write type-safe Python: stmt = select().match( (UserA, FRIEND.alias("r1"), UserB), (UserB, FRIEND.alias("r2"), UserC) ).where( (UserA.user_id == 1) & (UserC.user_id != 1) & (UserB.active == True) ).with_( UserB, count(FRIEND.alias("r2")).label("friend_count") ).where( count(FRIEND.alias("r2")) > 5 ).returns( UserC, count(FRIEND.alias("r2")).label("friend_count") ).orderby( count(FRIEND.alias("r2")).desc() ).limit(10) Key features: • Type-safe schema with Python type hints • Fluent query builder (select().match().where().returns()) • Automatic batching (flush(batch_size=1000)) • Atomic transactions (with graph.transaction(): ...) • Zero string escaping — O'Connor and "The Builder" just workTarget audience • AI/LLM agent devs: store long-term memory as graphs (User → Message → ToolCall) • Web crawler engineers: insert 10k pages + links in 12 lines vs 80 lines of Cypher • Social network builders: query "friends of friends" with indegree()/outdegree() • Data engineers: track lineage (Dataset → Transform → Output) • Python devs new to graphs: avoid Cypher learning curveData insertion: the real game-changerRaw Cypher nightmare: queries = [ """CREATE (:User {email: "[email protected]", name: "Alice O\\'Connor"})""", """CREATE (:User {email: "[email protected]", name: "Bob \\"The Builder\\""})""" ] for q in queries: graph.query(q) # No transaction safety!GraphORM bliss: alice = User(email="[email protected]", name="Alice O'Connor") bob = User(email="[email protected]", name='Bob "The Builder"') graph.add_node(alice) graph.add_edge(Follows(alice, bob, since=1704067200)) graph.flush() # One network call, atomic transactionTry it in 30 seconds pip install graphorm from graphorm import Node, Edge, Graph class User(Node): __primary_key__ = ["email"] email: str name: str class Follows(Edge): since: int graph = Graph("social", host="localhost", port=6379) graph.create() alice = User(email="[email protected]", name="Alice") bob = User(email="[email protected]", name="Bob") graph.add_node(alice) graph.add_edge(Follows(alice, bob, since=1704067200)) graph.flush() GitHub: https://github.com/hello-tmst/graphormWe'd love honest feedback: • Does this solve a real pain point for you? • What's missing for production use? • Any API design suggestions?

HN · launched Jan 28, 2026 · 5 upvotes (top 90%) · 1 view

Niche: database management systems and engines · 162 launches, 5 in the last 7 days ▼ -17% · Explore this niche →

Category and tags

  • Horizontal
  • Data infrastructure
  • Developer
  • Not AI
  • Hobby / open-source project

Source listing ↗

Could you build this?

Yes This is a lightweight Python mapping library translating Python object schemas and method calls into Cypher query strings for RedisGraph/FalkorDB.

Discussion

6 comments analyzed.

Competitors mentioned: FalkorDB (maintained RedisGraph successor), RedisGraph (discontinued), falkordb-py-orm (FalkorDB's official Python ORM), spring-data-falkordb (Java ORM), falkordb-go-orm (Go ORM)

Concerns raised: Variable-length paths complexity in ORMs, Cypher string debugging difficulty

Feature requests: Expand support to other Cypher-compatible databases, RBAC-based security features

Competitors

Other products that read as similar to this one : 27 launches clear the similarity bar, closest 8 shown.

Attention rank: #27 of 28 (itself plus its competitors, highest first, normalized so YC and Product Hunt are compared fairly).

Launched 91 days after the earliest competitor.

  • TypeGraph · hn · 2026-02-24 · 5 upvotes · similarity 0.48
  • SQLite Graph Ext · hn · 2025-10-29 · 35 upvotes · similarity 0.44
  • BlitzGraph · hn · 2026-06-16 · 15 upvotes · similarity 0.43
  • Map · github · 2026-10-01 · 9 upvotes · similarity 0.37
  • TuringDB · hn · 2026-01-28 · 7 upvotes · similarity 0.37
  • graphersal · github · 2026-10-11 · 15 upvotes · similarity 0.36
  • Oxyde · hn · 2026-03-13 · 155 upvotes · similarity 0.35
  • opsis · github · 2026-09-24 · 10 upvotes · similarity 0.35

The niche, labels, vibe code rating and competitor comparison on this page are analysis by Nicheloom. If you use them, please credit nicheloom.com. How you may use our data.