SQLite3 con JavaScript puro y OPFS - Tutorial

En este post te mostraré cómo usar SQLite3 directamente en el navegador web usando la librería original escrita en C a través de WebAssembly y el OPFS para alojar la base de datos. De este modo tendremos SQLite3 original en la web para trabajar en el navegador con JS del lado del cliente. Podremos hacer esto con JavaScript puro o con cualquier framework; pero te mostraré un ejemplo básico y bien explicado de SQLite3 con JavaScript. Luego te enseñaré un ejemplo con Tailwind, Svelte y Progressive Web apps. ...

agosto 7, 2023 · 5 min · 1021 palabras · Parzibyte

Impresora térmica con Node.js

Hoy vamos a ver cómo imprimir tickets en una impresora térmica con Node.js usando JavaScript del lado del servidor. Me imagino que con esto se podrá imprimir usando express, Electron o cualquier otra cosa. Toma en cuenta que esto imprimirá en el servidor y que funcionará perfectamente para sistemas locales, pero si vas a subirlo al servidor puede que quieras revisar cómo imprimir del lado del cliente así como ya expliqué el problema que tenemos con PHP. ...

junio 27, 2023 · 3 min · 565 palabras · Parzibyte

Pasar parámetros a función de Svelte

En Svelte podemos indicar funciones que se van a invocar cuando se desencadena un evento. Por ejemplo, para invocar a holaMundo en el click de un elemento podemos indicarlo como on:click={holaMundo} En ocasiones se necesita pasar parámetros a esa función dentro de un componente de Svelte, pero no podemos indicarlo así: on:click={holaMundo(parametro)} Ya que eso ejecutará la función tan pronto se cargue el componente, y no esperará al clic. Por ello es que en este post te mostraré cómo pasar argumentos a las funciones en Svelte sin que se invoquen automáticamente. ...

junio 27, 2023 · 3 min · 515 palabras · Parzibyte

Impresora térmica con PHP y plugin

Desde hace tiempo presenté mi plugin para comunicación con impresoras térmicas que permite imprimir con comandos ESC POS desde cualquier lugar saltando las limitaciones del navegador web y de los lenguajes de programación. Hoy te enseñaré cómo usarlo con PHP, aunque técnicamente vamos a usar JavaScript ya que si bien podemos hacer peticiones con PHP, necesitamos hacer estas peticiones desde el cliente y no desde el servidor, sobre todo cuando PHP está en un servidor web. No te preocupes, será un código muy sencillo y funcionará igualmente con o sin internet. Veamos cómo imprimir en una impresora térmica desde PHP pero en modo cliente. ...

junio 26, 2023 · 4 min · 799 palabras · Parzibyte

Milisegundos a fecha con JavaScript

En varios de mis proyectos con JavaScript utilizo el timestamp en lugar de la fecha como cadena y después formateo esa cantidad de milisegundos usando Intl.DateTimeFormat. Es decir, convierto el timestamp a una fecha con JS. Lo ocupo en tantos lugares pero nunca me he dispuesto a compartirlo aquí por lo simple que es. Ahora como lo voy a ocupar en un proyecto de notas, vengo a publicarlo de una vez. Así que hoy veremos cómo convertir algo como 1687479441903 en 22 jun 2023, 18:17:21 teniendo la opción de modificar el formato de la fecha y hora respetando el locale o idioma. Nota: esto funcionará independientemente del lugar donde guardes el timestamp. Puede estar en el cliente o servidor. ...

junio 23, 2023 · 2 min · 305 palabras · Parzibyte

Imprimir tabla en impresora térmica

Las impresoras térmicas permiten la impresión de texto y la alineación del mismo, pero ¿qué pasa cuando queremos imprimir una tabla que sea alineada correctamente en caso de que el texto sobrepase el ancho? para ello debemos implementar un algoritmo propio. Por ello es que en este post te voy a enseñar a imprimir datos tabulados o básicamente imprimir una tabla bien alineada y con separadores en una impresora térmica, usando únicamente texto. Verás que podremos imprimir las celdas y columnas de la tabla respetando el máximo ancho del ticket, ya sea dibujando los separadores o solo ordenando los datos. ...

abril 24, 2023 · 7 min · 1321 palabras · Parzibyte

JavaScript: tabular datos con límite de longitud, separador y relleno

El día de hoy veremos un algoritmo que he querido desarrollar desde hace mucho y que no fue tan complejo como creí. Se trata de una forma de crear una tabla con JavaScript y que los datos se acomoden automáticamente en cada columna para que no superen una longitud predefinida. De este modo podremos crear tablas (en forma de texto) en donde el contenido se va a ajustar automáticamente, especificando un separador y una longitud por columna. ...

febrero 28, 2023 · 6 min · 1272 palabras · Parzibyte

JavaScript: separar cadena en bloques

En el post de hoy vamos a ver cómo dividir una cadena en pedazos si es que supera una máxima longitud. Por ejemplo, separar la string en JS si mide más de 5, y además de eso dividirla en fragmentos de N cantidad. Vamos a ver cómo separar una cadena cada cierto número de caracteres y también cómo dividirla en trozos pequeños colocados en un arreglo donde se respete una cierta longitud. ...

febrero 20, 2023 · 3 min · 600 palabras · Parzibyte

Prevenir salto de línea en textarea de HTML

En este post vamos a ver cómo evitar que el usuario presione “Enter” en un textarea de HTML para que no se puedan agregar nuevas líneas o saltos de línea. Te voy a enseñar a prevenir que el usuario agregue más líneas dentro del textarea escuchando el evento del teclado, y a partir del mismo puedes hacer más cosas para prevenirlo al momento de copiar y pegar o arrastrar. ...

febrero 1, 2023 · 2 min · 398 palabras · Parzibyte

Tiempo relativo con JavaScript y RelativeTimeFormat

En este post de JavaScript vamos a mostrar el tiempo relativo transcurrido o faltante entre 2 fechas de manera relativa usando Intl.RelativeTimeFormat. Básicamente vamos a mostrar el “hace 2 minutos”, “hace 2 horas,” “dentro de 1 día”, “dentro de un mes” pero siendo capaces de cambiar el idioma. De este modo podremos mostrar el tiempo que falta o el tiempo que ha transcurrido con JavaScript en cualquier idioma. ...

enero 27, 2023 · 4 min · 661 palabras · Parzibyte