Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>CodeGiri - Bangladeshi Coding CompanionNew to Visual Studio Code? Get it now.
CodeGiri - Bangladeshi Coding Companion

CodeGiri - Bangladeshi Coding Companion

Foysal Ahmed Pranto

| (0) | Free
A humorous Bangladeshi meme-powered coding companion that reacts to coding mistakes with regional Bangla roasts and funny sound effects.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

CodeGiri - Bangladeshi Coding Companion 🎭

A humorous Bangladeshi meme-powered coding companion that reacts to coding mistakes, build failures, merge conflicts, and debugging events with regional Bangla roasts and funny sound effects.

Features

  • Regional Roasts: Choose from 5 Bangladeshi regions (Dhaka, Mymensingh, Barishal, Noakhali, Chottogram) for authentic regional humor
  • Smart Detection: Automatically detects VS Code diagnostics (errors, warnings, lint issues)
  • Sound Effects: Optional sound effects for different events
  • Toast Notifications: Funny Bangla messages displayed as toast notifications
  • Parent Mode: Late-night coding reminders at 3 AM
  • Achievement System: Unlock achievements for coding milestones
  • Customizable Settings: Full control over roast intensity, sound, and region

Installation

Prerequisites

  • Node.js (v18 or higher)
  • npm or yarn
  • VS Code (v1.85.0 or higher)

Development Installation

  1. Clone the repository:
git clone https://github.com/foysalpranto121/CodeGiri.git
cd codegiri
  1. Install dependencies:
npm install
  1. Compile the TypeScript code:
npm run compile
  1. Run the extension in development mode:
  • Press F5 in VS Code to launch a new Extension Development Host window
  • Or use the command palette: Run Extension

Production Installation

  1. Package the extension:
npm install -g vsce
vsce package
  1. Install the .vsix file:
code --install-extension FoysalAhmedPranto-codegiri-1.0.0.vsix

Or publish to the VS Code Marketplace and install from there.

Configuration

Open VS Code Settings and search for "CodeGiri" to configure:

Settings

  • codegiri.enabled: Enable or disable CodeGiri roasts (default: true)
  • codegiri.region: Select your preferred region (default: Dhaka)
    • Dhaka
    • Mymensingh
    • Barishal
    • Noakhali
    • Chottogram
  • codegiri.soundEnabled: Enable sound effects (default: true)
  • codegiri.roastIntensity: Roast intensity level (default: medium)
    • mild
    • medium
    • spicy
  • codegiri.parentMode: Enable parent mode for late-night reminders (default: false)
  • codegiri.achievementsEnabled: Enable achievement system (default: true)

Usage

Commands

Open the Command Palette (Ctrl+Shift+P or Cmd+Shift+P) and use:

  • CodeGiri: Change Region - Change your preferred region
  • CodeGiri: Toggle Roast Mode - Enable/disable roasts
  • CodeGiri: Test Roast - Test a random roast
  • CodeGiri: Open Settings - Open the settings webview
  • CodeGiri: Show Achievements - View your achievements

Status Bar

The CodeGiri status bar item shows your current region and allows quick access to settings.

Automatic Reactions

CodeGiri automatically reacts to:

  • Errors: Shows error roasts when diagnostics detect errors
  • Warnings: Shows warning roasts for lint issues
  • Build Failures: Reacts to terminal build failures
  • Merge Conflicts: Special roasts for Git merge conflicts
  • npm Install Failures: Crying animation and sound effect
  • Too Many Errors: Special message when error count exceeds 20
  • Successful Builds: Celebration message
  • Late Night Coding: Parent mode reminders at 3 AM

Regional Roasts

Dhaka

  • "Boss production down 💀"
  • "Deploy disos? Astaghfirullah"

Mymensingh

  • "Mamaa eta abar ki likhla?"
  • "Compiler o lajjai crash khaise"

Noakhali

  • "Ki korsos miaaa?"
  • "Bug na, pura bipod"

Chottogram

  • "Syntax e agun"
  • "Debug koren, dua poren"

Barishal

  • "Code kom, problem beshi"
  • "Eta dekhe IDE o voy paisey"

Achievements

Unlock achievements by coding:

  • First Successful Build: Complete your first successful build
  • 100 Errors Fixed: Fix 100 errors in your code
  • Merge Conflict Survivor: Survive a merge conflict
  • Night Owl: Code past 3 AM with parent mode enabled
  • Roast Master: Receive 50 roasts from CodeGiri

Sound Effects

CodeGiri includes built-in sound effects designed to complement notifications and events. These can be enabled or disabled via the configuration settings.

The extension features native background audio playback for:

  • Error: Plays when diagnostics detect syntax or compilation errors.
  • Warning: Plays for linting warnings or minor code issues.
  • Success: Plays upon successful builds and task completions.
  • Conflict: Triggered during Git merge conflict events.
  • Cry: Plays on installer and environment failures (such as npm install failures).

Architecture

To provide a seamless, non-intrusive experience, CodeGiri handles sound playback natively in the background without launching external GUI media players or opening empty VS Code editor tabs:

  • Windows: Executed asynchronously in the background using PowerShell leveraging the .NET System.Windows.Media.MediaPlayer API.
  • macOS: Utilizes the native command-line afplay utility.
  • Linux: Proactively falls back through standard system audio players (paplay, pw-play, play, aplay, mpg123, mplayer) to find an available playback engine.

Development

Project Structure

codegiri/
├── src/
│   ├── data/
│   │   └── roastData.ts       # Regional roast messages
│   ├── managers/
│   │   ├── soundManager.ts    # Sound effect management
│   │   └── achievementManager.ts  # Achievement tracking
│   ├── ui/
│   │   └── settingsPanel.ts   # Settings webview
│   └── extension.ts           # Main extension entry point
├── sounds/                    # Sound effect files
├── webview/                   # Webview assets
├── package.json              # Extension manifest
├── tsconfig.json             # TypeScript configuration
└── README.md                 # This file

Building

# Compile TypeScript
npm run compile

# Watch for changes
npm run watch

# Lint code
npm run lint

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

  • Inspired by the vibrant Bangladeshi coding community
  • Built with VS Code Extension API
  • TypeScript for type safety

Support

If you encounter any issues or have suggestions, please open an issue on GitHub.

Changelog

Version 1.0.0

  • Initial release
  • 5 regional roast options
  • Sound effect support
  • Achievement system
  • Parent mode
  • Settings webview
  • Status bar integration%

Made with ❤️ for Bangladeshi developers everywhere

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft