topaz
granite-orm
topaz | granite-orm | |
---|---|---|
9 | 5 | |
982 | 293 | |
2.6% | 0.3% | |
9.5 | 7.1 | |
2 days ago | 4 months ago | |
Go | Crystal | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
topaz
-
Open Policy Agent
OPA is a great tool for implementing a policy-as-code system. But if you're trying to use it for application authorization (e.g. fine-grained authz for B2B SaaS or a set of internal applications), you may find that its policy story is strong, but it doesn't really have a "data plane": you either store data in a data.json file and rebuild the policy any time that data changes, or make an http.send call out of the policy to fetch dynamic data.
Check out Topaz [0], which uses OPA as its decision engine, but adds a data plane that is based on the ReBAC ideas explored in the Google Zanzibar [1] paper.
Disclaimer: I work on the team [2] that builds and maintains the Topaz project.
[0] https://www.topaz.sh
[1] https://research.google/pubs/zanzibar-googles-consistent-glo...
[2] https://www.aserto.com
-
Show HN: Topaz 0.30 – OSS authz service combining the best of OPA and Zanzibar
You can, simply use the topazd.exe binary from the topaz_windows_x86_64.zip from the GH releases page (https://github.com/aserto-dev/topaz/releases). Note this is currently not a Windows Service, so not net start topaz. Let me know if that would be interesting.
-
OPA (Open Policy Agent) VS topaz - a user suggested alternative
2 projects | 25 Jul 2023
Topaz is an open-source authorization project for cloud-native applications. It uses OPA as the decision engine and supports Rego policy as first-class citizens. It also has an embedded relationship database to support data-centric authorization models like Google Zanzibar's relationship-based access controls (ReBAC).
- Topaz
- Show HN: Topaz: open-source authorization combining the best of OPA and Zanzibar
granite-orm
-
Announcing Didact the anti-CMS!
This project has been half a year in the making. I've learned so much from it, most importantly Crystal and learning to love SQLite and hate Postgres. The journey led me through contributing to several dependencies, including the Granite ORM, Markd, the SQLite3 bindings, and even creating Sanemark implementing it in a fork of Markd!
-
It seems like Rust software is bad
The 3 Crystal ORMs I've checked out, Granite, Clear, and Jennifer, are all 10k lines or less. Given Crystal's pragmatism-before-purity philosophy compared to Rust, I'd expect them to be a little briefer, but not that much.
-
Frustrations with Crystal ORMs
The "generate create table SQL from model definition" feature is not usable for my use case because it doesn't treat foreign keys at all, only basic fields and types. It actually doesn't even support NOT NULL columns right now except for the primary key, and my PR to fix that has been hanging for two weeks.
What are some alternatives?
openfga - A high performance and flexible authorization/permission engine built for developers and inspired by Google Zanzibar
jennifer - Crystal ORM using ActiveRecord pattern with flexible query DSL
permify - Open source authorization service inspired by Google Zanzibar to build fine-grained and scalable authorization systems.
crecto - Database wrapper and ORM for Crystal, inspired by Ecto
DSP-Shared_Collection
active_record.cr - Active Record pattern implementation for Crystal.
spicedb - Open Source, Google Zanzibar-inspired permissions database to enable fine-grained access control for customer applications
avram - A Crystal database wrapper for reading, writing, and migrating Postgres databases.
ASP.NET Identity
clear - Advanced ORM between postgreSQL and Crystal
IAmRoot NuGet Package - 📦🏴☠️ NuGet package that shows we can run arbitrary code from any NuGet package
stal-crystal - Set algebra solver for Redis