All Projects β†’ collardeau β†’ firebase-ignite

collardeau / firebase-ignite

Licence: other
Firebase PWA Boilerplate

Programming Languages

javascript
184084 projects - #8 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to firebase-ignite

angular2-instagram
πŸ”₯Instagram like photo filter playground built with Angular2 (Web | Desktop)
Stars: ✭ 91 (+658.33%)
Mutual labels:  rxjs, webpack2
app
Source code of intencje.pl website and mobile/desktop apps based on Angular, Firebase, and Capacitor.
Stars: ✭ 12 (+0%)
Mutual labels:  rxjs, cloud-functions
Angularfire
The official Angular library for Firebase.
Stars: ✭ 7,029 (+58475%)
Mutual labels:  rxjs, cloud-functions
redux-fusion
React bindings for RxJS and Redux
Stars: ✭ 29 (+141.67%)
Mutual labels:  rxjs, recompose
Preact Redux Isomorphic
preact-redux-isomorphic PWA SPA SSR best practices and libraries in under 80kB page size (for live demo click the link below)
Stars: ✭ 85 (+608.33%)
Mutual labels:  rxjs, webpack2
rxhr
Tiny Observable based HTTP client for browsers
Stars: ✭ 15 (+25%)
Mutual labels:  rxjs
angular-model-pattern-example
Model pattern for Angular (2, 4, ...), manage and share your state with simple services using RxJS Subjects and Observables
Stars: ✭ 37 (+208.33%)
Mutual labels:  rxjs
ng-effects
Reactivity system for Angular. https://ngfx.io
Stars: ✭ 46 (+283.33%)
Mutual labels:  rxjs
observer-spy
This library makes RxJS Observables testing easy!
Stars: ✭ 310 (+2483.33%)
Mutual labels:  rxjs
angular-ebook
Contains the code for the Step-by-Step Angular Guide Ebook
Stars: ✭ 28 (+133.33%)
Mutual labels:  rxjs
bower-resolve-webpack-plugin
Offers an enhanced bower support for enhanced-resolve plugin.
Stars: ✭ 12 (+0%)
Mutual labels:  webpack2
react-rxjs-flux
a small library for creating applications based on unidirectional data flow
Stars: ✭ 22 (+83.33%)
Mutual labels:  rxjs
react-flight-indicators
Lightweight and simple Flight instruments/indicators written in React.
Stars: ✭ 16 (+33.33%)
Mutual labels:  webpack2
redis-patterns-console
An interactive (and reactive) console to try and go into the deep of Redis and its patterns!
Stars: ✭ 22 (+83.33%)
Mutual labels:  rxjs
fullstack-typescript
A demo project of a full stack typescript application
Stars: ✭ 28 (+133.33%)
Mutual labels:  rxjs
rxrest
Reactive rest library
Stars: ✭ 33 (+175%)
Mutual labels:  rxjs
rxjs-sort-visualization
sorting algorithm visualization build by Rxjs 🐠
Stars: ✭ 16 (+33.33%)
Mutual labels:  rxjs
reactive-angular-workshop
This is the source code for the world's greatest Reactive Angular Workshop.
Stars: ✭ 30 (+150%)
Mutual labels:  rxjs
harpers
A forum app written by node & thinkJS
Stars: ✭ 12 (+0%)
Mutual labels:  webpack2
serverless-rest-api
Building RESTful Web APIs with Firebase Cloud Function, Firestore, Express and TypeScript
Stars: ✭ 103 (+758.33%)
Mutual labels:  cloud-functions

styled with prettier

Intro

A Firebase boilerplate for the Web: with auth, storage, messaging and cloud functions out of the box. Bundled with Webpack 2. firebase-ignite is a serverless PWA.

Get started

Clone or fork the repo: https://github.com/collardeau/firebase-ignite.git

Install Dependencies

To deploy cloud functions, you'll need the Firebase CLI:

npm install -g firebase-tools

login to firebase if you haven't already: firebase login

install the local npm dependencies:

npm install in the root folder and the functions folder as well.

Set up Firebase

There are two environments to ready: staging and production.

  • create 2 new firebase apps (for instance: my-app-production and my-app-staging) at https://firebase.google.com

  • enable sign-in method for email/password for both (in the firebase console)

Now, edit in the configs in the following places:

  • src/config.js
  • sw/firebase-messaging-staging.js
  • sw/firebase-messaging-producton.js

Finally, alias your projects, staging and production respectively, with:

firebase use --add

You're ignited and ready to go.

npm run dev

Devving

Be sure you've deployed the cloud functions first (see above), as a cloud function is used to create user profiles on registration.

npm run dev runs a webpack dev server with live reload at localhost:8080.

The staging env is used in DEV. PWA capacity is disabled to avoid caching, that can be tested on a staging deployment.

Test Drive

Once you run the app, you'll see a demo of the firebase integration. You'll be able to register/login (auth), save an avatar photo (storage), and send yourself notifications (messaging / cloud functions).

The UI uses React (with Recompose) with an app shell, but that's just to demo. firebase-ignite gives you a lot of freedom once you're hooked in firebase itself. Use your favorite tools.

Check the cloud functions logs in the firebase console.

Deploy

Static Web App

To deloy the app, you must first package your bundle and assets for the correct environment:

npm run build:staging or npm run build:production.

This will move everything you need into the dist folder, which still needs to be deployed, for example using zeit now:

npm install now -g now dist

Cloud Functions

Target an env with:

firebase use staging or firebase use production

Then, simply:

firebase deploy --only functions

and optionally return to the staging env for safety: firebase use staging

Code Architecture

WIP

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].