Skip to main content
Version: 2.0.0-beta

Type alias: FirebaseCMSAppProps

Ƭ FirebaseCMSAppProps: Object

Main entry point that defines the CMS configuration

Type declaration

NameTypeDescription
HomePage?React.ComponentTypeIn case you need to override the home page. You may want to use useNavigationContext in order to get the resolved navigation.
LoginView?React.ComponentType<FirebaseLoginViewProps>Additional props passed to the login view. You can use this props to disable registration in password mode, or to set up an additional message. Also, to add additional views to the login screen or disable the buttons.
allowSkipLogin?booleanIf authentication is enabled, allow the user to access the content without login.
authentication?boolean | Authenticator<FirebaseUser>Do the users need to log in to access the CMS. You can specify an Authenticator function to discriminate which users can access the CMS or not. If not specified, authentication is enabled but no user restrictions apply
baseCollectionPath?stringDefault path under the collection routes of the CMS will be created
basePath?stringDefault path under the navigation routes of the CMS will be created
collectionOverrideHandler?CollectionOverrideHandlerUsed to override collections based on the collection path and entityId. This resolver allows to override the collection for specific entities, or specific collections, app wide. This overrides collections all through the app. You can also override collections in place, when using useSideEntityController
collections?EntityCollection[] | EntityCollectionsBuilderList of the mapped collections in the CMS. Each entry relates to a collection in the root database. Each of the navigation entries in this field generates an entry in the main menu.
dateTimeFormat?stringFormat of the dates in the CMS. Defaults to 'MMMM dd, yyyy, HH:mm:ss'
fields?Record<string, FieldConfig>Record of custom form fields to be used in the CMS. You can use the key to reference the custom field in the fieldConfig prop of a property in a collection.
firebaseConfig?Record<string, unknown>Firebase configuration of the project. If you afe deploying the app to Firebase hosting, you don't need to specify this value
fontFamily?stringFont family string e.g. '"Roboto", "Helvetica", "Arial", sans-serif'
locale?LocaleLocale of the CMS, currently only affecting dates
logo?stringLogo to be displayed in the drawer of the CMS. If not specified, the FireCMS logo will be used
logoDark?stringLogo used in dark mode. If not specified, logo will always be used.
namestringName of the app, displayed as the main title and in the tab title
onAnalyticsEvent?(event: CMSAnalyticsEvent, data?: object) => voidCallback used to get analytics events from the CMS
onFirebaseInit?(config: object) => voidOptional callback after Firebase has been initialised. Useful for using the local emulator or retrieving the used configuration.
primaryColor?stringPrimary color of the theme of the CMS
secondaryColor?stringSecondary color of the theme of the CMS
signInOptions?(FirebaseSignInProvider | FirebaseSignInOption)[]List of sign in options that will be displayed in the login view if authentication is enabled. You can pass Firebase providers strings, such as firebase.auth.GoogleAuthProvider.PROVIDER_ID or include additional config such as scopes or custom parameters FirebaseSignInOption Defaults to Google sign in only.
textSearchController?FirestoreTextSearchControllerUse this controller to return text search results as document ids, that get then fetched from Firestore.
toolbarExtraWidget?React.ReactNodeA component that gets rendered on the upper side of the main toolbar
views?CMSView[] | CMSViewsBuilderCustom additional views created by the developer, added to the main navigation

Defined in

lib/src/firebase_app/FirebaseCMSAppProps.tsx:27

Need a hand?

Learn how to get the most out of your project with the help of our consulting team.
Get in touch
Sign up to our newsletter to get the latest news and updates. No spam!