Codemagic is not just for hobby developers or one-man teams, it's also for companies and development agencies where there are several developers contributing to a project. With the teams feature, Codemagic CI/CD takes Flutter app development to the next level by giving each team member a complete overview of the app's settings and builds.

Read on about how you can benefit from our teams feature if you work in a team and how to set up teams on Codemagic.

The benefits of teams

The teams feature is useful for shared projects with several collaborators as it allows the team to manage the project jointly. The apps that are shared with the team are connected to one account determined by the team owner, team members are not required to have access to the repositories.

All users belonging to a team will be able to see the full build history of shared apps, that is all builds triggered by commits to the repository as well as the builds triggered manually by other members in the team. There won't be duplicate builds run separately for each collaborator, making build versioning a lot more easier.

The apps shared with the team you belong to are conveniently separated from your personal apps on the Applications page.

In short, the main benefits of using the teams feature on Codemagic are as follows:

One account connected to app repository

Joint management of app settings

Complete overview of all the builds and build artifacts

Consistent build versioning

Now, let's see how to set up teams on Codemagic.

Setting up a team

All users on Codemagic can create teams. When you create a team, you become the team owner and will have full control over the team's settings. By default, Codemagic will use your personal login details to access the apps you share with the team, but you can change the account in team settings right after the team is created, read more about it in the Team integrations section below.

Setting up a team on Codemagic is a breeze! Navigate to the Teams page and click Create new team to get started.

Create a new team or view the settings of existing teams on the Teams page.

Then, fill in the details about the team.

Enter a team name, select shared apps and invite members to set up a team.

Enter a name for your team. Choose which apps to share with the team. You can select up to 10 apps. Invite members to the team by entering their email addresses. Confirm the settings by clicking Create team.

Your team has been now created and invitations to join the team sent. You will be taken to the Team settings page where you as the team owner can make changes to the settings. This includes editing the team name, selecting or deselecting apps, adding or removing members and managing the team's integrations.

Team integrations

By default, Codemagic will use the accounts connected to your personal Codemagic account for accessing the apps that are shared with the team. For example, if you share apps hosted on GitHub, your personal GitHub account will be used to retrieve information from app repositories. However, team owners can manage which services and accounts will be used with team apps in Team settings > Team integrations.

Connect the accounts that will be used to access the repositories or for posting on Slack.

Here's how to connect an account to your team:

Navigate to the Team integrations section in your Team settings. Open the website of the service you would like to connect in a new tab and log out from your current session. Back in Codemagic, click Connect next to the integration you would like to connect. Log in with the desired account and grant Codemagic access to it. Click Save changes.

Joining a team

Invited team members will receive an email from Codemagic containing information about who has invited them and a link to join the team.

On clicking Join team, the user will be redirected to Codemagic where they are asked to log in or sign up with their GitHub, GitLab or Bitbucket account. That's it! Team members can then configure and build the shared apps as well as see the full build history.

The team that the user joined will also appear on the Teams page. Team members have no control over the team settings, but can view the list of shared apps and see the other active members in the team.

Team member's view of team settings.

Wrap-up

We hope you enjoyed this tutorial on how to use the teams feature on Codemagic. Should you have more questions or run into any problems with your setup, join our Slack community for Flutter & CI/CD for help.