1. Knowledge Base
  2. Crowdbotics | Builder
  3. Developer Training Part 2: Creating Your First App

Which Scaffold Should I Choose for my Project?

Learn all about how scaffolding works on Crowdbotics.

What is a scaffold? 

On Crowdbotics, the term scaffold refers to the how your application is set up. The scaffolding process involves setting up a backend for your application using Django, and, in most cases, a corresponding frontend, in the form of a React Native application. Crowdbotics will handle all the setup aspects here, installing the various packages and dependencies necessary for you to start development right away! 



What are the different types of project scaffolds available on Crowdbotics? 
There are two main scaffolds available for you to choose on Crowdbotics: The Mobile App Scaffold and the Web App Scaffold. When you create a new project, you will have the option to choose between these two, as well as an "Unsupported" option that contains different project scaffolds, though these are not fully supported by Crowdbotics. 

 

 Screen Shot 2021-06-24 at 2.30.48 PM

 

The Mobile App Scaffold

Most projects on Crowdbotics make use of the mobile app scaffold, which includes a Django backend and a React Native frontend. Together, you can use these components to build a powerful, data-rich application with a state of the art frontend to consume and display your application in all its glory!

Inside of a project built using the mobile scaffold, you will find both a complete React Native application, and a Django web app (under the folder `backend`). 

The Mobile App scaffold is the best supported of our scaffolds, which means that features like the storyboard will work to display and edit your app's layout. 

The Mobile App Scaffold is a great place to start for any Crowdbotics project but is particularly suited to the following:

  • Any kind of mobile app (whether it has a backend or not)
  • Modern Web Apps. In this case, you would use the React Native Web to build your application, though you would still begin with the Mobile App Scaffold.

 

The Web App Scaffold

Unlike the Mobile App Scaffold, the Web App Scaffold does not ship with any mobile features. Instead, it comes with just a Django backend, which supports simple Django views for building a traditional website. 

Note that the Web App Scaffold is a strict subset of the Mobile App Scaffold--everything in the Web App Scaffold is already included in the Mobile App Scaffold. It's just that the Web App Scaffold does not include any React Native. Please also note that certain features on the storyboard and Crowdbotics Dashboard are not supported for the Web App Scaffold. In general,  we recommend avoiding the Web App Scaffold, which may be deprecated in the future, and instead using the Mobile App Scaffold.

A web app scaffold is a pure Django project. It can be used for
  • simpler web apps
  • API only backends
  • data processing pipelines
  • Anything that doesn't really require a dynamic, modern frontend