Using Firebase for Backend-as-a-Service: Pros and Cons

On a short project, we decided to use Firebase, a Rapid Application Development service, to save time. Was it a good choice?

Julien DemangeonAlexis Janvier
& October 23, 2019
Read More

Latest posts

React Admin v3: Zoom in the UI Changes

The react-admin user interface for lists and forms has seen a few tweaks to improve usability and visual consistency.

François Zaninotto
October 15, 2019

React Admin v3: Zoom in the Data Layer

Querying the Data Provider with React hooks is such a joy that it should suffice to motivate you to upgrade.

François Zaninotto
October 14, 2019

React Admin v3: Zoom in the Styling Layer

Material-ui handles most of the styling and theming of react-admin v3.

François Zaninotto
October 10, 2019

React Admin v3: Zoom in the i18n Layer

This is a great example of how we use dependency injection in React.

François Zaninotto
October 10, 2019

React Admin v3: Zoom in the Authentication Layer

The developer experience was our main concern for designing the new react-admin version. See how it applies to the auth logic.

François Zaninotto
October 09, 2019

Amnesty International: Designing the Experience

From solution to problem, the work we did for Amnesty is a great example of how we design digital products

Florian Ferbach
October 07, 2019

Marmelab souhaite la bienvenue à Matthieu

L'équipe de développeurs marmelab continue de s'étoffer avec le renfort d'un nouveau profil très expérimenté.

François Zaninotto
October 03, 2019

CouchDB, The Open-Source Cloud Firestore Alternative?

How to develop an offline-first, real time React app using a NoSQL database, in practice.

Julien Demangeon
September 25, 2019

Load Testing Node.js App with Flood.io

We tried a new product that helped us load test an app before a critical event in production. This post explains how we did and how flood.io helped us.

Kévin Maschtaler
September 17, 2019

Helping Amnesty International Target a New Audience

The pen is mightier than the sword... Can we get a smartphone to be as mighty? Read the story of how Marmelab helped AI to invent a new form of activism.

Florian Ferbach
August 28, 2019
View us on twitter

Créer son propre loader Webpack

August 27, 2019 by

Ma seconde semaine d'intégration: Jouons à deux avec Symfony

July 25, 2019 by

WebAuthn: Server and Client-Side Strong Auth Library For JavaScript

June 24, 2019 by

Symfony for Quarto in Allegro! My third integration week at Marmelab.

June 19, 2019 by

Quixo, le morpion de l'intégration: Un jeu en python sur console

June 14, 2019 by

Marmelab souhaite la bienvenue à Pierre

June 13, 2019 by

On apprend quoi pendant un stage chez Marmelab?

June 05, 2019 by

Releasing Comfygure 1.0

May 28, 2019 by

Agile Lean Ireland 2019: The Conference You Wish You Had Gone To

May 22, 2019 by

Créer et publier une application web sur Linux grâce aux snaps

May 15, 2019 by

The Innovator's Dilemma: How Can You Loose When You Seem to Be Winning?

April 30, 2019 by

Build Augmented Reality Applications With React-Native

April 25, 2019 by

Property Based Testing in Javascript

April 18, 2019 by

What Can React Developers Learn From The Vue.Js Ecosystem?

April 03, 2019 by &

Supplying your own Defaults to React Admin

March 27, 2019 by

Functional Programming in JavaScript, Part 4: The Art of Chaining Different Monads

March 20, 2019 by

React-admin 2.8: Query Component, Data Loss Protection, Top Bar Customization, And More

March 15, 2019 by

React Has Built-In Dependency Injection

March 13, 2019 by

React Admin Advanced Recipes: User Profile

March 07, 2019 by

First-class End-to-end Testing on Meteor

February 28, 2019 by

Comment mettre en place les migrations avec Hasura

February 21, 2019 by

How To Improve Postgres Performance: Our Tips and Tricks

February 13, 2019 by &

React Admin Advanced Recipes: Creating and Editing a Record From the List Page

February 07, 2019 by

User Stories Are Overrated

January 31, 2019 by

HTTPS In Development: A Practical Guide

January 23, 2019 by

Building a Timeline With React, Storybook, Material-UI, and React-Admin

January 17, 2019 by

React-admin 2.6: Datagrid Improvements, UI Polish, and Better Styling

January 09, 2019 by

2018

Twelve-Factor Applications: How Do You Validate Your Configuration?

December 05, 2018 by

Minutes of DotJS 2018

November 27, 2018 by &

Vous aimez les legos ? React est fait pour vous !

November 22, 2018 by

A Developer's Diary: Building A Notes Taking App in Shell

November 08, 2018 by

Inspiring Talks + Awesome Networking = BlendWebMix 2018

November 02, 2018 by

React Multipass Render Pattern

October 18, 2018 by

React-admin 2.4: Field Guessers, Aside, DateTimeInput, Better Accessibility... and TypeScript!

October 18, 2018 by

Découverte du langage Go pour ma deuxième semaine d'intégration : Go Go Quarto Ranger !

October 09, 2018 by

How to Create a Carousel and a Wizard Form With React and CSS-in-JS

October 04, 2018 by & &

Hacktoberfest 2018: Come Contribute To OSS With Us!

October 01, 2018 by

Functional Programming in JavaScript, Part 3: Introduction to Functors and Monads

September 26, 2018 by

React-admin 2.3: Better UI, User Menu, Tree Shaking, Tree List, and more!

September 07, 2018 by

Agile Integration: Passing On Culture to Newcomers in 5 Weeks

September 05, 2018 by

React Admin Advanced Recipes - Adding Related Records Inline With Custom Forms

August 27, 2018 by

React-admin 2.2 Is Out With Export, Clone, And More

August 16, 2018 by

Jouer pour mieux travailler : Le Quarto

July 20, 2018 by

Automating Accessibility and Performance Testing with Puppeteer and AxeCore

July 18, 2018 by &

Marmelab souhaite la bienvenue à Julien M

July 16, 2018 by

DotAI 2018: Machine Learning for Humans

July 12, 2018 by

React Admin Advanced Recipes: Creating a Record Related to the Current One

July 09, 2018 by

React-admin 2.1 Is Out

July 02, 2018 by

Managing State in React: Redux or not Redux?

June 27, 2018 by &

Lean from the Trenches: Managing Large Scale Projects with Kanban

June 21, 2018 by

Get Rid Of Toxic Bugs On Your Apps With Detox!

June 05, 2018 by

Site Reliability Engineering: Google's Secret Sauce For High Availability And Happy Ops

May 24, 2018 by

Admin-on-rest Becomes React-admin, and Gets a Major 2.0 Release

May 18, 2018 by

M&M's: Agile Retrospective For Gloutons

April 23, 2018 by

Functional Programming in JavaScript, Part 2: The Monoid

April 18, 2018 by

"Confessions of a Public Speaker", a Fun and Inspiring Guide for Giving Better Talks!

April 16, 2018 by

#play14 Luxembourg 2018: The Serious Games Unconference Turns 5

April 12, 2018 by

Enjoy Painless Typing With ReasonML!

April 09, 2018 by

Finding And Fixing Node.js Memory Leaks: A Practical Guide

April 03, 2018 by

Customer Story: 1859 Cloud, or How a Fintech Can Help Charities

March 28, 2018 by

Using NVIDIA GPU within Docker Containers

March 21, 2018 by

Functional Programming in JavaScript, Part 1: The Unit

March 14, 2018 by

The Lean Startup : This Book Isn't Actually About Startups

March 12, 2018 by

Automating accessibility testing with Selenium Webdriver and AxeCore

February 22, 2018 by

Convert An Image Into An ASCII Art Masterpiece With Pure JavaScript

February 20, 2018 by

School Of PO, retour sur la conférence

February 15, 2018 by

Admin-on-rest 1.4: Winter Changes

February 14, 2018 by

Understanding Recursion, Tail Call and Trampoline Optimizations

February 12, 2018 by

Le jeu du Taquin en React et React Native

February 07, 2018 by

La blockchain, quand l'individu sert au collectif... malgré lui

January 25, 2018 by

Configurable Artifacts: Deploy Code Like a Pro

January 22, 2018 by

BlendWebMix 2017

January 15, 2018 by

Réussir une rétrospective agile

January 11, 2018 by

Le jeu du Taquin en php (framework Symfony)

January 08, 2018 by

2017

Comprendre la mécanique des jeux grâce au livre Game storming

December 19, 2017 by

Let's cook some Crystal!

December 14, 2017 by

Minutes of DotJS 2017

December 11, 2017 by &

How To Implement Material Design Motion with React.js

December 04, 2017 by

Le jeu du Taquin en go

December 01, 2017 by

Learning Jest Through Practice

November 08, 2017 by

Introducing Comfygure, A Configuration Manager For Easy Deployments

November 07, 2017 by

Le jeu du Taquin en python

October 25, 2017 by

Marmelab souhaite la bienvenue à Adrien

October 24, 2017 by

Running React Router v4, Redux Saga, SSR and Code Splitting together

October 17, 2017 by

Elixir GenServer Explained to Redux Developers

October 04, 2017 by

The Agile Setup: How Marmelab Bootstraps Projects In 2 Weeks

September 29, 2017 by

Retour sur une année en télétravail à plein temps

September 27, 2017 by

New Website Design

September 22, 2017 by

Admin-on-rest 1.3: Summer Changes

September 14, 2017 by

Real-Time Resource Locking Using Websockets and Navigation

September 13, 2017 by

Dive Into GraphQL Part V: Should You Use GraphQL?

September 08, 2017 by

Dive Into GraphQL Part IV: Building a GraphQL-powered mobile application With React

September 07, 2017 by &

Dive Into GraphQL Part III: Building a GraphQL Server With Node.js

September 06, 2017 by

Dive Into GraphQL Part II: Anatomy of a GraphQL Query

September 05, 2017 by

Dive Into GraphQL Part I: What's Wrong With REST?

September 04, 2017 by

Dive Into GraphQL

September 03, 2017 by

Introducing Json GraphQL Server

July 12, 2017 by

Admin-on-rest 1.1 and 1.2: Focus On The New Features

June 29, 2017 by

Introducing aor-permissions: Customize Admin-on-rest based on user permissions

June 26, 2017 by

USI 2017: The Talks You Should Watch

June 22, 2017 by

Augmented Reality With HTML5: What Can Mobile Web Browsers Do?

June 19, 2017 by &

Animate your world with ThreeJS and TweenJS

June 15, 2017 by

5e édition du Printemps Agile de Caen

June 12, 2017 by &

Admin-on-rest now supports GraphQL backends

June 01, 2017 by

Minutes of React Europe 2017

May 24, 2017 by &

Marmelab développe un CMS Web Sémantique pour le CNRS

May 22, 2017 by

Internationalizing a React Application using Polyglot

May 16, 2017 by

SG: Un moteur à effet pour JavaScript

May 09, 2017 by

We attended the first dot AI conference.

May 05, 2017 by

Admin-on-rest 1.0 Stable is out

April 26, 2017 by

GitHub Oauth Authentication for SPA Without Server

April 24, 2017 by

Le jeu Awalé en isomorphique avec Next.js

April 07, 2017 by

Conditional Babel Configuration: Introducing Babel env

April 06, 2017 by

Le jeu Awalé en React Native

April 03, 2017 by

Comprendre les générateurs en JavaScript

March 28, 2017 by

Play14: Practicing Serious Games with Talented People Is a Great Way to Learn

March 27, 2017 by

Découvrir les service workers

March 21, 2017 by

Développement d'un bot Awale pour Slack

March 15, 2017 by

admin-on-rest 0.9 is out

March 10, 2017 by

Introducing Sedy, the Serverless GitHub Bot That Fixes Typos for you

February 28, 2017 by

admin-on-rest: Meet the demo

February 22, 2017 by

Agility to the rescue of slipping tasks!

February 21, 2017 by

The Maze, jeu collaboratif hautement immersif

February 17, 2017 by

Taking Picture From Webcam Using Canvas

February 15, 2017 by

admin-on-rest 0.8 is out

February 14, 2017 by

Vous avez dit Awalé ?

February 10, 2017 by

Marmelab souhaite la bienvenue à Maxime

February 09, 2017 by

Npm (or Yarn) Install within a Docker Container, the Right Way

February 08, 2017 by

React is Slow, React is Fast: Optimizing React Apps in Practice

February 06, 2017 by

Comment l'Etat se modernise grâce au Lean Startup

February 03, 2017 by

ng-admin 1.0 is out!

January 27, 2017 by

Le processus d'initialisation des projets chez Marmelab

January 17, 2017 by

admin-on-rest 0.7 is out

January 13, 2017 by

Comment exploiter la base SIRENE des entreprises de France en SQL

January 09, 2017 by

End-to-end Testing For Single-Page Apps With No Server

January 04, 2017 by

2016

Minutes of DotJS 2016

December 22, 2016 by &

React Isomorphique en pratique

December 21, 2016 by

Retour d'expérience sur le développement d'un chatbot en Node.js avec serverless

December 16, 2016 by

Chez Marmelab, le développement web est gratuit pour les associations !

December 08, 2016 by

Npm Tips and Tricks

December 07, 2016 by

Othello mobile en React Native

November 30, 2016 by

Reversi bot: Go et Symfony en action

November 24, 2016 by

For Charities, Web Development is Free at Marmelab

November 21, 2016 by

admin-on-rest 0.5 is out

November 10, 2016 by

Un jeu d'Othello dans le terminal avec Python

November 07, 2016 by

Marmelab souhaite la bienvenue à Julien

November 04, 2016 by

