monfireboose
v0.1.4-experimental.1
Published
A lightweight JavaScript library that provides a high level and model based API for interacting with Firebase.
Downloads
7
Maintainers
Readme
Monfireboose
A lightweight JavaScript library that provides a high level and model based API for interacting with Firebase.
Use your Firebase like Mongoose. Ever thought about using your Firestore collections like Mongoose models, Monfireboose will help with this.
👀 What can it do?
It allows you to manage your whole Firestore database with models built by you.
🔍 Table of Contents
⚙️ Install
Install it locally in your project folder:
# Using npm
npm i monfireboose
# Or yarn
yarn add monfireboose
# Or pnpm
pnpm add monfireboose
💡 Usage
- Connect to the Firestore database like to MongodDB with Mongoose
- Create and validate Schemas like with Mongoose
import { connect, FirebaseConfig, Schema, model } from 'monfireboose';
const config = new FirebaseConfig({
apiKey: 'YOUR_API_KEY',
authDomain: 'YOUR_AUTH_DOMAIN',
projectId: 'YOUR_PROJECT_ID',
storageBucket: 'YOUR_STORAGE_BUCKET',
messagingSenderId: 'YOUR_MESSAGING_SENDER_ID',
appId: 'YOUR_APP_ID',
});
connect(config).then((app) => {
console.log('Connected to Firebase', app);
});
const userSchema = new Schema({
name: {
type: String,
required: true,
},
age: {
type: Number,
required: true,
},
});
const userModel = model('users', userSchema);
const user = await userModel.add({ name: 'John', age: 30 });
console.log(user.id);
All CRUD available methods
- add - adds a new document
- edit - edits existing document
- get - get documents with given query (or all documents if query is not given)
- getDoc - gets one document by ID
- delete - delets document by ID
*Note: Missing something? don't worry Monfireboose includes all Firebase native modules under monfireboose/fire/needed_module
. needed_module
is you desired module e.g. auth
, firestore
, storage
etc.
💬 Discussions
Head over to the discussions to share your ideas.
📄 License
MIT © Monfireboose © Albert Arakelyan