Content app

Building a community with your app

Building a community around your app makes it more valuable and keeps your users coming back. The mechanism is simple: once a user is logged in, you learn more about them, so you meet their needs better.

On download, users often fill in a first form of personal details. That's a first commitment to the brand. A community space turns that one-off commitment into lasting use.

It all rests on one foundation feature, user authentication, onto which the user list, the groups and the chat are then plugged.

Chapter 1User authentication

What it's for

It creates a login module, which you make mandatory or not at the entrance to the application.

Being able to close all or part of your app is decisive for many creators: it's what lets you reserve content and features for members. Beyond protecting content, closing the app encourages your users to create a profile, and so tells you more about your audience.

Dali Corp's internal app, meant for employees, is entirely closed to anyone without credentials.

Two settings combine freely:

  • you close the whole application, or only part of it
  • you let all your users create a profile, or you switch that option off and only admit chosen people, whose profiles you create by hand from the back office before sending them their credentials

That flexibility is what makes the feature universal: the same tool serves a public app wanting to know its readers and a strictly closed company app.

Above all, remember that authentication is the parent feature of many others: the loyalty features depend on it, as do all the community features that follow.

One fork to know about before you start. This guide describes the standard authentication flow, the one that opens accounts, groups, per-section rights, chat and the loyalty tools. There is a second one, reserved for apps selling access to their content through an in-app membership, and it only grants binary access: subscribed, or not subscribed.

The two flows are mutually exclusive. An app uses one or the other, never both. If selling memberships is part of your project, settle it before you build your community, because switching from one flow to the other undoes what you've put in place. The back office warns you explicitly at the moment of switching. The subject is covered in "Making money with your content app".

One reassuring detail as you decide: if you do switch, we migrate the accounts created with an email address, so your list of registered users follows you. Only accounts opened through a social network don't migrate.

Three app screens side by side: the invitation to sign in, with the company logo and an entry button; the sign-in form, two fields and a forgotten-password link; then the user's profile, their photo over a blurred background, a button to edit their details, and under two tabs their account entries: their card, their gifts, their messages.

Setting it up

Adding the Authentication extension creates a new Community menu in your back office. The settings themselves are in Settings Registration process.

It also adds two sections to your app: the login section, which the back office calls the Log box and which stays at the top of your structure, and the User profile, each registered user's personal space. You make the latter reachable through a link on the home screen, a menu entry or a header button.

There you decide whether to allow account creation from the app, whether to allow access without logging in, and you edit the message shown to visitors who don't have a profile.

One option on that same screen deserves to be known before you open registrations: Force email validation at registration (double opt-in). Switched on, it only opens the account once the confirmation link has been clicked. It's one more step, and it will cost you a few sign-ups along the way. In exchange, your user list doesn't fill up with mistyped or borrowed addresses, and every account corresponds to someone who did receive your message. On an app where the account gives access to reserved content, that's the right setting.

The User profile tab lets you allow profile pictures, links to social networks, and per-user management of push notifications. That last option deserves attention: your users can then look through the history of notifications they've received and choose which streams they subscribe to.

This is also where you set up the profile fields. You can add several types of extra field, required at sign-up or not.

External connections save your visitors from creating one more password. There are three of them, and each has its own screen: Settings Connection with Facebook, Settings Connection with X and Settings Sign in with Apple.

Two things to know before switching them on. None of them plugs in by ticking a box: each one requires a developer account with the service concerned, and an application declaration procedure the back office details step by step. Allow time for it, and above all don't switch them on the day before a launch.

And they don't replace account creation by email, which stays the foundation. That's what lets you recover your list if you ever change authentication system: as noted above, accounts opened through a social network don't migrate.

Community Public/Private manages access to sections. You close the whole application or only certain sections, in one click.

The registration settings screen, first of its three tabs. Two switches open or close sign-up and access without an account. Below them, two fields make up the message shown to anyone without access, a title and a subtitle. A last block, switched on, applies the restrictions already in place to new groups. On the right, a preview of the form as the user will see it.
The second tab, the profile one. A switch authorises the profile photo; a row of seven social network chips is added to or trimmed by a button sitting on each one; two switches control the notification history and the subscription to scheduled sends. On the right, the profile preview updates.
The third tab, external services. Two blocks, one per network, each with its connection switch, off here. A note under the second one says it applies to native apps alone.
The screen that opens or closes each section of the app. Every row carries the section icon, its name, a switch between open padlock and closed padlock, and, when the section is closed, the groups allowed in with a button to add more. The first row commands the whole app.

Chapter 2The user list

Once authentication has been added, you get Community User list, from which you manage all your registered users.

The list shows their main details and filters by most recent signups or most recent logins. You can export the data as a .csv, add a user by hand, or delete several using the checkboxes at the end of each row.

Clicking a user opens their profile in detail, which you can edit. You'll find the default fields there along with the ones you set up.

Bulk import is done from Community User list, through the Import link at the top of the list, from a .csv file.

Two columns are mandatory and open the file: the email, which acts as the identifier, and the password, in plain text. The columns after that fill out the profile. One import carries up to 10,000 users, and an email tells you when processing is done.

A practical tip: start by running an export. That gives you a spreadsheet already in the right format, which you only have to fill with your new users, adding the password column. The safe move is to put the same neutral password for everyone, then ask your users to reset it on first login.

The list of registered users. A sort menu at the top left, a search field below it, and on the right two actions, exporting the data and adding a user by hand. Each row carries the person's photo, their name, their city and their last login, and ends with a checkbox.
The record of one registered user, opened from the list. Their photo on the left, then their fields: login, email, name, city, free description, and two social network chips to attach. At the bottom, delete on the left, save on the right.

Chapter 3User groups

The User Groups extension comes into its own if you plan to restrict parts of your content. It lets you create groups and reserve sections of the app for one or several of them. Like every extension in this family, it requires the Authentication extension, and its listing shows the price that applies to your app.

A user can belong to no group, one group or several. If they're in none, they automatically join the Default group. Groups are managed from Community User list, Groups tab.

You create as many as you like. At Dali Corp they match the company's departments: each employee reaches the content meant for their team and has a private communication space inside the app.

Groups also serve to target push notifications, which changes the quality of your communication a great deal: you stop sending everyone what only concerns some of them.

The mechanism carries well beyond the company setting, into a school or an editorial app wanting to target its readers better.

The same list, group menu dropped down. Each group shows its headcount in a chip and, apart from the default one, an export link; two buttons create a group or edit the existing ones. In the table behind, every user carries the groups they belong to, sometimes two.

Chapter 4Chat

Chat is an extension too, added from the store, and it requires the Authentication extension just as groups do. Its listing shows the price that applies to your app.

Chat first brings your users closer to each other, which serves an app with a social purpose. But above all it creates a space to exchange and debate, and it improves a company's internal communication by letting employees contact each other.

The member directory is a separate section, brought by another extension in the same family. Your registered users browse other members' public profiles there and contact them from their card, and a map view lets them spot the ones nearby. That section, not the chat, is what makes your community visible inside the app.

Two limits to know before rolling it out: it's a one-to-one chat, and only text can be exchanged.

Chat is central to building a real community. Company apps and purely community apps benefit from it first, but think about bending it to other uses too, to run a customer service desk or to make an event app feel more alive.

Two chat screens in the app: on the left the list of conversations, each with its correspondent's avatar, the start of the last message, its date and access to settings; a round button at the bottom right starts a new one. On the right, an open conversation, its alternating timestamped bubbles, the input field and its send button, and at the top right the reporting icon.