Usman Balogun's Work | ContraWork by Usman Balogun
Usman Balogun

Usman Balogun

Laravek backend developer

New to Contra

Usman is ready for their next project!

Followed by TOUABTI m
Cover image for ⚔ SMSGang WhatsApp Cloud Assistant
⚔ SMSGang WhatsApp Cloud Assistant A premium, feature-rich Go-based WhatsApp automation bot that turns your personal WhatsApp account into a smart virtual assistant. Unlike typical bots that require expensive official Business APIs, this bot securely runs as a linked web device on your account, enabling you to manage features directly by "messaging yourself" šŸ› ļø The Tech Stack: How it's Built The bot is constructed using a high-performance, lightweight, and modern stack designed for speed, ease of deployment, and low memory consumption: Programming Language: Go (Golang v1.25) - guarantees ultra-low CPU/RAM usage, concurrency safety, and fast compilation. WhatsApp Gateway: whatsmeow (go.mau.fi/whatsmeow) an unofficial Go library that implements the WhatsApp Web protobuffer-based E2E protocol. It links your WhatsApp account via a simple terminal QR code scan. AI Engine: Grok AI (xAI API) - powers all automated chat responses, homework solving, translation, and birthday greetings. Database: SQLite (modernc.org/sqlite) - a pure Go, zero-dependency embedded SQLite database. No CGO required, ensuring the binary remains highly portable across systems. Protocol Serialization: Google Protocol Buffers (protobuf) handles message parsing and serializing directly into WhatsApp's internal structure. Deployment Options: Docker & Docker Compose for containerized high-availability. Systemd Service (babebot.service) for running as a background service on any Linux VPS. 🌟 Key Features 1. šŸ¤– Multi-Contact Auto-Reply (AI Texting Style) Smart Inactivity Window: If you receive a message and don't reply within a customized time (e.g., 60 seconds), the bot steps in. If you reply yourself first, the auto-reply is automatically cancelled. Texting Style Adaptation: Uses Grok AI to analyze your conversation context and reply in a natural, human-like voice that mimics your messaging style. 2. šŸ’• Per-Contact Personality Profiles Customize how the bot interacts with different people in your life: babe: Calm, soft, sweet, affectionate, and uses pet names. (Includes protection filters to prevent accidentally removing your babe from the bot's system). friend: Casual, warm, and friendly. formal: Professional and business-oriented. chill: Short, concise, and direct answers. 3. šŸ‘ļø Auto Status Viewing Automatically views all your contacts' statuses as soon as they are uploaded. Keep your presence active without manually scrolling through status pages. Toggleable with /statusview on|off. 4. ā° Advanced Message Scheduling Schedule messages to send to any contact at any specific time (e.g., /schedule mybro 14:30 Join the video meeting). A background worker processes pending schedules every 30 seconds. 5. šŸŽ‚ Automated Birthday Greetings Store birthdays for your contacts. The bot runs a check every hour and automatically drafts a unique, AI-generated birthday greeting in the exact tone matching the recipient's personality profile (e.g., sweet for babe, chill/casual for friends). 6. šŸ“ž Anti-Call & Blocker Automatically rejects incoming voice and video calls when enabled, preventing unexpected interruptions. Toggleable via /anticall on|off. 7. šŸ›”ļø Anti-Spam Filters Filter and ignore unknown numbers that aren't on your registered whitelist, protecting your account from spam. Toggleable via /antispam on|off. 8. šŸŒ™ AFK (Away From Keyboard) Mode Activate a custom away message (e.g., /afk Studying for exams šŸ“š). The bot will instantly inform anyone who messages you of your status and can be turned off simply by typing /afk off. 9. šŸ”“ ViewOnce Media Extractor (.vv / /vv) Never lose ephemeral media. By quoting/replying to any ViewOnce image, video, or voice note with .vv or /vv, the bot extracts the media and sends a permanent copy directly to your direct message (DM). 10. šŸ–¼ļø Instant Sticker Maker Reply to any image in any chat with /sticker and the bot will instantly convert it into a WhatsApp sticker. 11. šŸ“£ Marketing Campaign Automation Bulk Campaign Tool: Broadcast marketing campaigns to target lists with ease. Target Selection: Load targets from harvested contacts, manual JIDs, joined groups, or file uploads (.txt, .csv, .vcf). Media Support: Send both text and custom image payloads (by quoting an image with /campaign image). Anti-Ban Safety: Fixed delay interval (30 seconds per message) ensures WhatsApp's rate limiters aren't tripped. 12. šŸ‘„ Contact Harvesting & Management Harvest contacts automatically from group chats or status viewers. Export your entire harvested database directly in your chat as a .vcf vCard contact card file. Use /tagall in group chats to mention/ping every group participant with a custom message. Broadcast custom messages to all registered contacts. 13. 🧠 Smart Utilities (Smart Ask, Translate & Homework Solver) /ask <question>: Query Grok AI for instant answers to general questions in chat. /translate <lang> <text>: Fast AI-powered language translation. /solve <question>: Academic step-by-step homework helper. It parses questions (or quoted messages) and outputs clear, student-friendly tutorials. SMSGANG Integrations (/cheapdata): Promotes and displays cheap student data bundles (MTN, Airtel, Glo, 9mobile) from smsgang.org (http://smsgang.org) to keep students online affordably. šŸ“² Command Directory You control all these features directly from your WhatsApp "Message Yourself" chat: āš™ļø Core Controls /bot status — Check bot health, active toggles, tracked presence, and settings. /bot on | /bot off Globally toggle auto-replies on/off. /anticall on|off Toggle automatic call blocker. /antispam on|off Toggle filtering for unknown numbers. /statusview on|off Toggle auto-viewing of contact statuses. /help Render the custom interactive help menu. šŸ‘„ Contact Management /add <number> <profile> [nickname] Add contact to auto-reply. /remove <number|nickname> Remove contact. /list View all configured contacts and birthdays. /profile <number|nick> <profile> Update a contact's AI personality profile. /pause <nick> | /resume <nick> Pause/resume auto-reply for a single contact. /birthday <nick> <MM-DD> Add birthday for automated greetings. ā° Scheduling & Summaries /schedule <nick> <HH:MM> <msg> Schedule a message. /schedules View list of pending scheduled messages. /summary Get a manual summary/digest of unread messages over the last 24 hours. /summarize <nick> Let AI analyze and summarize your recent chat history with a contact. šŸ“£ Campaign & Marketing (Admin Only) /export Export harvested contact database as a .vcf document. /broadcast <msg> Send a message to all registered contacts. /tagall [msg] Mention everyone in a group chat. /campaign text <msg> | /campaign image — Configure campaign text and media. /campaign contacts <harvested|groups|status|nums> — Load target numbers. /campaign file Load target numbers by quoting a .txt/.csv/.vcf file. /campaign start|pause|stop|status Execution and monitoring of the marketing campaign. šŸ“ Utility & AI /ask <question> Ask Grok AI a question. /solve <question> Get step-by-step explanations for homework questions. /cheapdata Check affordable student data bundles available via SMSGang. /translate <lang> <text> Translate text to any language. /note <text> | /notes | /delnote <id> Keep scratchpad notes directly in chat. /sticker Reply to an image to make a sticker. /bio <text> Remotely change your WhatsApp About/Status bio. to connect the bot dm me
0
39
Cover image for SMSGang  Backend Engineering &
SMSGang Backend Engineering & Technical Overview I built SMSGang as a full-stack digital services platform, taking primary ownership of the backend architecture, system design, third-party integrations, infrastructure, security, and production operations. My role went far beyond simply developing API endpoints; I designed the core systems that allow the platform to process payments, manage user balances, execute digital-service transactions, communicate with external providers, and operate reliably in production. The backend was built primarily with Laravel and PHP, with a strong focus on scalability, maintainability, security, reliability, and clean separation of responsibilities. I designed the application around a structured API architecture, allowing the frontend and external clients to communicate with the platform securely while keeping the business logic centralized within the backend. Core Backend Architecture I designed and implemented the core Laravel backend, including the application's models, controllers, services, repositories where appropriate, middleware, validation, authentication, authorization, database relationships, API resources, queues, jobs, scheduled tasks, notifications, and integrations. The system handles different categories of digital services, including mobile data, airtime, virtual/OTP numbers, bill payments, wallet operations, and other service-based transactions. Each service requires different business rules and external providers, so I structured the backend in a way that allows providers and services to be integrated without making the entire application tightly coupled to one provider. I also designed the database architecture around important entities such as users, wallets, transactions, orders, services, providers, payment records, and related operational data. I paid particular attention to data consistency because financial operations require significantly more care than ordinary CRUD-based applications. Wallet & Financial Transaction System One of the most important parts of SMSGang is the wallet and transaction infrastructure. I designed the system to properly track user balances, deposits, debits, purchases, refunds, and service transactions. I implemented transaction records and financial states so that every important wallet operation can be traced. Rather than treating a balance as just a number in the database, the backend maintains transaction history that makes it possible to understand where funds came from, what they were used for, and what happened when a transaction succeeded, failed, or was reversed. I also handled issues around concurrency and race conditions, especially where multiple requests could potentially attempt to modify the same user's wallet at the same time. Database transactions, row-level locking where appropriate, validation, idempotency considerations, and controlled transaction processing are important parts of ensuring that users cannot accidentally be credited or debited incorrectly. For payment processing, I integrated payment providers and implemented webhook/callback handling so that payment status is confirmed from the provider rather than relying solely on the frontend. This allows the backend to verify successful payments, update wallets, create transaction records, and safely process the resulting service purchase. Payment Processing & Webhooks I implemented payment flows that communicate with external payment providers such as Paystack, including payment initialization, verification, callbacks/webhooks, virtual-account-related flows, and transaction reconciliation. The backend validates payment responses and processes them according to the actual transaction state. I also designed the system to avoid blindly trusting requests coming from the client, particularly around financial operations. Webhook processing is handled carefully because providers can retry webhook requests or send duplicate notifications. I therefore considered idempotency and duplicate transaction protection when processing payment events so that the same payment cannot accidentally credit a user's wallet multiple times. Third-Party API Integrations A significant part of SMSGang involved integrating multiple external service providers. The platform communicates with providers for services such as: Mobile data Airtime Virtual/OTP numbers SMS Bill payments Payment processing Other digital services I designed the integrations so that the application can communicate with external APIs while maintaining control over the internal transaction lifecycle. This includes handling API authentication, request construction, response parsing, timeouts, failed requests, provider errors, unavailable services, retries, transaction states, and provider-specific response formats. Because external APIs are not always reliable, the backend needs to distinguish between a request being accepted, successfully completed, failed, pending, or unavailable. I implemented the necessary logic to prevent external provider failures from corrupting the internal wallet or transaction state. Queues, Jobs & Background Processing I used Laravel Queues and Jobs to move resource-intensive or non-critical operations away from the main HTTP request lifecycle. Instead of forcing a user to wait for every operation to finish synchronously, background jobs can handle tasks such as: Processing service transactions Sending notifications Sending emails or SMS Processing webhook-related operations Updating transaction statuses Provider retries Reconciliation tasks Other asynchronous operations This improves API response times and allows the system to handle more requests without putting unnecessary load on the web server. I also considered job failure handling, retries, delays, queue workers, and failed jobs, ensuring that background operations could be monitored and recovered when external services temporarily failed. Cron Jobs & Laravel Scheduler I implemented scheduled tasks using Laravel's scheduler and cron infrastructure for recurring backend operations. These scheduled processes can be used for tasks such as: Checking pending transactions Reconciling provider transactions Updating service statuses Cleaning expired records Processing scheduled operations Retrying failed operations Maintaining system data Running periodic background processes This allowed the application to perform operational tasks automatically rather than relying on manual intervention. Redis & Caching I also worked with Redis for caching and high-performance backend operations. Caching is particularly useful for information that is requested frequently but does not need to be retrieved from the database on every request. This reduces database load and improves response times. Redis can also support queue processing, temporary data, rate limiting, locks, and other high-performance operations. For a platform like SMSGang, caching needs to be implemented carefully because financial information and transaction states should not be incorrectly served from stale cache. I therefore separate data that can safely be cached from data that must always be retrieved from the authoritative source. Concurrency & Data Consistency Handling concurrency is one of the areas where I focused heavily on backend engineering. A digital wallet platform can receive multiple requests simultaneously from the same user or from external systems. For example, a user could initiate multiple purchases while a payment webhook is being processed at the same time. I designed the backend with database transactions, validation, locking strategies, transaction states, and duplicate-operation protection to reduce the risk of inconsistent balances or duplicated transactions. This is particularly important because a simple implementation that reads a balance, modifies it, and saves it can become unsafe when multiple requests execute simultaneously. Authentication & API Security I implemented secure authentication and authorization mechanisms for the platform and protected sensitive API endpoints using authentication middleware and token-based authentication. I also implemented request validation, authorization checks, middleware, protected routes, secure environment configuration, and other backend security practices. Security considerations were applied not only to authentication but also to financial operations, API access, webhooks, database operations, third-party credentials, and sensitive configuration. I ensure that secrets and provider credentials are not hardcoded into the application and instead use environment-based configuration. Database Engineering I designed and maintained the application's relational database structure, including relationships between users, wallets, transactions, orders, services, providers, and other business entities. I worked with migrations, indexes, foreign keys, constraints, relationships, query optimization, eager loading, and database transactions. I also considered database performance as the amount of platform data grows, avoiding unnecessary queries and optimizing frequently accessed operations. For critical financial operations, database integrity is treated as a priority because an incorrect database state can directly affect a user's funds. API Design I designed RESTful APIs that allow the frontend and other clients to interact with the backend. The APIs include authentication, user management, wallet operations, payments, service purchases, transaction history, order management, service availability, and other platform functionality. I also implemented proper validation and standardized API responses so that frontend clients can reliably understand successful requests, validation errors, authentication failures, transaction failures, and provider errors. The API architecture also makes it possible for SMSGang's backend services to be consumed by other applications in the future. Error Handling & Reliability I built the backend with the understanding that external services can fail. Payment providers can become temporarily unavailable. Data providers can return errors. Network requests can timeout. Webhooks can arrive multiple times. Queue jobs can fail. A user can close their browser while a transaction is still being processed. Because of this, I designed the system around explicit transaction states and proper error handling rather than assuming every request will succeed. I implemented mechanisms for handling failures, retries, pending transactions, provider responses, failed jobs, and unexpected exceptions while ensuring that the internal financial state remains consistent. Production Infrastructure & Deployment I also handled the infrastructure and deployment side of the project. This includes configuring the production environment, server, web server, PHP runtime, database, queues, cron jobs, environment variables, SSL/HTTPS, deployment processes, logs, and application configuration. I worked with technologies such as Linux/VPS infrastructure, Nginx, Docker, Git/GitHub, Redis, MySQL/PostgreSQL, PHP-FPM, and Laravel's production tooling. I am comfortable taking a backend application from development through deployment and maintaining it after it becomes a live production system. Monitoring, Maintenance & Continuous Improvement After deployment, I continued maintaining the platform and handling production issues, debugging errors, improving performance, monitoring integrations, updating dependencies, fixing edge cases, and improving existing systems. Building SMSGang taught me to think beyond simply making features work. I had to consider what happens when thousands of requests arrive, when two transactions happen simultaneously, when an external provider fails, when a webhook is duplicated, when a queue job crashes, when a payment is delayed, and when the database grows significantly. Overall Engineering Approach My approach to SMSGang was to build it as a production-grade backend rather than just a collection of API endpoints. I was responsible for the architecture and implementation across the entire backend lifecycle: database design, API development, authentication, authorization, wallet infrastructure, payment processing, transaction management, third-party integrations, queues, jobs, cron scheduling, Redis caching, concurrency handling, error handling, security, deployment, infrastructure, monitoring, debugging, and ongoing maintenance. The project gave me practical experience building and operating a real-world financial/digital-services platform where data consistency, security, reliability, scalability, and transaction correctness are critical. Most importantly, I handled the technical challenges end-to-end. I was not only writing Laravel code; I was responsible for understanding how the entire system behaves in production and designing the backend to remain reliable even when users, payment providers, service providers, queues, APIs, and infrastructure are all operating simultaneously.
0
40
Cover image for This is a simple website
This is a simple website showcase african food where customer can come and order and it can be export to another country easy that way
1
75
Cover image for Smsgang.org
Smsgang.org
0
78