Search packages, repositories and app categories

GitHub repositoryRajKavadia/cross_logger

cross_logger

RajKavadia/cross_logger open-source repository details.

cross_logger project cover
Stars
0
Forks
0
Last push (UTC)
Apr 19, 2025
Project status
Active

Original README

English project snapshot. Visit GitHub for the latest content.

📝 Encrypted Logging Package (Flutter / Dart)

A lightweight, modular logging system for Flutter and Dart applications that supports:

  • ✅ Local storage via IndexedDB (using idb_shim)
  • 🔒 Encryption using AES (via encrypt)
  • 🌐 WebSocket real-time logging
  • ☁️ HTTP blob upload support
  • 📦 Built for web-first apps with expandability for mobile support

📦 Installation

Add the following dependencies to your pubspec.yaml:

🧱 Architecture Overview

  • This package is structured with clean architecture principles:
  • EncryptionService: Handles AES encryption/decryption.
  • LogEntry: Data model with encrypted log message.
  • Log: Domain entity.
  • LocalDatabase: IndexedDB wrapper for storing logs.
  • HTTPHandler: Uploads logs as files to a remote server.
  • WebSocketClient: Sends logs over WebSocket.
  • LogUseCase: Orchestrates log flow (store, encrypt, send).
  • LoggerFacade: One-stop interface to log messages.

🚀 Usage

  1. Initialize the logger final logger = await LoggerFacade.initialize( 'ws://your-websocket-url', true, // encryption enabled );
  2. await logger.log("Hello, this is a test log!");

✅ Features

Feature | Status Local logging | ✅ Done AES Encryption | ✅ Done WebSocket send | ✅ Done HTTP blob upload | ✅ Done Test coverage | ✅ Done

✨ Contributions

PRs welcome! Feel free to fork, improve, or extend the system with new logging channels (e.g. Firebase, Sentry, etc.)

Raj GitHub avatar
GitHub author

Raj ↗

The world can be changed with a few thousands of lines of code, I am willing to contribute a few hundred.

Bengalore
LanguagesDart

Packages published by this repository

Dependencies used

Dependency list 12 items

How do I choose a repository?

Start with your use case, compare repository activity, and check the original project before adopting it.

  1. Search by repository name, owner or description, then narrow the results by topic.
  2. Compare stars, forks and recent pushes. Stars show community interest, not a guarantee of quality.
  3. Read the README, license and issues on GitHub before using a project.

Sources and maintenance

“A repository is the most basic element of GitHub.”

GitHub Docs — About repositories ↗