Thanks to visit codestin.com
Credit goes to github.com

Skip to content

High-performance real-time messaging module powering conversations across the Softadastra Marketplace — built with Node.js, WebSockets, and secure event-based architecture.

Notifications You must be signed in to change notification settings

softadastra/chat

Repository files navigation

Softadastra Chat Banner

💬 Softadastra Chat System

Private, high-performance messaging system powering real-time communication across the Softadastra ecosystem.


🧭 Table of Contents


🚀 Overview

Softadastra Chat is a private, production-grade messaging module designed for the Softadastra Marketplace.
It connects buyers and sellers through a fast, encrypted, and event-driven system built with Node.js and WebSockets.

✨ Core Features

  • 💬 Instant text messaging between users
  • 🖼️ Image uploads — single or batch
  • ✉️ Mixed content (text + media)
  • 🔔 Real-time notifications via WS
  • 👁️ Read receipts & presence indicators
  • 📦 Persistent message storage (SQLite / MySQL)
  • 🧠 Scalable architecture designed for large user bases

🧱 System Architecture

Client (SPA / Mobile)
   ↓ WebSocket + REST
Node.js Server (Softadastra Chat)
   ↓
Database Layer (SQLite / MySQL)
   ↓
Softadastra Core API / Notification Hub

Each WebSocket connection is authenticated via a JWT or secure ticket, and all data exchanges follow the internal event protocol used by the Softadastra real-time infrastructure.


🗄️ Database Schema

SQL schema is defined in /database/schema.sql:

Table Description
chat_threads Represents a conversation between two users
chat_messages Stores individual messages (text, image, or both)
chat_message_batches Supports multiple images per message
chat_message_status Tracks delivery and read status
notifications Global user notification system

🔐 Access Policy

⚠️ Confidential Module — Internal use only.

Access Type Permission
🔓 Code Read Authorized contributors only
🔄 Pull Requests Allowed after approval
🚫 Deployment Forbidden without core validation
🚫 External Forks Strictly prohibited

🧩 Planned API Endpoints

Endpoint Description Status
POST /chat/send Send a new message 🔄 Planned
GET /chat/messages Retrieve messages in a thread 🔄 Planned
GET /chat/threads List user conversations 🔄 Planned
WS /chat Real-time updates & presence ✅ Active
WS /notifications Notification stream ✅ Active

🧭 Contribution Workflow

  1. 🔀 Create a branchfeature/<name>
  2. 💻 Implement and test locally
  3. 🔁 Open a Pull Request for review
  4. Merge only after approval by the Softadastra Core Team

All commits are scanned for security via gitleaks and must follow the Softadastra commit conventions.


🏗️ Tech Stack

Layer Technology
Runtime Node.js
Framework Express.js
WebSocket Engine ws
Database SQLite / MySQL
Auth PHP-JWT & WS Ticket Validation
Utilities Multer, CORS, Compression, Cookie Parser

🧾 Internal References


🛡️ Confidentiality Notice

This repository and all its contents are strictly confidential.
Unauthorized access, reproduction, or redistribution is prohibited.
All commits and access events are logged and monitored.


🟠 Together, we’re building Africa’s next-generation commerce infrastructure.
— The Softadastra Engineering Team

About

High-performance real-time messaging module powering conversations across the Softadastra Marketplace — built with Node.js, WebSockets, and secure event-based architecture.

Resources

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •