Wondering what’s next for npm?Check out our public roadmap! »

    @superawesome/permissions
    TypeScript icon, indicating that this package has built-in type declarations

    1.0.3 • Public • Published

    SuperAwesome Permissions

    • NPM package: @superawesome/permissions

    • Github: https://github.com/SuperAwesomeLTD/permissions

    Features

    In lieu of a proper landing page, SuperAwesome Permissions features:

    • 🛅 Controlled Access to Resources

    • 💅 Fine Grained Resource Attributes picking

    • 🛃 Dynamic Ownership Rules, hooked to your data layer

    • 🎭 Trivial conversion of Business Rules for Access Control to executing permissions (and vise versa).

    • :atom: Straight-forward fusion of Role-Based Access Control, Attribute-Based Access Control and Whatever-You-Make-it Access control

    • 🔭 Unlimited Scalability (lazy & eager ownership evaluation)

    • 🔧 Easy Integration with everything (REST, Graphql, SQL, NoSQL, APIs, Frontend, Games, anything)

    • 🐚 Zero dependencies with servers, services & other moving parts

    • 📐 Orthogonal / Aspect Oriented philosophy

    • 🎫 Permit is all you need to allow a user do an action on a resource

    (^^ github needed to show icons ^^)

    Contents

    The actual generated docs are at npm run docs:serve and coming soon at SuperAwesome Permissions Documentation. Go to the left, at the CompoDocs Nav Bar.

    NOTE: THESE LINKS BREAK ON GITHUB! (^^^ read above ^^^)

    Note: We also have native Nestjs Guard & Decorators empowering an Orthogonal / Aspect Oriented Architecture.

    Versioning

    The project follows semantic versioning which effectively means a new major version x.0.0 is released for breaking changes, minor 0.x.0 for new features and patch 0.0.x for fixes.

    How to develop

    Code

    • Simply do an npm run test:watch to develop and test at each change.

    • With npm run build:ts you get a build of the library at /dist.

    • With npm run build you get a full build of library & docs at /dist.

    Documentation

    End user docs reside at src/docs & *.md.spec files:

    • With npm run docs:build it builds docs at dist/docs once.

    • With npm run docs:serve it serves docs at http://127.0.0.1:8090 in non-watch mode.

    • With npm run docs:watch it serves docs at http://127.0.0.1:8090 in watch & serve mode.

    Docs generation

    All *.md.spec.ts files generate equivalent src/docs/generated/*.generated.md

    Note: On watch mode it's sometimes slow to build & serve, especially initially. Just change & save the *.md.spec.ts file to trigger generation & also refresh browser if its not refreshing automatically.

    Install

    npm i @superawesome/permissions

    DownloadsWeekly Downloads

    104

    Version

    1.0.3

    License

    Apache-2.0

    Unpacked Size

    4.86 MB

    Total Files

    191

    Last publish

    Collaborators

    • avatar
    • avatar