Skip to content

connect database and write custom directives #15

@bionicles

Description

@bionicles

Dear Eric,

This looks extremely cool. I'm keen to get into Rust for data stuff, and I like Datomic, but dislike JVM kludge, so I found your project.

Would you be openminded to enable users to connect this to a database?

Perhaps something like GraphQL resolvers would work - just a function to fetch the data for various fields

Then we could run Datalog queries on something like RedisGraph, DynamoDB, Postgres, or use them to transform data before we save it, that sort of thing

Also, database connections ideally need some flexible way to define fine-grained authorization rules. I like to do this with functional programming inside the data schema itself, using custom GraphQL Directives

EX:

   @author (check if the user is the author of an object)
   @acl (check if the user is in the access control list) 
   @admin (check if the user has a certain role) 

this could be super powerful in context of Datalog as we could use deductive logic queries to decide who can access what data. Prevents data breaches and allows multi-tenant apps while protecting users' privacy

What do you think about making something like CrepeQL, a mixture of the best of Datalog and GraphQL, to run Datalog on arbitrary databases, with fine-grained authorization, all compiled nicely with Rust?

Thanks in advance for your reply,

Bion

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions