Skip to content

Introduction

First of all, each project within Contentrain is linked to your workspace and must be integrated to a Git repository.

Repository Preferences

You can set up your projects in either Public or Private repositories. However, please note that projects installed into a Private repository require paid plan.

Before starting a project setup, ensure that the Workspace setup, meaning the provider installation, is complete. See, how to work with Workspaces.

Contentrain offers three primary methods to create a project which are simplified to facilitate developers' and content creators’ work.

  • Manual Project: Ideal for users familiar with project setup in Contentrain. Creating a project manually requires you to create all content models yourself, allowing for customization by the project owner as needed.

  • Starter Project: Recommended for new users of Contentrain or those who wish to try out how the platform works with various Frontend Frameworks using a starter template. Starting with a Starter Template, you get a project with all Content Models pre-built and integrated to the Frontend Code, templates are ready for immediate deployment on platforms like Vercel, Netlify, or Firebase.

  • Template Market: This feature is currently under development. Once available, users will be able to start projects with free or premium templates from the Template Market, which are integrated with Contentrain. When users start using these templates, they can make changes to the code base according to their needs or modify the content models as they wish.

Project overview

Project dashboard

Data models

SectionFunction
OverviewPanel for general information and key actions.
ActivitiesSection listing the latest activities in the project.
Releases(Coming Soon)
ContentArea to manage project content. For more details, see Content.
ModelsManage content models for your project. For more information, visit Model.
AssetsManage your project’s media assets. See Assets for further details.
UsersControl over project user access and permissions. For more, see Users.
WebhooksSet up and manage webhooks for your projects. For more information, see Webhooks.
SettingsManage various project settings.

Creating a Project

If you haven't yet started a new project within your workspace, you can quickly begin the setup by selecting one of the cards at the bottom of the workspace overview screen.

Content management

If you've previously created a project and looking to start a new one, click the "Create new" button on the workspace overview screen. From the dropdown menu that appears, select a way of start a project you're looking to create and proceed.

Workspace features


1- Creating a manual project

If you need to start a project by creating your own content models from scratch, you can begin with the manual project installation step and customize the structure of your project as you wish.

In your Workspace Overview, under the "Start your First Project with" section, you can begin your project setup by clicking on the "Start a project" button on the Manual Installation card.

Step 1: Select Provider

Since the Provider selection is defined at the beginning while setting up Workspaces in Contentrain, there'll be no need to select a provider for each project. The Git provider you choose while setting up your Workspace will be the default provider for your projects.

Step 2: Select Account

The project you set up will be installed on the Git account you specified during the setup of your Workspace. If you need to continue with a different Git account, you can proceed with Workspace settings.

Step 3: Select Repository

The repositories within your Git account where you can set up your project will be listed on this screen. Mark the Repository you wish to proceed with and move to the next step by clicking the "Next" button.

If you want to view and manage the repositories permitted under your account, click on the "Workspace Account" button to see and manage your allowed repos. Your current account information is visible in this area.

Repository selection

To grant permission to all repositories, select "All repositories". To give access to only specific repositories, choose "Only selected repositories" then mark the desired repositories from the dropdown that appears.

Repository Installment

You cannot install a project in a repository that already contains a Contentrain project. To install in your chosen repository, ensure it does not have an existing Contentrain project. If you need to delete an existing project, you can watch the Project Deletion walkthrough video.

Step 4: Project Basics

Here you can name your project, select the languages you'll use, set a static path for media management, and determine the merge options on GitHub. After making your selections, click 'Next' to finalize your project setup.

Project Name

Enter the name of your project here, within a 1-30 character range. Please do not use special characters, with the exception of hyphens (-) and underscores (_).

Languages

Add different languages for content creation in your project here, and modify them later in Project Settings if needed. The number of languages you can add depends on your paid plan allowance. For plan details, see pricing.

Static Path

Contentrain provides built-in asset manager support for managing your media. You can determine the storage path for your project's static assets in this section. To learn about managing your assets, see Assets. These settings can be changed later in Project Settings.

Asset Manager Usage

To use the asset manager, you must have a Lite plan or higher. You can find more details here: Pricing.

Manage Merge Requests

Contentrain operates on a dedicated branch, simplifying content management and integration processes. With your selections, you can determine how your content will be managed, when, and how it will go to the Main branch, therefore you can manage the content on separate layers from the Code base.

Branch Management Options

You can change your project's Branch Management settings within the limits of your plan. You can check the plan details here.

  • I will manage merge requests myself. Contents will be under the Contentrain branch. FREE (Default)

  • Contentrain will create and approve pull and merge requests automatically when there is change on the content (Paid Feature)

  • Contentrain will create pull and merge requests when there is change on the content (Paid Feature)

Deployment Tip

Regarding 2nd and 3rd merge options, the pull request in Contentrain creates a preview link when a change is made. The following two merge options simplify the integration process with deployment platforms such as Netlify and Vercel.

Merge management

After setting up, your project will be ready in a few seconds, and you will be redirected to the project overview screen. From here, you can view details about your project's content, model, assets, and users.

Project overview


2- Creating a starter project

By setting up a project using Starters, created with frameworks like Nuxt.js, Next.js (Astro, Docusaurus, Svelte… Coming Soon!), you can experience how Contentrain works.

Starting with a Starter Template, you get a project with all Content Models pre-built and integrated to the Frontend Code, ready for immediate deployment on platforms like Vercel, Netlify, or Firebase.

The main difference between Manual installation and Starter project: If you want to use Contentrain on a Git repository where you have your own project, you can choose Manual project installation. It’ll be integrated to the repo of your choice.

In your Workspace Overview, on the "Start your First Project with" section, you can start your project setup by clicking on the "Start a project" button found on the Starter Project card.

Starter project

Step 1: Select Provider

Since the Provider selection is defined at the beginning while setting up Workspaces in Contentrain, there's no need to select a provider for each project. The Git provider you choose while setting up your Workspace will be the default provider for your projects.

Step 2: Select Account

When you set up a workspace in Contentrain, you’ve determined the Git account at this stage during the workspace setup. If you do not need to continue with a different Git account, you can proceed with these settings. However, if you need to change your Account settings, you can go to the relevant settings by clicking the Account Settings. For detailed information, click here to view account settings.

Step 3: Select Framework

On this screen, you can proceed by selecting the Framework you want to continue and click the "Next" button.

Framework selection

Step 4: Project Basics:

In this step, you can select the name of your project, the languages you will add to your project, specify a static path for managing the media files, and determine the merge options on Git for your project. You can complete the setup of your project by clicking the "Next" button.

Project Name

Enter the name of your project here, within a 1-30 character range. Please do not use special characters, with the exception of hyphens (-) and underscores (_).

Languages

Add different languages for content creation in your project here, and modify them later in Project Settings if needed. The number of languages you can add depends on your paid plan allowance. See pricing.

Repository Visibility

For Repository Visibility, choose whether your new repository is public or private. Note that private repositories require a paid plan. For details on plan options, see pricing..

Repository Preferences

To host your project in a private repository, you must have a Paid plan. You can review plan details here.

Manage Merge Requests

Contentrain operates on a dedicated branch, simplifying content management and integration processes. With your selections, you can determine how your content will be managed, when, and how it will go to the Main branch, therefore you can manage the content on separate layers from the Code base.

Branch Management Options

You can change your project's Branch Management settings within the limits of your plan. You can check the plan details here.

  • I will manage merge requests myself. Contents will be under the Contentrain branch. FREE (Default)

  • Contentrain will create and approve pull and merge requests automatically when there is change on the content (Paid Feature)

  • Contentrain will create pull and merge requests when there is change on the content (Paid Feature)

Deployment Tip

Regarding 2nd and 3rd merge options, the pull request in Contentrain creates a preview link when a change is made. The following two merge options simplify the integration process with deployment platforms such as Netlify and Vercel.

Merge management

After setting up, your project will be ready in a few seconds, and you will be redirected to the project overview screen. From here, you can view details about your project's content, model, assets, and users.

Project overview


3- Creating a project with a Template from the Template Marketplace

Template marketplace

Another way to start a project and bring your content to the online world with Contentrain is through projects created with templates.

In the development process we are working on, the template market will include paid or free Landing Pages, Document-driven web projects and much more:

  • Internal or external API Documentation

  • API references

  • Product overviews

  • Engaging marketing campaign websites

  • Modern startup landing pages

  • Jamstack websites

  • Multi language websites

  • RFP portals & Knowledge bases

  • PWA's

  • E-commerce websites

  • Blogs & Publishing platforms

  • Mobile application contents

By choosing a template when starting a project, you can quickly set up your project and begin creating content.

Starting with a Starter Template, you get a project with all Content Models pre-built and integrated to the Frontend Code, templates are ready for immediate deployment on platforms like Vercel, Netlify, or Firebase.


Bonus: Forkable Projects

In Contentrain, Forkable Projects allow users to collaborate on open-source initiatives directly from the platform. This feature supports easy forking—creating a personal copy—of open-source projects on one’s own GitHub account. Where each person can contribute to collective projects.

WARNING

Git Forking is possible only within individual accounts, meaning you can only fork projects in your primary workspace.

Git forking

To fork a project, the repository must be public. When a project is forked within Contentrain, it's identifiable by a unique badge and URL, linking the fork directly to the user’s personal workspace.

The URL structure for forked projects follows the format app.contentrain.io/fork/{PROJECT ID}, and this can be managed in the workspace settings under the specific project.

For clarity, during the forking process, the system checks the visibility status of the original repository to ensure it is available for public contribution.

Fork setup

You have the option to provide a description for the project. By clicking the “Fork” button, you will have started a new project within your primary workspace.

Forked project

A project is also opened on Git, appearing as “Forked from [GitHub username].”

Git fork status

Switching between Projects

Navigating between your projects within Contentrain workspaces is straightforward. To switch between projects, click on the project name dropdown at the top of the left-hand sidebar. From the dropdown menu that appears, select the project you wish to access.

Project navigation

Project Settings

The project settings in Contentrain is where you can configure various settings for all the projects you have created.

1- Overview

Begin your project customization by adding a distinctive logo and updating essential details to reflect the project's identity. Here you can also delete your project when necessary.

If you added a logo while creating your project, you can change it here. If you didn't add a logo during the initial process, you can upload one for your project here. (JPEG, PNG, GIF, BMP, TIFF, SVG, WebP, HEIF formats; maximum size 5 MB)

Project Name:

You can change the name you assigned to your project during the initial process. (Adhere to a 1-30 character limit, avoiding special characters except for "-" and "_".)

Project Deletion:

To delete a project, click the "I understand, delete this project." button, enter your project name in the modal that appears, and click the "I understand, delete this project." button again.

Project settings


2- Localization

To use the localization option, add the necessary languages to your project during the initial setup. See Creating a Project for details on how to add languages during project setup.

Adding Locales

If you do not activate localization at the beginning of the project, you cannot add a new language from your project settings. If you did not add a language at the start, the Project Settings Localization tab will appear as below.

Localization settings

To add a new language to your project, click on the dropdown that says Select a new language, choose the language you want to add from the menu that appears, and then click the “Add new language” button on the right of the dropdown. After completing this step, the selected language will be added as a card below.

Language selection

If you need to remove any language you added from your project, simply click the “Delete” button on the language cards. This will remove the language from your project.

Language management

WARNING

The number of languages you can add to your projects varies according to your plan’s allowance. You can check the plan details here.


3- Git Settings:

You can change the branch management options under the Git Settings tab. To switch options, select one of the cards below and complete the process.

Branch Management:

  • All pull and merge requests are managed by the user without any action on behalf of the user. FREE (Default)

  • Continues to work on the Contentrain branch but automates the PR(Pull Request) opening process to avoid hassle. However, there is no merge option; the user needs to merge themselves. It automatically integrates with deployment platforms and generates preview links. (Paid Feature)

  • In-app merge management in Contentrain: We automatically open the PR and allow Git merging from Contentrain without leaving, enabling the project to go live. (Paid Feature)

Branch Management Options

You can change your project's Branch Management settings within the limits of your plan. You can check the plan details here

Static Path:

You can change the Static Paths you selected during the setup of your project by the dropdown here. Just click on the dropdown, make your selection on where you want your media to be stored, and press the "Save changes" button below the dropdown.

Static path settings


4- Serverless Settings:

You are not limited to store your content in Git repositories. You can store your dynamic content on Serverless platforms.

To add a new Serverless Resource, click the “Add new Serverless Resource” button. Then, from the modal that opens, select the Serverless platform you want (currently only Firebase Firestore service is provided, but other platforms will be added soon) and click the "Create Resource" button to proceed.

Serverless settings

1- Resorce name:

Your model name will be written here and adhere to a 1-30 character limit, avoiding special characters except for "-" and "_".).

2- Service token:

The Service Token is a key(JSON File) that provides access to Firebase services. You need to obtain this key from here.

Firebase setup

You can see the Service token here. Information on what it is and where it should be obtained will be provided.

For more information about the Google Firebase service token, please refer to the documentation here.

Log into your Firebase account, go to project settings, click on the Service Accounts tab, and then click the ”Generate new private key” button.

Service token generation

After clicking ”Generate key” in the modal that opens, you will download a JSON file that you need to upload here.

WARNING

The manual JSON copy-paste feature has been disabled by Google Firebase.

Token upload

3- Upload a file:

This section requires the JSON file you downloaded in the previous step. This file is your service token, and since manual copy-pasting is not an option, you need to upload the JSON file here to activate it.

4- Database (Optional):

This is a feature that can be used for Firebase's paid users. It's the name of the database to be used in Firestore. Since free users are in the default database, this part is optional.

Database configuration

Project Overview

Your project overview screen consists of two tabs: Activities and Releases.

Activities:

This section chronologically lists all details of actions related to the project.

Releases:

Currently under development, this section will provide comprehensive details related to the project's Git repository once it's completed and made available to users.

Project activities

Working with Content

In this tab, all contents of the project are listed in Content Table. Content creators can create new materials and they have the ability to edit or delete previously created content.

For more information regarding the content section, please proceed to here.

Content management

Working with Models

Under the Models tab, all content models created for the project can be viewed. Project managers and Collaborators can add new content models to the project and edit or delete existing ones.

For more detailed information about models, please proceed to the Content Models section in the documentation.

Content models

Working with Assets

The Assets tab serves as a place for all media assets used in the project. Users, depending on their permissions, can upload new media assets or delete existing ones.

For additional information on managing assets, please see the Assets Manager section in the documentation.

Asset management

Working with Users

The Users tab displays users who have joined the project via invitation and who can contribute only to content management.

Project managers and Collaborators can invite new users, modify user permissions, or remove users through this tab.

If your Contentrain account have a Professional plan or higher, you can create custom roles and permissions.

For more details on user management, see the Users section in the documentation.

Team management

Working with Webhooks

Webhooks are a way for applications to communicate with each other automatically. When something happens in one application, a webhook can send a real-time notification to another application, allowing them to work together smoothly.

For example, if you receive a new message in an app, a webhook can alert another app to take action, like sending you a notification.

For more detailed information on how webhooks work and how to set them up, proceed to the Webhooks section in the documentation.

Webhooks configuration

Released under the MIT License.