An offline Bangla SMS app that compresses messages to fit 5.15× more in a single SMS, with emergency and relay features for crisis situations without internet.

Stars

6

7-day growth

No data

Forks

0

Open issues

0

License

MIT

Last updated

2026-07-30

AI repository intelligence
FR-AI / ANALYSIS

Why it is worth attention

It addresses a real problem during network blackouts (Bangladesh 2024) by using existing SMS infrastructure instead of requiring app pre-installation on both ends, with measured compression performance and graceful degradation.

Who it is for

  • Bengali speakers in Bangladesh
  • Crisis responders (e.g., Cyclone Preparedness Programme volunteers)
  • People with limited internet or 2G-only connectivity
  • Humanitarian organizations working in disaster response

Use cases

  • Sending long Bangla messages cheaply during network congestion or after a disaster
  • Sending structured emergency reports to national hotlines without requiring the receiver to have any app
  • A volunteer relaying multiple households' status reports in a single SMS
  • Handing off a message via QR when there is no network at all

Strengths

  • Measured compression: 3.106 bits per Bangla character, 361 characters per SMS segment, 5.15× improvement over UCS-2
  • Works completely offline as a PWA; no server or internet needed
  • Emergency and Relay tabs send plain Bangla text so any phone can read them without the app
  • Includes a QR handoff for no-network scenarios and degrades gracefully (2G, no GPS, button phone)

Considerations

  • Compressed messages require the app on the receiving end to decode
  • The sender and receiver must use the same model file; a mismatch fails to decode and there is no explicit version marker
  • The phrasebook of 32 messages is a guess and may not cover all real needs; relay saves sends but not bits, and the district list is Bangladesh-only

README quick start

বর্ণমালা · Bornomala

An offline Bangla SMS app for the network a blackout leaves behind. It does three things, all on your phone, with no server and no internet:

  1. Normal — write Bangla, and it compresses to a short code that fits 5.15× more in a single SMS. Paste a code you received and get the Bangla back.
  2. Emergency — build a plain-text report any phone can read, with a ready sentence, your location and how long ago, then send it to a contact or to one of nine national hotlines with the message already written.
  3. Relay — a volunteer collects many households' reports and sends the whole batch as one SMS.

Try it live · Slide deck · Deck as PDF — July Hackathon 2026, Track A (Crisis Tech).

New here? Watch the five-minute demo: bornomala-final-5min.mp4. It walks through the app screen by screen — what an SMS segment actually is, why Bangla only gets 70 characters, how compression can cost less than one bit per letter, and what Emergency, Relay and the QR code are each for.

Bornomalaraw UCS-2 (phones today)gzip -9
Bits per Bangla character3.10616.00021.002
Bangla characters per SMS segment3617053
Of 5,000 held-out messages, fit in one segment100.0%98.2%99.5%

Measured, not claimed — npm run bench, output in benchmark.json.

In July 2024 the state cut 3G and 4G in Bangladesh. Broadband went dark. What survived was 2G — voice and SMS. People fell back to text.

But text messages were never designed for Bangla. SMS was built around an old character set that covers English letters and little else. Write a single Bangla letter and the whole message switches to a heavier format: 70 characters per message instead of English's 160. Speaking your own language costs more than twice as much to send, and fails more often when the towers are jammed — exactly when texting is all anyone has left.

Bangladesh has fought this fight before. 1952 was the right to speak Bangla. 2024 was the right to speak at all. This is the same fight one layer down, in the character encoding.

Why not just build an offline mesh app?

This is the honest question, and it

Description

Offline Bangla SMS app — compress messages 5.15×, send plain-text emergency reports, relay many households in one SMS. No server, no internet.

Related repositories

Similar projects matched by category, topics, and programming language.

7-e1even
Featured
7-e1even GitHub avatar

learn-agent

A collection of notes on building coding agents, derived from the production development of the desktop agent Reina, with each mechanism simplified into a zero-dependency, single-file Node.js demo.

AI & Machine LearningLarge Language Models
218
slvDev
Featured
slvDev GitHub avatar

esp32-ai

A 28.9 million parameter language model runs on an $8 ESP32-S3 microcontroller entirely on-device, generating simple stories at about 9.5 tokens per second.

AI & Machine LearningLarge Language Models
1,960
jamesob
Featured
jamesob GitHub avatar

local-llm

A comprehensive guide for building and configuring a high-end local machine to run state-of-the-art LLMs, with detailed hardware choices, BIOS tuning, and Docker-based model serving.

AI & Machine LearningLarge Language Models
1,660