Skip to content

Jitenderkumar2030/ezybackend

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ EzyBackend

Node.js Version License Docker

EzyBackend is a modern, open-source Backend-as-a-Service (BaaS) platform built with Node.js 20+. It provides real-time database, file storage, user authentication, access control, and offline-first support β€” all in one comprehensive platform.

Based on CloudBoost: EzyBackend is a modernized fork of the original CloudBoost project, updated for Node.js 20+ with modern tooling and enhanced security.

Think of it as Firebase + Parse + Supabase β€” fully open-source and self-hosted.


πŸ”₯ Features

Core Backend Services

  • πŸ—„οΈ Real-time Database - JSON & BLOB storage with live updates
  • πŸ” Search & Query Engine - Advanced data querying and indexing
  • πŸ” Authentication System - OAuth providers + local auth
  • πŸ‘₯ Role-Based Access Control - Granular permissions and ACL
  • πŸ“ File Storage - GridFS-based file management
  • πŸ”„ Real-time Subscriptions - WebSocket support via Socket.IO

Modern Platform Features

  • πŸ“± Offline-first Support - Client-side data persistence
  • 🏒 Multi-tenant Architecture - Support for multiple applications
  • 🐳 Docker Ready - Production-ready containerization
  • πŸ”’ Self-hosted - Complete data ownership and control
  • ⚑ Node.js 20+ - Modern JavaScript with latest features
  • πŸ›‘οΈ Security Hardened - Updated dependencies and best practices

🐳 Quick Deploy with Docker (Recommended)

EzyBackend is designed for easy deployment with Docker:

# Clone the repository
git clone https://github.com/Jitenderkumar2030/ezybackend.git
cd ezybackend

# Start with Docker Compose
docker-compose up -d

Services will be available at:


🧰 Manual Setup (Development)

Prerequisites

  • Node.js 20+ (LTS recommended)
  • MongoDB 4.4+
  • Redis 6.0+

1️⃣ Clone and Setup

git clone https://github.com/Jitenderkumar2030/ezybackend.git
cd ezybackend

2️⃣ Install Dependencies

npm install

3️⃣ Setup Configuration

Create a /config/ezybackend.json file:

{
 "mongo": [{
   "host": "localhost",
   "port": "27017"
 }],
 "redis": [{
   "host": "127.0.0.1",
   "port": 6379
 }]
}

Create /config/smtp.json:

{
  "provider": "mailgun",
  "apiKey": "YOUR_MAILGUN_KEY",
  "domain": "yourdomain.com",
  "fromEmail": "noreply@yourdomain.com",
  "fromName": "EzyBackend"
}

4️⃣ (Optional) Add HTTPS Certs

Place cert.crt and key.key inside /config to enable HTTPS.

5️⃣ Start the Server

Ensure Redis and MongoDB are running, then:

node server.js

πŸ”‘ Creating an App

Use your secureKey from console to create an app:

curl -H "Content-Type: application/json" -X POST \
-d '{"secureKey":"<YOUR_SECURE_KEY>"}' \
http://localhost:4730/app/myApp

πŸ“Š JavaScript SDK Usage

πŸ“¦ Install via NPM:

npm install ezy-sdk
// Initialize app
const CB = require('ezy-sdk');
CB.CloudApp.init('https://localhost', 'YourAppID', 'YourAppKey');

// Create and save object
let obj = new CB.CloudObject('Custom');
obj.set('name', 'EzyBackend');
obj.save({
  success: res => console.log("Saved!"),
  error: err => console.error("Error:", err)
});

πŸ“ˆ Cluster Management

You are responsible for:

  • MongoDB/Redis uptime, scaling, sharding
  • EzyBackend version upgrades
  • Backup, monitoring, scaling via Docker

πŸ’‘ Want Managed Service?

We’re working on a SaaS version of EzyBackend β€” stay tuned.


πŸ›  Project Structure (Monorepo)

ezybackend/
β”œβ”€β”€ user-service/
β”œβ”€β”€ data-service/
β”œβ”€β”€ dashboard-ui/
β”œβ”€β”€ sdk/
β”œβ”€β”€ config/
└── docs/

🀝 Contributing

Pull requests are welcome! Please read the CONTRIBUTING.md first.


πŸ“© Support


πŸ“œ License & Attribution

EzyBackend is licensed under the Apache License 2.0.

Attribution to Original Project

EzyBackend is based on the original CloudBoost project:

  • Original Project: CloudBoost by HackerBay, Inc.
  • Original License: Apache License 2.0
  • Original Authors: Nawaz Dhandala, Ritish Gumber, and the CloudBoost community
  • Modernization: Updated for Node.js 20+ by Jitender Kumar

We extend our gratitude to the original CloudBoost team and community for creating this excellent foundation.


---

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 74.6%
  • CSS 10.5%
  • HTML 7.0%
  • EJS 5.9%
  • SCSS 1.9%
  • Dockerfile 0.1%