Marmelab s'amuse : the Team Responsibility Game

November 01, 2016 by

WebSocket-based app with Django Channels and React

October 19, 2016 by

Using Saga To Accumulate And Deduplicate Redux Actions

October 18, 2016 by

Moments d'invention : Retour sur une rencontre

October 13, 2016 by

Marmelab joins the Hacktober Fest 2016!

October 10, 2016 by

Jeu mobile en React Native : retour d'expérience

September 26, 2016 by

Custom Route Component For React Router

September 20, 2016 by

Puissance 4 multi-joueur : retour d'expérience

September 19, 2016 by

Marmelab souhaite la bienvenue à Florian

September 07, 2016 by

Introducing admin-on-rest, the React Admin GUI for REST APIs

September 02, 2016 by

Update a Single Page App on Code Change Without Draining The Battery

August 29, 2016 by

Résoudre le jeu snake, deuxième essai: ES6 et ReactJS

August 18, 2016 by

Restful.js: Review of an open-source project

June 29, 2016 by

Minutes of AWS Summit Paris 2016

June 15, 2016 by &

The Blockchain Explained to Web Developers, Part 3: The Truth

June 14, 2016 by

Résoudre le jeu snake, premier essai: Pathfinding et Python

June 08, 2016 by

The Blockchain Explained to Web Developers, Part 2: In Practice

May 20, 2016 by &

La blockchain expliquée aux développeurs web, partie 1: la théorie

May 12, 2016 by

#play14 Luxembourg Third Edition: A Network Is Born

May 04, 2016 by

The Blockchain Explained to Web Developers, Part 1: The Theory

April 28, 2016 by

Lean Startup, day 18: Determining The Break-Even Point

April 22, 2016 by

Lean Startup Adventure, day 16: Pivot

March 23, 2016 by

Lean Startup Adventure, day 15: Learn

March 15, 2016 by

EventDrops 0.2 is out!

March 09, 2016 by

Marmelab Javascript Boilerplate: deux jours de gagnés à chaque démarrage projet

March 08, 2016 by &

Lean Startup, day 14: Customer Acquisition

March 02, 2016 by

Self-Documented Makefile

February 29, 2016 by

Lean Startup, day 13: The Teaser Video

February 26, 2016 by

Lean Startup, day 12: How to Find a Product Name

February 24, 2016 by

Is it snobbery to want a real console on Windows?

February 22, 2016 by

Lean Startup, day 11: The Demo

February 16, 2016 by

Lean Startup, day 10: Build-Measure-Learn explained

February 12, 2016 by

Lean Startup, day 9: Benchmarking Existing Solutions

February 10, 2016 by

Lean Startup Adventure, day 8: designing Personas

February 05, 2016 by

Lean Startup Adventure, day 7: Second Problem interview with Adista

February 03, 2016 by

Lean Startup Adventure, day 6: Problem interview with CloudScreener

January 29, 2016 by

Marmelab souhaite la bienvenue à Kevin

January 28, 2016 by

Lean Startup Adventure, day 5: Designing a Problem Interview

January 27, 2016 by

Webpack HTML plug-in in a nutshell

January 26, 2016 by

Lean Startup Adventure, day 4: Risky Business

January 22, 2016 by

Lean Startup Adventure, day 3: The Business Model

January 20, 2016 by

Lean Startup Adventure, day 2: The Idea

January 15, 2016 by

A Lean Startup Adventure

January 13, 2016 by

2015

A Better File Structure For React/Redux Applications

December 17, 2015 by

Meteor with Webpack, React and Redux in Practice

November 27, 2015 by

Lean Kanban France 2015

November 09, 2015 by

De Python à PHP 7 : L'algorithme du jeu Dobble

November 05, 2015 by

ng-admin 0.9: embedded lists, templates everywhere, new documentation

October 30, 2015 by

How-to dump your Docker-ized database on Amazon S3?

October 23, 2015 by

ng-admin: Meet the new demo

September 04, 2015 by

ng-admin 0.8 Is Out!

August 26, 2015 by

Importing a Modeled Mesh From Blender to Three.js

July 31, 2015 by

Jest, The React.js Unit Testing Framework, In Practice

June 24, 2015 by

L'itération agile : entre SSII et agence, un nouveau mode de prestation informatique

June 11, 2015 by

DotScale 2015 Conference Summary

June 10, 2015 by

Minutes of PHP Tour 2015

June 01, 2015 by

Setup Webpack on an ES6 React app with SASS

May 18, 2015 by

Awesome REST: a List of Developer Resources for Building REST API

May 11, 2015 by

Ng-admin 0.7: Configurable Menus, Batch Actions, CSV Export, And More

