Any Application Data, Managed Properly.

No Compromises

( power, flexibility, depth, control )

Firestore Client

+

Headless CMS

( simplicity, safety, insight, intuition )

Dogen generates custom Firestore clients, tailor-made to manage all your application data effortlessly, right out of the box. Stop compromising—start managing your data the right way.

CMS Firestore Clients Dogen
Entity Schemas & Validations
User Friendly & Feature Rich
Complex Application Data Management
Application Layer Context
Compatibility with Firestore Types & Paths
Intuitive Relationship Management & Navigation
Cascading Configurations & Validations
Get Started

The Problem

How do you manage application data?

The Solution

Firestore Client

+

Headless CMS

Dogen provides the low-level flexibility and control of a database client, combined with the high-level capabilities we love from headless CMS. The result is a custom application management platform that makes managing any data effortless and enjoyable.

By installing our Firebase extension, you unlock your own powerful application platform. This platform not only gives you full control over your data management but also enables you to manage Dogen blueprints. Blueprints, as the name suggests, allow you to define the essential data structures and resources of your application. These custom blueprints are then sent to Dogen’s service, which automatically generates, deploys, and hosts the new version of your application platform.

+

Why Choose Dogen?

With Dogen, you're not just managing data; you're empowering developers.

Improve Data Quality

Choose the best data structure every time, without compromises.

Reduce Errors

Better data translates to better products and less bugs.

Centralize Data Management

Manage all your project data in one place.

Boost Developer Productivity

Reduce the time spent on custom solutions.

Seamless Firebase Integration

Thanks to Firebase extensions installation is a breeze!

Be Happy

It's one less thing to worry about. 😄

Using a CMS to manage application data is like fitting a square peg in a round hole. It might seem "good enough," but if you look closely, you may notice you're only covering ~64% of your application's surface area.

Why settle for a square when Dogen is a perfect fit?

Pricing & Waitlist

Dogen is currently in its alpha testing phase and is available for free for a limited time. As we approach our next release phase, we will introduce a pricing model. Stay tuned for updates on pricing details.

At this time we're also currently implementing a waitlist. If you don't have an invitation code, you can still install the extension, which will set up your project for Dogen and automatically register you on our waitlist.

If you represent an organization and are interested in using Dogen, please reach out to us at [email protected]. We will prioritize your access to ensure you can evaluate Dogen effectively.

Getting Started

To get started with Dogen, you'll need to install the Dogen Application Platform extension via Firebase. Follow these simple steps to set everything up.

1. Agree to the Terms of Service

Please note that Dogen is in its alpha testing phase and is provided "as is" without any warranties. Use cautiously, back up your data regularly, and review your Firebase billing to avoid unexpected charges.

By proceeding with the installation, you agree to our Terms of Service and Privacy Policy.

2. Enable the Blaze Billing Plan

To use Firebase Extensions, the Blaze plan must be enabled for your Firebase project. Note that this is a Firebase requirement, not a Dogen-specific one. While enabling Blaze allows the extension to function, you will still benefit from the Free tier benefits.

  • Go to the Firebase console and click on the cog next to Project Overview.
  • Select Usage and billing from the dropdown menu.
  • Click on the Details & settings tab.
  • Enable the Blaze plan.

3. Create a Firestore Database

Set up a Firestore database in your Firebase project. Learn more.

4. Enable Firebase Authentication

Enable Firebase Authentication in your project. Learn more.

  • Enable the Email/Password sign-in method.
  • Create a new user account if you don't have one, which will be used as the Admin User Email in the extension configuration.

5. Create a New Web App

  • In the Firebase console, click on Project Settings.
  • Under Your apps, click Add app.
  • Register a new Web App for the Dogen AP client and copy the Firebase configuration object.
  • Save the configuration object temporarily as you will need it later.

6. Install the Dogen Application Platform Extension

Follow the link below to install the extension. Select your target project and review the extension's source code and details.

Dogen AP Extension Installation

On the Extension Configuration page, provide:

  • A registration email address to register your project under. This must be a valid email so you can confirm your registration.
  • A Dogen invitation code, if you have one, or leave it blank to join the waitlist.
  • A Dogen API key, if you have one, or leave it blank.
  • A Google Cloud Location where the extension's cloud functions will be installed.
  • An Admin User Email from step #4. This must match an existing Auth user in your project.
  • The Firebase application config values from step #5.

After finalizing the installation, you'll receive an email with further instructions. If you've encountered an error, please uninstall the extension and try installing it again. If this fails, contact us for assistance.

API keys and invitation codes are project-specific. If using multiple Firebase projects, each will require a separate extension installation, API key, and invitation code (or waitlist entry).

7. Update Your Firestore Rules

Dogen uses Role-Based Access Control (RBAC) to manage user access by utilizing Firebase Authentication user tokens. During the installation process, the Dogen extension will automatically add an "admin" role to the dogenRoles array in the authenticated user's token.

To enable these admin users to access your data, you need to configure a security rule in your Firebase project. If you have existing application code that modifies user tokens, ensure that your custom code does not remove or overwrite the dogenRoles key in the user's token.

Below is an example security rule that grants global access to admin users. If you have data that you do not wish to manage through Dogen, you can create more granular rules to restrict access as needed.

			
rules_version = '2';
service cloud.firestore {
	function isAuthorized(role) {
		return request.auth != null && ('admin' in request.auth.token.dogenRoles || role in request.auth.token.dogenRoles);
	}
	match /databases/{database}/documents {
		match /{document=**} {
			allow read, write: if isAuthorized('admin');
		}
	}
}
		

Note: Currently, Dogen AP is primarily designed for admin users. Future updates will support more capabilities for non admin roles.