Diferencia entre revisiones de «Bun»

De Wiki Proyectos Beta
Ir a la navegación Ir a la búsqueda
([feat] Add information about Bun)
 
(No se muestran 4 ediciones intermedias del mismo usuario)
Línea 1: Línea 1:
= General =
= Descripción =


Bun es un entorno en tiempo de ejecución de JavaScript, como Node o Deno, pero todo en uno. Bun tiene un paquete nativo, un transpilador, un ejecutor de tareas y un cliente npm integrado.
Bun es un entorno en tiempo de ejecución de JavaScript, como Node o Deno, pero todo en uno. Bun tiene un paquete nativo, un transpilador, un ejecutor de tareas y un cliente npm integrado.
Bun se creó en abril de 2021 y fue desarrollado por Jared Sumner (desarrollador de Stripe).
Bun se creó en abril de 2021 y fue desarrollado por Jared Sumner (desarrollador de Stripe).
== Última versión estable ==
La última versión estable es la v1.0.3 que fue lanzada el 22 de septiembre 2023.


= Recursos =
= Recursos =


* Sitio oficial: [https://bun.sh/ EN]
* Sitio oficial: [https://bun.sh/ EN]
* Documentación oficial: [https://github.com/oven-sh/bun#Reference EN]
* Documentación oficial: [https://bun.sh/docs EN]
* Código fuente: [https://github.com/oven-sh/bun EN]
* Código fuente: [https://github.com/oven-sh/bun EN]
* Blog oficial: [https://bun.sh/blog EN]
* Ejemplos: [https://github.com/oven-sh/bun/tree/main/examples EN]
* Ejemplos: [https://github.com/oven-sh/bun/tree/main/examples EN]
* Lanzamiento de las versiones de Bun: [https://github.com/oven-sh/bun/releases EN]
* Lanzamiento de las versiones de Bun: [https://github.com/oven-sh/bun/releases EN]
Línea 31: Línea 36:
* wiptest para test de JavaScript y TypeScript
* wiptest para test de JavaScript y TypeScript


= Instalación =
= General =
 
== GNU/Linux ==
 
curl https://bun.sh/install | bash
 
=== Configuración ===
 
Agregar el PATH en .bashrc o .zshrc
 
Tecleamos en la terminal:
nano ~/.bashrc
 
Agregamos al final del archivo:
  export BUN_INSTALL="$HOME/.bun"
  export PATH="$BUN_INSTALL/bin:$PATH"
 
Volvemos a teclear para tener los cambios recien agregados:
source ~/.bashrc
 
=== Verificar versión ===
 
bun --version
 
Sale por pantalla:
0.1.8
 
== Docker ==
 
docker pull jarredsumner/bun:edge
docker run --rm --init --ulimit memlock=-1:-1 jarredsumner/bun:edge
 
= Actualización =


bun upgrade
* [[Instalación Bun]]


= Ejemplos =
= Ejemplos =

Revisión actual - 18:11 23 sep 2023

Descripción

Bun es un entorno en tiempo de ejecución de JavaScript, como Node o Deno, pero todo en uno. Bun tiene un paquete nativo, un transpilador, un ejecutor de tareas y un cliente npm integrado. Bun se creó en abril de 2021 y fue desarrollado por Jared Sumner (desarrollador de Stripe).

Última versión estable

La última versión estable es la v1.0.3 que fue lanzada el 22 de septiembre 2023.

Recursos

  • Sitio oficial: EN
  • Documentación oficial: EN
  • Código fuente: EN
  • Blog oficial: EN
  • Ejemplos: EN
  • Lanzamiento de las versiones de Bun: EN
  • Discord: EN

Features principales

Algunas características:

  • JavaScriptCore: un motor de JavaScript incorporado para WebKit. Más rápido que el V8.
  • Zig: un lenguaje de programación de propósito general y una cadena de herramientas para mantener un software robusto, óptimo y reutilizable.
  • Esbuild: un paquete y minificador de JavaScript/CSS extremadamente rápido.
  • APIs web integradas (fetch, WebSocket, ReadableStream, etc...)
  • node_modules: bun implementa un algoritmo de resolución de módulos de Node.js, por lo que puedes usar paquetes npm en bun.js. ESM y CommonJS son compatibles, pero Bun utiliza internamente ESM.
  • Transpilador de Typescript y JSX.
  • Soporta paths, jsxImportSource y más desde los archivos tsconfig.json.
  • Utiliza las llamadas al sistema más rápidas disponibles con Bun.write para write, copy, pipe, send y clone files.
  • Cargado automático de .env sin require("dotenv").load()
  • Cliente SQLite3 integrado con bun:sqlite
  • bun:ffi Para código iteroperable con JavaScript
  • node:fs node:path Bun soporta de manera nativa la mayoría de módulos del core de Node.js
  • wiptest para test de JavaScript y TypeScript

General

Ejemplos

Servidor HTTP sencillo

Se crea un archivo llamado script.js

Bun.serve({
   fetch(request){
       return new Response("Hello Proyectos Beta!!!")
   }
});
console.log("Listening on Port 3000");

En la terminal:

bun run script.js

Entramos a nuestro navegador favorito y tecleamos en la barra de direcciones:

http://localhost:3000

Sale en el navegador:

Hello Proyectos Beta!!!