May 06, 2015 by

Mon premier défi : un Dobble generator en TDD

April 07, 2015 by

Marmelab souhaite la bienvenue à Gildas

April 03, 2015 by

FakeRest: Patch XMLHttpRequest to fake a REST server based on JSON data

March 25, 2015 by

Using Ng-admin with postgREST

March 23, 2015 by

Transpiling EcmaScript6 code to ES5 using Babel

March 12, 2015 by

Restful.js: A Framework Agnostic JS Client for RESTful APIs

March 10, 2015 by

Marmelab souhaite la bienvenue à Yann

March 03, 2015 by

Ng-admin 0.6: Adding Support for Custom Types

February 25, 2015 by

NgAdminGeneratorBundle: Create a JavaScript Admin Panel and a REST API for Symfony2 Apps in Minutes

February 24, 2015 by

Ng-admin 0.5 Is Out, and It's Compatible With Your API

February 04, 2015 by

Playing with websockets in Go

January 29, 2015 by

[Video] ArchitectureTree: Visualize Software Architectures In Your Browser

January 27, 2015 by

2014

Admin GUIs in the Microservices Era: Introducing ng-admin Multi Backend

December 19, 2014 by

Marmelab: 2 years of Open-Source

December 17, 2014 by

Two days to write my first Protractor tests on the ng-admin AngularJs module

December 12, 2014 by

ng-admin 0.4: Eating our own dog food

December 05, 2014 by

Creating JSON Web Token in JavaScript

December 02, 2014 by

DotJS 2014: Big stars don't make a great event

November 24, 2014 by

Big changes in ng-admin 0.3: Introducing views

November 13, 2014 by

Bilan du Forum PHP 2014: Le PHP, langage de l'innovation ?

November 12, 2014 by

We're retiring gaudi

November 06, 2014 by

Introducing koa-multifetch, a Node.js middleware for REST APIs

November 04, 2014 by

Une commande tree plus efficace grâce au Go

October 30, 2014 by &

Marmelab déménage!

October 29, 2014 by

Une console plus graphique avec node.js et d3.js

October 03, 2014 by

ng-admin Update: Callback Field Type, Easier Customization

September 30, 2014 by

[Video] MobileInsight : une semaine avec Angular.js, Ionic et PhoneGap

September 26, 2014 by

Du PHP au Go: une semaine pour réaliser un produit fonctionnel

September 22, 2014 by

Marmelab souhaite la bienvenue à Alexis

September 16, 2014 by

ng-admin: Add an AngularJS admin GUI to any RESTful API

September 15, 2014 by

Seamlessly Run Composer On HHVM Inside Docker: Introducing make-docker-command

September 10, 2014 by

Fibonacci sequence generator in Go

September 08, 2014 by

One New Tech Per Project

September 01, 2014 by

Resolving Action Dependencies: Comparing JavaScript and Go implementations

August 22, 2014 by

Create a Full Stack Magento Environment With gaudi

June 17, 2014 by

[Screencast] Build a working SF2 web application using 3 docker containers in 2 minutes

June 04, 2014 by

PHPCR Browser: Edit Support and Better Performance

May 22, 2014 by

ArcheoloGit: Visualize Code Age and Dev Activity

May 15, 2014 by

Gaudi News: gaudi.io, apt-get install gaudi, ambassadors, and more!

May 12, 2014 by

Running Symfony CMF With Gaudi

February 09, 2014 by

Create Gaudi's File Easily With A Web App

February 06, 2014 by

Introducing Gaudi: An Architect for Multi-Component Applications

January 31, 2014 by

2013

My First Assignment: a PHPCR Browser

December 16, 2013 by

Converting the Symfony Stopwatch Component from PHP to Zephir

December 05, 2013 by

Marmelab souhaite la bienvenue à Robin

December 04, 2013 by

Marmelab souhaite la bienvenue à Daphné

November 05, 2013 by

How To Use Docker To Run PHPUnit Tests In Parallel

November 04, 2013 by

Marmelab souhaite la bienvenue à Jérôme

September 16, 2013 by

Using Connected Objects To Keep Your Job

July 22, 2013 by

Building Sophisticated WebApps For Mobile: A Bumpy Ride

July 01, 2013 by

Integrating Raphael.js With Backbone.js

May 22, 2013 by

Inline Text Editing With Raphaël.js

May 13, 2013 by

CloudScreener, le comparateur d'offres Cloud, sort son mode expert

March 29, 2013 by

Lancement de CloudScreener, le comparateur d'offre cloud pour les PME

February 13, 2013 by

Pour la fin des contrats au forfait

February 11, 2013 by