Last edit: Jun 10, 2024


This article series promotes UserProfiles and Forms, which are deprecated. We decided to reduce the learning curve by promoting explicit implementation via Liquid, Pages and GraphQL, instead of built-in features, which add magic into the mix increasing the learning curve and making debugging harder. Please refer to our Get Started to read up-to date articles, including User Authentication

A User is an account that any of your users can have. Each user is assumed to have a unique email address. You can define properties for all users in the app/user.yml file.

User Profiles are roles in your application. Each User Profile can be associated with any number of Properties, Images, Attachments, and Tables.

Sharing attributes across multiple profiles

If your multiple profiles happen to have the same Properties, you can extract them to a container profile which will group them.


A company has a lot of employees, but all of them have the same attributes like name, email, emergency contact, so it would be a good idea to create a profile for "employee", and then use more specific ones for specific roles in the company.

name: employee
  - name: name
    type: string
  - name: email
    type: string
  - name: emergency_contact
    type: string
name: software_developer
  - name: programming_languages
    type: string
name: project_manager
  - name: projects
    type: string

Sign up forms

Sign up forms allow users to sign up by entering their information in a form embedded in a page.

All forms should be located in the app/forms directory.


Check out our Creating a Sign-Up Form page to learn more about sign-up forms.

User authentication

There are a couple of ways to authenticate a user in platformOS, the most common being through an email and password pair, which the user provided via a sign-up form.


We are always happy to help with any questions you may have.

contact us