Backend solutions for your frontend codebase.

Authentication, authorization, monetization and more.

users.js
reset-password.js
contact-us.js
if(session.counters.users === 10)
<button>Upgrade Plan</button>
else
<button>Add User</button>
if(hasAccess('users:d')
<button>Delete User</button>

Introduction

About

Backstack is a cloud-based Backend-as-a-Service (BaaS) for developers to outsource the behind-the-scenes aspects of a web or mobile app.

Whether you're starting fresh or enhancing an existing project, integration of the Backstack logic is the same.


Features

The platform provides a range of features and processes required in application development.

Authentication

  • Log in
  • Forgot password
  • Sign up

Authorization

  • Session-specific RBAC
  • Multi-domain application environments
  • Configured application feature access

Monetization

  • SaaS application versioning
  • In-app feature integration
  • Account B2B networking with optional revenue sharing
  • Account invoicing and payments

More

  • Account management
  • Multi-user environments
  • Application alerts and user notification management
  • Dynamic tables for custom records management

Intelligent access control

Backstack's core strength is that it allows developers to handle multiple layers of functionality at once. It achieves this by pre-compiling complex configurations to produce a streamlined, individualistic session object ready for processing.

if (hasAccess('payment-methods:d', session?.access)) {
  return <button>Delete Payment Method</button>
}

This example implementation handles two critical security layers:

  1. Feature Versioning

    • Validates whether payment methods functionality is enabled in the current application version
  2. Permission Control (RBAC)

    • Verifies if the user's role(s) permits payment method deletion operations

Simplified endpoints

The entire API is accessed through three distinct categories of logic. Simplifying the thought process while working within your codebase.

/app

Endpoints relating to the current app schema.

GET /app/session

/account

Endpoints specific to the current session account.

GET /account/users

/user

Endpoints for interaction with the current session user.

GET /user/notification-settings