❄️Winter sale! Get 20% off with code WINTER at checkout

Volca Logo
PricingDocsBlog

Feature

Authentication

Authentication is a critical aspect of building any software as a service product. It is the process of verifying the identity of users who access your platform, and ensuring that only authorized users can access the features and data within it.

Technologies

How is it built?

Learn more about the technologies behind this feature.

AWS Cognito

AWS Cognito is a fully-managed service provided by Amazon Web Services (AWS) that provides user sign-up, sign-in, and access control functionalities for web and mobile applications. It is a scalable and secure user directory that can handle user authentication and authorization for millions of users.

React

Volca uses React to build all the UI components and pages for a beautifully designed authentication solution.

TypeScript

TypeScript provides a robust type system that enables developers to catch potential authentication-related errors during the development phase. Additionally, TypeScript's strong typing allows for better code documentation and editor support.

Screenshots

Sign in example image

The sign in page

Examples

To secure your API, you need an authentication mechanism to ensure that the users calling your API is who they claim to be. This is usually done by providing some sort of proof in each request made to the API. For example a token that is obtained when signing in.

The Volca API comes with security built in by providing an authentication middleware that can be used in your routes. It's as simple as adding the authentication middleware to your route and any request will require an access token obtained from AWS Cognito to get access to the endpoint.

router.get(
'/projects',
authenticationMiddleware,
createProjectAction
);

When a route has the authentication middleware, the authenticated user will also be available in the request context and you can access the user object in your endpoint.

export const action = useApiAction(async (ctx: CustomContext) => {
const { user } = ctx;
return {
body: {
message: `Hello ${user.firstName}!`,
},
};
});

Support

FAQs

Frequently asked questions about Volca. Can't find what you are looking for? Feel free to contact us.


Volca Logotype

SaaS Starter Kit and Boilerplate

KITS

Python and DjangoRuby on RailsPHP

© 2024 SaaS Boilerplate and Starter Kit with Node.js and React - Volca.