Signing In a User Manually

Last edit: Jul 02, 2019
  • Contributors:
  • diana-lakatos
  • pavelloz
  • lemingos

This guide will help you create an authentication form for users to sign in manually.

Requirements

To follow the steps in this tutorial, you should be familiar with the required directory structure for your codebase, and understand the concept of pages and users.

Steps

Signing in a user manually is a two-step process:

Step 1: Create authentication form

app/form_configurations/sign_in.liquid


---
name: sign_in
resource: Session
fields:
  email:
  password:
---
{% form %}
  <label for="email">Email</label>
  <input name="{{ form.fields.email.name }}" value="{{ form.fields.email.value }}" id="email" type="email">

  <label for="password">Password</label>
  <input name="{{ form.fields.password.name }}" id="password" type="password">
  {% if form.errors.password %}
    <p>{{ form.errors.password }}</p>
  {% endif %}

  <button>Log In</button>
{% endform %}

Step 2: Create sign in page

app/views/pages/sign_in.liquid


---
slug: sign-in
---
<h2>Sign in </h2>
{% include_form 'sign_in' %}
<p>New user? Create <a href="/developer/sign-up"> new developer account</a> or <a href="/client/sign-up">new client account</a></p>

Note

To set an expiration for user sessions, use the "timeout_in_minutes": 0, attribute in the Instance configuration settings JSON as described in the Updating Instance Configuration tutorial. If you set the attribute to 15, for example, all users will get logged out automatically after 15 minutes of inactivity.

Next steps

Congratulations! You created a sign in page for users to sign in manually. Now you can learn about signing in a user automatically after sign up:

Questions?

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