diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
new file mode 100644
index 000000000..b033398a3
--- /dev/null
+++ b/.github/CODEOWNERS
@@ -0,0 +1 @@
+* @helloanoop @maintainer-bruno @lohit-bruno @naman-bruno
diff --git a/.github/workflows/playwright.yml b/.github/workflows/playwright.yml
deleted file mode 100644
index f630b56cb..000000000
--- a/.github/workflows/playwright.yml
+++ /dev/null
@@ -1,44 +0,0 @@
-name: Playwright E2E Tests
-on:
- push:
- branches: [main]
- pull_request:
- branches: [main]
-
-jobs:
- e2e-test:
- timeout-minutes: 60
- runs-on: ubuntu-24.04
- steps:
- - uses: actions/checkout@v4
- - uses: actions/setup-node@v4
- with:
- node-version: v22.11.x
- - name: Install dependencies
- run: |
- sudo apt-get update
- sudo apt-get --no-install-recommends install -y \
- libglib2.0-0 libnss3 libdbus-1-3 libatk1.0-0 libatk-bridge2.0-0 libcups2 libgtk-3-0 libasound2t64 \
- xvfb
- npm ci --legacy-peer-deps
- sudo chown root /home/runner/work/bruno/bruno/node_modules/electron/dist/chrome-sandbox
- sudo chmod 4755 /home/runner/work/bruno/bruno/node_modules/electron/dist/chrome-sandbox
-
- - name: Build libraries
- run: |
- npm run build:graphql-docs
- npm run build:bruno-query
- npm run build:bruno-common
- npm run sandbox:bundle-libraries --workspace=packages/bruno-js
- npm run build:bruno-converters
- npm run build:bruno-requests
-
- - name: Run Playwright tests
- run: |
- xvfb-run npm run test:e2e
- - uses: actions/upload-artifact@v4
- if: ${{ !cancelled() }}
- with:
- name: playwright-report
- path: playwright-report/
- retention-days: 30
diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml
index 144cdee5b..aaf5d1880 100644
--- a/.github/workflows/tests.yml
+++ b/.github/workflows/tests.yml
@@ -91,5 +91,47 @@ jobs:
uses: EnricoMi/publish-unit-test-result-action@v2
if: always()
with:
+ check_name: CLI Test Results
files: packages/bruno-tests/collection/junit.xml
comment_mode: always
+ e2e-test:
+ name: Playwright E2E Tests
+ timeout-minutes: 60
+ runs-on: ubuntu-24.04
+ steps:
+ - uses: actions/checkout@v4
+ - uses: actions/setup-node@v4
+ with:
+ node-version: v22.11.x
+ - name: Install dependencies
+ run: |
+ sudo apt-get update
+ sudo apt-get --no-install-recommends install -y \
+ libglib2.0-0 libnss3 libdbus-1-3 libatk1.0-0 libatk-bridge2.0-0 libcups2 libgtk-3-0 libasound2t64 \
+ xvfb
+ npm ci --legacy-peer-deps
+ sudo chown root /home/runner/work/bruno/bruno/node_modules/electron/dist/chrome-sandbox
+ sudo chmod 4755 /home/runner/work/bruno/bruno/node_modules/electron/dist/chrome-sandbox
+
+ - name: Install dependencies for test collection environment
+ run: |
+ npm ci --prefix packages/bruno-tests/collection
+
+ - name: Build libraries
+ run: |
+ npm run build:graphql-docs
+ npm run build:bruno-query
+ npm run build:bruno-common
+ npm run sandbox:bundle-libraries --workspace=packages/bruno-js
+ npm run build:bruno-converters
+ npm run build:bruno-requests
+
+ - name: Run Playwright tests
+ run: |
+ xvfb-run npm run test:e2e
+ - uses: actions/upload-artifact@v4
+ if: ${{ !cancelled() }}
+ with:
+ name: playwright-report
+ path: playwright-report/
+ retention-days: 30
diff --git a/contributing.md b/contributing.md
index 7656eb5fa..b72d71293 100644
--- a/contributing.md
+++ b/contributing.md
@@ -99,14 +99,13 @@ npm run dev
```
#### Customize Electron `userData` path
-If `ELECTRON_APP_NAME` env-variable is present and its development mode, then the `appName` and `userData` path is modified accordingly.
+If `ELECTRON_USER_DATA_PATH` env-variable is present and its development mode, then `userData` path is modified accordingly.
e.g.
```sh
-ELECTRON_APP_NAME=bruno-dev npm run dev:electron
+ELECTRON_USER_DATA_PATH=$(realpath ~/Desktop/bruno-test) npm run dev:electron
```
-
-> This doesn't change the name of the window or the names in lot of other places, only the name used by Electron internally.
+This will create a `bruno-test` folder on your Desktop and use it as the `userData` path.
### Troubleshooting
diff --git a/docs/contributing/contributing_es.md b/docs/contributing/contributing_es.md
index f080a765c..fc1d9866b 100644
--- a/docs/contributing/contributing_es.md
+++ b/docs/contributing/contributing_es.md
@@ -1,4 +1,4 @@
-[English](../../contributing.md)
+[Inglés](../../contributing.md)
## ¡Juntos, hagamos a Bruno mejor!
@@ -6,58 +6,111 @@ Estamos encantados de que quieras ayudar a mejorar Bruno. A continuación encont
### Tecnologías utilizadas
-Bruno está construido con NextJs y React. También usamos electron para distribuir una versión de escritorio (que soporta colecciones locales).
+Bruno está construido con React y Electron
Librerías que utilizamos:
-- CSS - Tailwind
-- Editores de código - Codemirror
+- CSS - Tailwind CSS
+- Editores de código - CodeMirror
- Manejo del estado - Redux
- Íconos - Tabler Icons
- Formularios - formik
- Validación de esquemas - Yup
- Cliente de peticiones - axios
- Monitor del sistema de archivos - chokidar
+- i18n (internacionalización) - i18next
### Dependencias
-Necesitarás [Node v20.x o la última versión LTS](https://nodejs.org/es) y npm 8.x. Ten en cuenta que utilizamos espacios de trabajo de npm en el proyecto.
+> [!IMPORTANT]
+> Necesitarás [Node v22.x o la última versión LTS](https://nodejs.org/es/). Ten en cuenta que Bruno usa los espacios de trabajo de npm
## Desarrollo
-Bruno está siendo desarrollado como una aplicación de escritorio. Para ejecutarlo, primero debes ejecutar la aplicación de nextjs en una terminal y luego ejecutar la aplicación de electron en otra terminal.
+Bruno es una aplicación de escritorio. A continuación se detallan las instrucciones paso a paso para ejecutar Bruno.
-### Dependencias
+> Nota: Utilizamos React para el frontend y rsbuild para el servidor de desarrollo.
-- NodeJS v18
+### Instalar dependencias
+
+```bash
+# Use la versión 22.x o LTS (Soporte a Largo Plazo) de Node.js
+nvm use 22.11.0
+
+# instalar las dependencias
+npm i --legacy-peer-deps
+```
+
+> ¿Por qué `--legacy-peer-deps`?: Fuerza la instalación ignorando conflictos en dependencias “peer”, evitando errores de árbol de dependencias.
### Desarrollo local
+#### Construir paquetes
+
+##### Opción 1
+
```bash
-# Utiliza la versión 18 de nodejs
-nvm use
-
-# Instala las dependencias
-npm i --legacy-peer-deps
-
-# Construye la documentación de graphql
+# construir paquetes
npm run build:graphql-docs
-
-# Construye bruno-query
npm run build:bruno-query
+npm run build:bruno-common
+npm run build:bruno-converters
+npm run build:bruno-requests
-# Ejecuta la aplicación de nextjs (terminal 1)
+# empaquetar bibliotecas JavaScript del entorno de pruebas aislado
+npm run sandbox:bundle-libraries --workspace=packages/bruno-js
+```
+
+##### Opción 2
+
+```bash
+# instalar dependencias y configurar el entorno
+npm run setup
+```
+
+#### Ejecutar la aplicación
+
+```bash
+# ejecutar aplicación react (terminal 1)
npm run dev:web
-# Ejecuta la aplicación de electron (terminal 2)
+# ejecutar aplicación electron (terminal 2)
npm run dev:electron
```
+##### Opción 1
+
+```bash
+# ejecutar aplicación react (terminal 1)
+npm run dev:web
+
+# ejecutar aplicación electron (terminal 2)
+npm run dev:electron
+```
+
+##### Opción 2
+
+```bash
+# ejecutar aplicación electron y react de forma concurrente
+npm run dev
+```
+
+#### Personalizar la ruta `userData` de Electron
+
+Si la variable de entorno `ELECTRON_USER_DATA_PATH` está presente y se encuentra en modo de desarrollo, entonces la ruta `userData` se modifica en consecuencia.
+ejemplo:
+
+```sh
+ELECTRON_USER_DATA_PATH=$(realpath ~/Desktop/bruno-test) npm run dev:electron
+```
+
+Esto creará una carpeta llamada `bruno-test` en tu escritorio y la usará como la ruta userData.
+
### Solución de problemas
-Es posible que encuentres un error de `Unsupported platform` cuando ejecutes `npm install`. Para solucionarlo, debes eliminar la carpeta `node_modules` y el archivo `package-lock.json`, luego, ejecuta `npm install`. Lo anterior debería instalar todos los paquetes necesarios para ejecutar la aplicación.
+Es posible que te encuentres con un error `Unsupported platform` cuando ejecutes `npm install`. Para solucionarlo, tendrás que eliminar las carpetas `node_modules` y el archivo `package-lock.json`, y luego volver a ejecutar `npm install`. Esto debería instalar todos los paquetes necesarios para que la aplicación funcione.
-```shell
+```sh
# Elimina la carpeta node_modules en los subdirectorios
find ./ -type d -name "node_modules" -print0 | while read -d $'\0' dir; do
rm -rf "$dir"
@@ -69,10 +122,42 @@ find . -type f -name "package-lock.json" -delete
### Pruebas
-```bash
-# ejecutar pruebas de esquema bruno
-npm test --workspace=packages/bruno-schema
+#### Pruebas individuales
+```bash
+# ejecutar pruebas de bruno-app
+npm run test --workspace=packages/bruno-app
+
+# ejecutar pruebas de bruno-electron
+npm run test --workspace=packages/bruno-electron
+
+# ejecutar pruebas de bruno-cli
+npm run test --workspace=packages/bruno-cli
+
+# ejecutar pruebas de bruno-common
+npm run test --workspace=packages/bruno-common
+
+# ejecutar pruebas de bruno-converters
+npm run test --workspace=packages/bruno-converters
+
+# ejecutar pruebas de bruno-schema
+npm run test --workspace=packages/bruno-schema
+
+# ejecutar pruebas de bruno-query
+npm run test --workspace=packages/bruno-query
+
+# ejecutar pruebas de bruno-js
+npm run test --workspace=packages/bruno-js
+
+# ejecutar pruebas de bruno-lang
+npm run test --workspace=packages/bruno-lang
+
+# ejecutar pruebas de bruno-toml
+npm run test --workspace=packages/bruno-toml
+```
+#### Pruebas en conjunto
+
+```bash
# ejecutar pruebas en todos los espacios de trabajo
npm test --workspaces --if-present
```
diff --git a/docs/readme/readme_ar.md b/docs/readme/readme_ar.md
index d72eb834b..9e7829fcc 100644
--- a/docs/readme/readme_ar.md
+++ b/docs/readme/readme_ar.md
@@ -74,12 +74,11 @@ flatpak install com.usebruno.Bruno
# على نظام Linux عبر Apt
sudo mkdir -p /etc/apt/keyrings
+sudo apt update && sudo apt install gpg
+sudo gpg --list-keys
sudo gpg --no-default-keyring --keyring /etc/apt/keyrings/bruno.gpg --keyserver keyserver.ubuntu.com --recv-keys 9FA6017ECABE0266
-
-echo "deb [signed-by=/etc/apt/keyrings/bruno.gpg] http://debian.usebruno.com/ bruno stable" | sudo tee /etc/apt/sources.list.d/bruno.list
-
-sudo apt update
-sudo apt
+echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/bruno.gpg] http://debian.usebruno.com/ bruno stable" | sudo tee /etc/apt/sources.list.d/bruno.list
+sudo apt update && sudo apt install bruno
```
### التشغيل عبر منصات متعددة 🖥️
diff --git a/docs/readme/readme_bn.md b/docs/readme/readme_bn.md
index 88c2c699b..ffcc1a916 100644
--- a/docs/readme/readme_bn.md
+++ b/docs/readme/readme_bn.md
@@ -59,12 +59,11 @@ snap install bruno
# Apt এর মাধ্যমে লিনাক্সে
sudo mkdir -p /etc/apt/keyrings
+sudo apt update && sudo apt install gpg
+sudo gpg --list-keys
sudo gpg --no-default-keyring --keyring /etc/apt/keyrings/bruno.gpg --keyserver keyserver.ubuntu.com --recv-keys 9FA6017ECABE0266
-
-echo "deb [signed-by=/etc/apt/keyrings/bruno.gpg] http://debian.usebruno.com/ bruno stable" | sudo tee /etc/apt/sources.list.d/bruno.list
-
-sudo apt update
-sudo apt install bruno
+echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/bruno.gpg] http://debian.usebruno.com/ bruno stable" | sudo tee /etc/apt/sources.list.d/bruno.list
+sudo apt update && sudo apt install bruno
```
### একাধিক প্ল্যাটফর্মে চালান 🖥️
diff --git a/docs/readme/readme_cn.md b/docs/readme/readme_cn.md
index 7b26bd217..560e34cd1 100644
--- a/docs/readme/readme_cn.md
+++ b/docs/readme/readme_cn.md
@@ -63,12 +63,11 @@ snap install bruno
# 在 Linux 上用 Apt 安装
sudo mkdir -p /etc/apt/keyrings
+sudo apt update && sudo apt install gpg
+sudo gpg --list-keys
sudo gpg --no-default-keyring --keyring /etc/apt/keyrings/bruno.gpg --keyserver keyserver.ubuntu.com --recv-keys 9FA6017ECABE0266
-
-echo "deb [signed-by=/etc/apt/keyrings/bruno.gpg] http://debian.usebruno.com/ bruno stable" | sudo tee /etc/apt/sources.list.d/bruno.list
-
-sudo apt update
-sudo apt install bruno
+echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/bruno.gpg] http://debian.usebruno.com/ bruno stable" | sudo tee /etc/apt/sources.list.d/bruno.list
+sudo apt update && sudo apt install bruno
```
### 在 Mac 上通过 Homebrew 安装 🖥️
diff --git a/docs/readme/readme_de.md b/docs/readme/readme_de.md
index 9c5d27ecc..d7c1a89be 100644
--- a/docs/readme/readme_de.md
+++ b/docs/readme/readme_de.md
@@ -78,12 +78,11 @@ flatpak install com.usebruno.Bruno
# Auf Linux via Apt
sudo mkdir -p /etc/apt/keyrings
+sudo apt update && sudo apt install gpg
+sudo gpg --list-keys
sudo gpg --no-default-keyring --keyring /etc/apt/keyrings/bruno.gpg --keyserver keyserver.ubuntu.com --recv-keys 9FA6017ECABE0266
-
-echo "deb [signed-by=/etc/apt/keyrings/bruno.gpg] http://debian.usebruno.com/ bruno stable" | sudo tee /etc/apt/sources.list.d/bruno.list
-
-sudo apt update
-sudo apt install bruno
+echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/bruno.gpg] http://debian.usebruno.com/ bruno stable" | sudo tee /etc/apt/sources.list.d/bruno.list
+sudo apt update && sudo apt install bruno
```
### Einsatz auf verschiedensten Plattformen 🖥️
diff --git a/docs/readme/readme_es.md b/docs/readme/readme_es.md
index 4cdadc48a..58e293bad 100644
--- a/docs/readme/readme_es.md
+++ b/docs/readme/readme_es.md
@@ -75,12 +75,11 @@ flatpak install com.usebruno.Bruno
# En Linux con Apt
sudo mkdir -p /etc/apt/keyrings
+sudo apt update && sudo apt install gpg
+sudo gpg --list-keys
sudo gpg --no-default-keyring --keyring /etc/apt/keyrings/bruno.gpg --keyserver keyserver.ubuntu.com --recv-keys 9FA6017ECABE0266
-
-echo "deb [signed-by=/etc/apt/keyrings/bruno.gpg] http://debian.usebruno.com/ bruno stable" | sudo tee /etc/apt/sources.list.d/bruno.list
-
-sudo apt update
-sudo apt install bruno
+echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/bruno.gpg] http://debian.usebruno.com/ bruno stable" | sudo tee /etc/apt/sources.list.d/bruno.list
+sudo apt update && sudo apt install bruno
```
### Ejecútalo en múltiples plataformas 🖥️
diff --git a/docs/readme/readme_fr.md b/docs/readme/readme_fr.md
index c02e6ecbd..c3553bebd 100644
--- a/docs/readme/readme_fr.md
+++ b/docs/readme/readme_fr.md
@@ -63,12 +63,11 @@ snap install bruno
# Linux via Apt
sudo mkdir -p /etc/apt/keyrings
+sudo apt update && sudo apt install gpg
+sudo gpg --list-keys
sudo gpg --no-default-keyring --keyring /etc/apt/keyrings/bruno.gpg --keyserver keyserver.ubuntu.com --recv-keys 9FA6017ECABE0266
-
-echo "deb [signed-by=/etc/apt/keyrings/bruno.gpg] http://debian.usebruno.com/ bruno stable" | sudo tee /etc/apt/sources.list.d/bruno.list
-
-sudo apt update
-sudo apt install bruno
+echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/bruno.gpg] http://debian.usebruno.com/ bruno stable" | sudo tee /etc/apt/sources.list.d/bruno.list
+sudo apt update && sudo apt install bruno
```
### Fonctionne sur de multiples plateformes 🖥️
diff --git a/docs/readme/readme_hi.md b/docs/readme/readme_hi.md
new file mode 100644
index 000000000..395f38dec
--- /dev/null
+++ b/docs/readme/readme_hi.md
@@ -0,0 +1,151 @@
+
+
+
+### ब्रूनो - API इंटरफेस (API) का अन्वेषण और परीक्षण करने के लिए एक ओपन-सोर्स विकास वातावरण।
+
+[](https://badge.fury.io/gh/usebruno%2Fbruno)
+[](https://github.com/usebruno/bruno/actions/workflows/tests.yml)
+[](https://github.com/usebruno/bruno/pulse)
+[](https://twitter.com/use_bruno)
+[](https://www.usebruno.com)
+[](https://www.usebruno.com/downloads)
+
+[English](../../readme.md)
+| [Українська](./readme_ua.md)
+| [Русский](./readme_ru.md)
+| [Türkçe](./readme_tr.md)
+| [Deutsch](./readme_de.md)
+| [Français](./readme_fr.md)
+| [Português (BR)](./readme_pt_br.md)
+| [한국어](./readme_kr.md)
+| [বাংলা](./readme_bn.md)
+| [Español](./readme_es.md)
+| [Italiano](./readme_it.md)
+| [Română](./readme_ro.md)
+| [Polski](./readme_pl.md)
+| [简体中文](./readme_cn.md)
+| [正體中文](./readme_zhtw.md)
+| [العربية](./readme_ar.md)
+| [日本語](./readme_ja.md)
+| [ქართული](./readme_ka.md)
+| **हिन्दी**
+
+ब्रूनो एक नया और अभिनव API क्लाइंट है, जिसका उद्देश्य Postman और अन्य समान उपकरणों द्वारा प्रस्तुत स्थिति को बदलना है।
+
+ब्रूनो आपकी कलेक्शनों को सीधे आपकी फाइल सिस्टम के एक फ़ोल्डर में संग्रहीत करता है। हम API अनुरोधों के बारे में जानकारी सहेजने के लिए एक सामान्य टेक्स्ट मार्कअप भाषा, Bru, का उपयोग करते हैं।
+
+आप अपनी API कलेक्शनों पर सहयोग करने के लिए Git या अपनी पसंद के किसी भी संस्करण नियंत्रण प्रणाली का उपयोग कर सकते हैं।
+
+ब्रूनो केवल ऑफ़लाइन उपयोग के लिए है। ब्रूनो में कभी भी क्लाउड-सिंक जोड़ने की कोई योजना नहीं है। हम आपके डेटा की गोपनीयता को महत्व देते हैं और मानते हैं कि इसे आपके डिवाइस पर ही रहना चाहिए। हमारी दीर्घकालिक दृष्टि [यहाँ](https://github.com/usebruno/bruno/discussions/269) पढ़ें।
+
+📢 हमारे हालिया India FOSS 3.0 सम्मेलन में हमारे वार्तालाप को [यहाँ](https://www.youtube.com/watch?v=7bSMFpbcPiY) देखें।
+
+
+
+### गोल्डन संस्करण ✨
+
+हमारी अधिकांश सुविधाएँ मुफ्त और ओपन-सोर्स हैं।
+हम [पारदर्शिता और स्थिरता के सिद्धांतों](https://github.com/usebruno/bruno/discussions/269) के बीच एक सामंजस्यपूर्ण संतुलन प्राप्त करने का प्रयास करते हैं।
+
+[गोल्डन संस्करण](https://www.usebruno.com/pricing) के लिए खरीदारी जल्द ही $9 की कीमत पर उपलब्ध होगी!
+[यहाँ सदस्यता लें](https://usebruno.ck.page/4c65576bd4) ताकि आपको लॉन्च पर सूचनाएं मिलें।
+
+### स्थापना
+
+ब्रूनो Mac, Windows और Linux के लिए हमारे [वेबसाइट](https://www.usebruno.com/downloads) पर एक बाइनरी डाउनलोड के रूप में उपलब्ध है।
+
+आप ब्रूनो को Homebrew, Chocolatey, Scoop, Snap, Flatpak और Apt जैसे पैकेज प्रबंधकों के माध्यम से भी स्थापित कर सकते हैं।
+
+```sh
+# Mac पर Homebrew के माध्यम से
+brew install bruno
+
+# Windows पर Chocolatey के माध्यम से
+choco install bruno
+
+# Windows पर Scoop के माध्यम से
+scoop bucket add extras
+scoop install bruno
+
+# Linux पर Snap के माध्यम से
+snap install bruno
+
+# Linux पर Flatpak के माध्यम से
+flatpak install com.usebruno.Bruno
+
+# Linux पर Apt के माध्यम से
+sudo mkdir -p /etc/apt/keyrings
+sudo gpg --no-default-keyring --keyring /etc/apt/keyrings/bruno.gpg --keyserver keyserver.ubuntu.com --recv-keys 9FA6017ECABE0266
+
+echo "deb [signed-by=/etc/apt/keyrings/bruno.gpg] http://debian.usebruno.com/ bruno stable" | sudo tee /etc/apt/sources.list.d/bruno.list
+
+sudo apt update
+sudo apt install bruno
+
+कई प्लेटफार्मों पर चलाएं 🖥️
+
+
+Git के माध्यम से सहयोग करें 👩💻🧑💻
+या अपनी पसंद के किसी भी संस्करण नियंत्रण प्रणाली का उपयोग करें
+
+
+
+महत्वपूर्ण लिंक 📌
+हमारी दीर्घकालिक दृष्टि
+
+रोडमैप
+
+प्रलेखन
+
+Stack Overflow
+
+वेबसाइट
+
+मूल्य निर्धारण
+
+डाउनलोड
+
+GitHub प्रायोजक
+
+प्रस्तुतियाँ 🎥
+प्रशंसापत्र
+
+ज्ञान केंद्र
+
+Scriptmania
+
+समर्थन ❤️
+यदि आप ब्रूनो को पसंद करते हैं और हमारे ओपन-सोर्स कार्य का समर्थन करना चाहते हैं, तो कृपया GitHub प्रायोजक के माध्यम से हमें प्रायोजित करने पर विचार करें।
+
+प्रशंसापत्र साझा करें 📣
+यदि ब्रूनो ने आपके और आपकी टीमों के लिए काम में मदद की है, तो कृपया हमारे GitHub चर्चा में अपने प्रशंसापत्र साझा करना न भूलें
+
+नए पैकेज प्रबंधकों में प्रकाशित करना
+अधिक जानकारी के लिए कृपया यहाँ देखें।
+
+हमसे संपर्क करें 🌐
+𝕏 (ट्विटर)
+वेबसाइट
+डिस्कॉर्ड
+लिंक्डइन
+
+ट्रेडमार्क
+नाम
+
+ब्रूनो एक ट्रेडमार्क है जो अनूप एम डी के स्वामित्व में है।
+
+लोगो
+
+लोगो OpenMoji से लिया गया है। लाइसेंस: CC BY-SA 4.0
+
+योगदान 👩💻🧑💻
+हमें खुशी है कि आप ब्रूनो को बेहतर बनाने में रुचि रखते हैं। कृपया योगदान गाइड देखें।
+
+यदि आप सीधे कोड के माध्यम से योगदान नहीं कर सकते, तो भी कृपया बग्स की रिपोर्ट करने और उन सुविधाओं का अनुरोध करने में संकोच न करें जिन्हें आपकी स्थिति को हल करने के लिए लागू किया जाना चाहिए।
+
+लेखक
+
No errors
+ console.error() calls will appear here +Found a bug? Help us improve Bruno by reporting this error on GitHub.
+ ++ {formatStackTrace(error.stack)} ++
+ {formatArguments(error.args)} ++
No network requests
+ Requests will appear here as you make API calls +Name | +Value | +
{header.name} | +{header.value} | +
{formatBody(request.body)}+
Name | +Value | +
{header.name} | +{header.value} | +
No logs to display
+ Logs will appear here as your application runs +