Skip to main content

Building in browser text search for Firebase with a Lean mindset

· 3 min read
Marian Moldovan
Co-creator of FireCMS

Nowadays, search is a basic feature in a public online tool. It’s a commodity, a feature that you expect to be there. Can you imagine using a database manager and not being able to search through your records? What happens when you have 500 rows?

Text Search is not that easy at scale

Now, if you are familiar with our tech stack, particularly Firebase and Firestore, you would know that it’s not such an easy task. In the past versions of FireCMS, we recommended using Algolia as an external plugin. Or any other compatible solutions, since you are in charge of everything, as in any open source product.

But what happens when you need it in a SaaS formulation. Recently, we launched FireCMS Cloud. We still allow customers to host their own Google Cloud project resources, but the app used for managing the data is on our side. So, we are in charge of the CMS, you don’t need to worry about that. Okay, great. We help you manage the app, rolling updates, support, and everything else.

Automated code migrations with OpenAI's GPT-4

· 6 min read
Francesco Gatti
Co-creator of FireCMS

In the day-to-day world of development, activities such as refactoring and migrating code consume a significant amount of time. Tasks such as restructuring code packages, renaming variables, altering function signatures, among others, are often tedious and fraught with errors. These operations can be effectively automated with the assistance of artificial intelligence. This article explains how to use OpenAI's GPT-4 to automatically refactor and migrate code.

At FireCMS, a prime motivation for adopting this approach is the migration of code from the JavaScript CSS library emotion to the CSS framework tailwindcss. This article specifically covers how to automatically convert code from emotion to tailwindcss, but the approach can be generalized to automate migration among any pair of libraries.

emotion allows components to be styled using JavaScript and tailwindcss offers the use of CSS classes to style components. While emotion carries a runtime footprint, tailwindcss works on a build-time footprint. Consequently, switching from emotion to tailwindcss can substantially improve the performance of an application.

This article demonstrates the creation of a basic Node.js script to automate the above-mentioned process, thereby extending the approach to handle any code migration scenario.

Note that you can apply the same approach to any other code migration.

Identifying the Problem

  • Emotion defines styles utilizing the sx prop, as shown in the code snippet below, which presents a button with a red background:

Integrating ChatGPT into Existing CMS Systems - A Game Changer for Content Management

· 6 min read
Francesco Gatti
Co-creator of FireCMS

pawel-czerwinski-C2tWWNKExfw-unsplash.jpg Content Management Systems (CMS) are widely used across various industries to create, edit, and manage digital content. These platforms have evolved with time, offering more advanced features, functionality, and integration options. One of the most recent and promising developments in this area is the integration of ChatGPT, a powerful AI language model, into existing CMS systems.

Imagine a world where content management is no longer a tedious, time-consuming process. A world where your CMS system can understand context, translate languages, and even generate content on its own. Sounds like a dream come true, right? Well, thanks to ChatGPT, this dream is quickly becoming a reality. In this article, we’ll explore how ChatGPT, the AI-powered language model, can revolutionize content management systems by swooping in like a superhero to save the day — and your content!

ChatGPT: A Brief Overview

ChatGPT, developed by OpenAI, is a cutting-edge AI language model that can generate human-like text based on the input provided. It leverages advanced machine learning algorithms and natural language processing capabilities to understand context, generate responses, and even translate languages. This technology has immense potential for integration into various digital platforms, including CMS systems.

codioful-formerly-gradienta-26WixHTutxc-unsplash.jpg

How ChatGPT Can Enhance CMS Systems

Picture ChatGPT as the superhero sidekick to your CMS. It’s here to help you tackle content management challenges and make your life easier. Let’s take a look at some of the extraordinary abilities it brings to the table:

Release of version 1.0.0

· 4 min read
Francesco Gatti
Co-creator of FireCMS

Dark mode

FireCMS 1.0 is ready to ship! 🙌 abd why Firebase makes for an amazing developer experince

A few months have passed since we entered the beta period of FireCMS, our Firestore-based CMS built with developer experience in mind.

We have collected your feedback to add new features and quality of life improvements, fixed bugs, and merged your PRs (thank you!).

After reaching more than 500 stars on GitHub, and 100 forks, it is a good time to finally end the beta and release-candidate phases and ship version 1.0.0

Why Firebase and FireCMS

At Camberi, we have been developing web apps and mobile apps for a long time. We have used Firebase and Firestore as a backend and database in multiple projects.

FireCMS enters the beta period

· 5 min read
Francesco Gatti
Co-creator of FireCMS

Exciting times for our project!

After more than 60 releases, and numerous refinements of the internal components and APIs, we are ready to start the beta release of version 1.0.0 💃

We now consider that the code and the UX and UI are mature enough to create a beta release (though we have multiple instances of previous versions already in production!).

In the last months we've been focused on improving the CMS quality by doing a lot of internal restructuring that is also going to affect the public facing APIs.

A bit of background

We started building FireCMS out of necessity. We were working on several projects based on Firebase and in most of them we needed to develop some kind of backend admin panel/CMS. We took some of those tools we had built, and merged them into a single generic project that would support any database structure and data type. We needed to make sure that we would need to be able to customize many aspects of each implementation based on the necessity.

Big types refactor

· 4 min read
Francesco Gatti
Co-creator of FireCMS

Types update

We have a big update in version 0.49.0 affecting the main types used in the CMS.

The signature of EntitySchema<Key extends string = string> has changed to EntitySchema<M> where M is your model type like:

import { buildSchema } from "@camberi/firecms";

type Product = {
name: string;
price:number;
}

const productSchema = buildSchema<Product>({
// ...
properties:{
name: {
dataType: "string",
// ...
},
// ...
}
// ...
});

This change propagates to all the rest of the types used internally and in the public API, especially to all the types that had EntitySchema as a generic type argument.

Hello! Hola!

· 4 min read
Francesco Gatti
Co-creator of FireCMS

Welcome to the FireCMS blog!

We will use this blog to keep you up to date of the latest updates regarding FireCMS, as well as case-studies!

But first, a quick introduction on how we ended up building our own generic headless admin panel/CMS solution based on Firebase!

We started Camberi as an apps and web development agency in 2018. We all were experienced Firebase users, and we found it was a great fit to start new projects, requested by clients.

Motivation

Usually clients would like to develop an app or a webapp, and most times they would need an additional tool for backend administration. We built 3 tools for different projects, that were similar but slightly different. They were all React projects. We soon realized a generic solution would help us a lot, so we thought: There must be a generic headless CMS based on Firebase/Firestore right?

Sign up to our newsletter to get the latest news and updates. No spam!