Parzibyte's blog

Blog de conocimiento gratuito: linux, programación, open source, bases de datos, android, frameworks, web e informática en general.

Contar palabras en Python sin split ni count

En el post de hoy vamos a ver un algoritmo con Python para contar las ocurrencias de una palabra en una oración (cantidad de veces que se repite la palabra) o cadena sin usar split ni count, además de que no va a importar si la cadena no tiene espacios.

Con el código Python expuesto aquí vas a aprender a contar la cantidad de palabras en un string con la opción de encontrar solo coincidencias completas.

Recuerda que ya anteriormente te enseñé a hacerlo con split y luego incluso contamos el porcentaje.

(más…)

JavaScript: descargar archivo con fetch

En este post vamos a ver cómo descargar un archivo en segundo plano usando JavaScript del lado del cliente y la función fetch para hacer peticiones HTTP.

Veremos cómo descargar un archivo como blob usando AJAX para después preguntar al usuario en dónde guardarlo, sugiriendo un nombre.

Lo bueno de esto es que podemos enviar parámetros para solicitar la descarga del archivo (por ejemplo, si el mismo estuviera protegido por contraseña o autentificación).

(más…)

App de notas y listas con encriptación – Open source

El día de hoy te enseñaré una aplicación simple, gratuita y open source para gestionar notas y listas (To Do app). Está hecha con JavaScript usando Svelte, utiliza SQLite3 para el almacenamiento, Tailwind para el diseño y se agrega encriptación con la web crypto API.

Puedes probar la aplicación ya mismo ingresando al siguiente enlace: https://notasbyparzibyte.parzibyte.repl.co/#/. Incluso puedes instalarla como nativa, y todos los datos se van a quedar en tu dispositivo sin necesidad de internet.

Con esta app de notas podrás agregar notas y listas de pendientes, además de poder encriptarlas usando AES en modo CBC. Cada nota y cada lista puede ser encriptada de manera independiente y con una contraseña distinta, generado el vector de inicialización y derivando la clave a partir de una contraseña.

App de notas con encriptación - Open source

App de notas con encriptación – Open source

Puedes agregar etiquetas a cada lista y nota, para que puedas filtrarlas más adelante.

Lo mejor de esto es que la app puede ser instalada como una aplicación nativa gracias al poder de las PWA, así que puedes usarla en móviles y dispositivos de escritprio.

Me emocioné tanto con la llegada de SQLite3 a la web con OPFS que hice esta app para aprender Svelte y Tailwind, pero terminé haciendo también la app de cumpleaños y luego experimenté un poco con WASM.

Veamos entonces esta webapp de tareas pendientes totalmente open source.

(más…)

App para calcular edad (cumpleaños) – Gratuita y open source

Aprovechando que SQLite3 ha llegado a los navegadores web, he decidido crear una aplicación web (que puede ser instalada como nativa) simple que muestra la edad de las personas registradas, mostrando:

  • Edad calculada al día de hoy
  • Edad precisa incluyendo segundos
  • Siguiente cumpleaños
  • Tiempo que falta para el próximo cumpleaños
App de cumpleaños - Mostrar personas registradas con edad al día de hoy

App de cumpleaños – Mostrar personas registradas con edad al día de hoy

Esta app también puede servir para mostrar el tiempo que ha transcurrido desde un cierto evento (como un aniversario), solo es cuestión de registrar los datos correctamente.

La app es realmente simple, pero era una webapp que siempre quise hacer y poner a disposición del público, pues es open source.

Está hecha con TypeScript y para los estilos he usado TailwindCSS. Utiliza Workers y SQLite3 como almacenamiento; también se puede convertir en una PWA. Para “compilarla” se usa Vite. (más…)

Tiempo transcurrido con JavaScript – Diferencia entre fechas

Hoy vamos a trabajar con JavaScript para calcular la diferencia entre 2 fechas, es decir, calcular el tiempo que ha transcurrido desde una fecha a otra, ya sea para sacar el tiempo transcurrido desde el pasado hasta hoy, desde hoy al futuro o desde una fecha a otra.

Te voy a enseñar a calcular el tiempo transcurrido de manera precisa y también de la manera en la que la calculamos como humanos.

Los ejemplos aquí mostrados podrán ser usados en el lado del cliente o del lado del servidor con Node.

(más…)

SQLite3 en JavaScript con WebAssembly y OPFS

Anteriormente te he hablado de SQLite en el navegador web, ya sea con Svelte o JavaScript puro. Hoy voy a mostrarte otra cosa: cómo invocar a SQLite3 desde WASM o WebAssembly.

Al final vamos a estar invocando la API de SQLite3 de JS desde WebAssembly. Te enseñaré cómo es mi entorno de trabajo y cómo usar SQLite3 con WebAssembly.

(más…)

Sistema gratuito textil – Gestión de maquiladora

En este artículo voy a presentarte un sistema gratuito para la gestión de una empresa textil donde se confecciona ropa. No es un post engañoso; realmente te enseñaré a descargar un sistema gratis para maquilas que hice hace algún tiempo.

Con este software para maquiladoras gratuito vas a poder gestionar la nómina, operaciones, bultos, empleados, pase de asistencia, bihorarios, abonos, descuentos, cortes, asignación de trabajo a maquileros externos, entre otras cosas.

También vas a tener el reporte de hoja de bihorarios y remanente, así como la posibilidad de imprimir los recibos de nómina de los empleados.

En este post te daré una introducción a los módulos de este sistema y de cómo puedes descargarlo.

(más…)

Instalar PostgreSQL con NSIS

Hace un tiempo te enseñé a crear instaladores de programas para Windows usando NSIS, y te acabo de mostrar cómo instalar PostgreSQL de manera desatendida.

Bien, en este post aprenderás a instalar PostgreSQL en un instalador creado con NSIS, combinando ambas cosas. Será un post muy corto, ya que he explicado ambas cosas por separado.

(más…)