feat: change the theme and the content

This commit is contained in:
Alex Wellnitz
2024-12-22 12:01:07 +01:00
parent 6810a0cb74
commit 389d2db502
205 changed files with 735 additions and 9865 deletions

View File

@@ -1,11 +0,0 @@
+++
title = "Projectes"
sort_by = "weight"
template = "cards.html"
insert_anchor_links = "left"
[extra]
social_media_card = "projects/ca_projects.jpg"
show_reading_time = false
quick_navigation_buttons = true
+++

View File

@@ -1,11 +0,0 @@
+++
title = "Proyectos"
sort_by = "weight"
template = "cards.html"
insert_anchor_links = "left"
[extra]
social_media_card = "projects/es_projects.jpg"
show_reading_time = false
quick_navigation_buttons = true
+++

View File

@@ -1,63 +0,0 @@
+++
title = "dōteki"
description = "Afegeix contingut dinàmic al teu perfil de GitHub amb un sistema intuïtiu de plugins."
weight = 30
[taxonomies]
tags = ["GitHub Actions", "automatització", "Python"]
[extra]
local_image = "projects/doteki/doteki_logo.webp"
social_media_card = "social_cards/projects_doteki.jpg"
canonical_url = "https://osc.garden/ca/projects/doteki/"
add_src_to_code_block = true
+++
**dōteki** actualitza el teu perfil de GitHub automàticament. Afegeix les teves últimes publicacions del blog, la música que escoltes o qualsevol altre contingut dinàmic mitjançant plugins.
![logo de dōteki: un riu passant per un bosc de bambú](https://cdn.jsdelivr.net/gh/welpo/doteki@main/website/static/img/logo.png)
#### [GitHub](https://github.com/welpo/doteki) • [Lloc web](https://doteki.org/) • [Documentació](https://doteki.org/docs/) {.centered-text}
## Com funciona
1. Afegeix marcadors al teu README:
{{ add_src_to_code_block(src="README.md") }}
```md
<!-- blog start -->
<!-- blog end -->
```
2. Configura què hi va:
{{ add_src_to_code_block(src="doteki.toml") }}
```toml
[sections.blog]
plugin = "feed"
url = "https://osc.garden/atom.xml" # Substitueix amb el teu feed.
[sections.last_updated]
plugin = "current_date"
inline = true
```
3. Configura l'[Acció de GitHub](https://github.com/welpo/doteki-action).
Això és tot! El teu README s'actualitzarà automàticament.
## Característiques
- **Sistema de plugins**: Mostra [entrades del blog](https://doteki.org/docs/plugins/feed), [música](https://doteki.org/docs/plugins/lastfm), o [crea el teu propi plugin](https://doteki.org/docs/developer-guide/plugin-standard)
- **Configuració simple**: Un arxiu TOML, una Acció de GitHub
- **Flexible**: Cada plugin té les seves pròpies opcions (ordre, entrades màximes, format…)
- **[Documentació detallada](https://doteki.org/docs/)**: Informació detallada sobre com configurar i utilitzar **dōteki** i els seus plugins. Inclou [instruccions clares per als desenvolupadors](https://doteki.org/docs/developer-guide/) que vulguin contribuir.
## Documentació
Consulta la [documentació](https://doteki.org/docs/) per a:
- [Guia d'inici](https://doteki.org/docs/)
- [Plugins disponibles](https://doteki.org/docs/category/plugins)
- [Desenvolupament de plugins](https://doteki.org/docs/developer-guide/)
- [Opcions de configuració](https://doteki.org/docs/configuration/)

View File

@@ -1,63 +0,0 @@
+++
title = "dōteki"
description = "Añade contenido dinámico a tu perfil de GitHub con un sistema intuitivo de plugins."
weight = 30
[taxonomies]
tags = ["GitHub Actions", "automatización", "Python"]
[extra]
local_image = "projects/doteki/doteki_logo.webp"
social_media_card = "social_cards/projects_doteki.jpg"
canonical_url = "https://osc.garden/es/projects/doteki/"
add_src_to_code_block = true
+++
**dōteki** actualiza tu perfil de GitHub automáticamente. Añade tus últimas publicaciones del blog, la música que escuchas o cualquier otro contenido dinámico mediante plugins.
![logo de dōteki: un río pasando por un bosque de bambú](https://cdn.jsdelivr.net/gh/welpo/doteki@main/website/static/img/logo.png)
#### [GitHub](https://github.com/welpo/doteki) • [Sitio web](https://doteki.org/) • [Documentación](https://doteki.org/docs/) {.centered-text}
## Cómo funciona
1. Añade marcadores a tu README:
{{ add_src_to_code_block(src="README.md") }}
```md
<!-- blog start -->
<!-- blog end -->
```
2. Configura qué va ahí:
{{ add_src_to_code_block(src="doteki.toml") }}
```toml
[sections.blog]
plugin = "feed"
url = "https://osc.garden/atom.xml" # Reemplaza con tu feed.
[sections.last_updated]
plugin = "current_date"
inline = true
```
3. Configura la [Acción de GitHub](https://github.com/welpo/doteki-action).
¡Eso es todo! Tu README se actualizará automáticamente.
## Características
- **Sistema de plugins**: Muestra [entradas del blog](https://doteki.org/docs/plugins/feed), [música](https://doteki.org/docs/plugins/lastfm), o [crea tu propio plugin](https://doteki.org/docs/developer-guide/plugin-standard)
- **Configuración simple**: Un archivo TOML, una Acción de GitHub
- **Flexible**: Cada plugin tiene sus propias opciones (orden, entradas máximas, formato…)
- **[Documentación detallada](https://doteki.org/docs/)**: Información detallada sobre cómo configurar y usar **dōteki** y sus plugins. Incluye [instrucciones claras para los desarrolladores](https://doteki.org/docs/developer-guide/) que quieran contribuir.
## Documentación
Consulta la [documentación](https://doteki.org/docs/) para:
- [Guía de inicio rápido](https://doteki.org/docs/)
- [Plugins disponibles](https://doteki.org/docs/category/plugins)
- [Desarrollo de plugins](https://doteki.org/docs/developer-guide/)
- [Opciones de configuración](https://doteki.org/docs/configuration/)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

View File

@@ -1,33 +0,0 @@
+++
title = "git-sumi"
description = "El linter de missatges de commit no opinat basat en Rust."
weight = 10
[taxonomies]
tags = ["Git", "Rust", "Continuous Integration", "GitHub Actions", "CLI", "automatització"]
[extra]
local_image = "projects/git-sumi/git-sumi_logo.webp"
social_media_card = "social_cards/projects_git-sumi.jpg"
canonical_url = "https://osc.garden/ca/projects/git-sumi/"
+++
**git-sumi** és el linter de missatges de commit no opinat escrit en Rust.
{% wide_container() %}
<video controls src="https://cdn.jsdelivr.net/gh/welpo/git-sumi@main/assets/git-sumi_demo.mp4" title="demo de git-sumi"></video>
{% end %}
#### [GitHub](https://github.com/welpo/git-sumi) • [Lloc web](https://sumi.rs/) • [Documentació](https://sumi.rs/docs/) {.centered-text}
## Característiques principals
- **Regles personalitzables**: Configura regles per a Conventional Commits, límits de longitud, ús de [Gitmoji](https://gitmoji.dev/) i [més](https://sumi.rs/docs/rules).
- **Informe d'errors clar**: Proporciona errors detallats, fent que la correcció sigui senzilla i educativa.
- **Integració senzilla**: Com a binari únic, git-sumi s'integra fàcilment al teu flux de treball. També pots fer servir l'[Acció de GitHub](https://github.com/welpo/git-sumi-action) per validar commits (o títols de PR) sense instal·lar res.
## Bones pràctiques de desenvolupament
- **Cobertura de codi**: 98% de cobertura en tests; un linter ha de ser fiable.
- **[Integració](https://github.com/welpo/git-sumi/blob/main/.github/workflows/ci.yml) i [publicació](https://github.com/welpo/git-sumi/blob/main/.github/workflows/release.yml) contínua**: Fluxos automatitzats per a testing i publicació de binaris multiplataforma a crates.io, PyPI i GitHub releases.
- **Documentació**: [Documentació completa](https://sumi.rs/docs/) amb [guia ràpida](https://sumi.rs/docs/), [exemples](https://sumi.rs/docs/examples), [regles](https://sumi.rs/docs/rules), [integració](https://sumi.rs/docs/integration), [FAQ](https://sumi.rs/docs/faq)...

View File

@@ -1,33 +0,0 @@
+++
title = "git-sumi"
description = "El linter de mensajes de commit no opinado basado en Rust."
weight = 10
[taxonomies]
tags = ["Git", "Rust", "Continuous Integration", "GitHub Actions", "CLI", "automatización"]
[extra]
local_image = "projects/git-sumi/git-sumi_logo.webp"
social_media_card = "social_cards/projects_git-sumi.jpg"
canonical_url = "https://osc.garden/es/projects/git-sumi/"
+++
**git-sumi** es el linter de mensajes de commit no opinado escrito en Rust.
{% wide_container() %}
<video controls src="https://cdn.jsdelivr.net/gh/welpo/git-sumi@main/assets/git-sumi_demo.mp4" title="git-sumi demo"></video>
{% end %}
#### [GitHub](https://github.com/welpo/git-sumi) • [Sitio web](https://sumi.rs/) • [Documentación](https://sumi.rs/docs/) {.centered-text}
## Características principales
- **Reglas personalizables**: Configura reglas para [Conventional Commits](https://www.conventionalcommits.org/), límites de longitud, uso de [Gitmoji](https://gitmoji.dev/) y [más](https://sumi.rs/docs/rules).
- **Reporte de errores claro**: Proporciona errores detallados, haciendo que la corrección sea sencilla y educativa.
- **Integración sencilla**: Al ser único binario, git-sumi se integra fácilmente en tu flujo de trabajo. Puedes usar la [Acción de GitHub](https://github.com/welpo/git-sumi-action) para validar commits (o títulos de PR) sin instalar nada.
## Buenas prácticas de desarrollo
- **Cobertura de código**: 98% de cobertura de código; un linter debe ser robusto.
- **[Integración](https://github.com/welpo/git-sumi/blob/main/.github/workflows/ci.yml) y [publicación](https://github.com/welpo/git-sumi/blob/main/.github/workflows/release.yml) continua**: Flujos automatizados para testing y publicación de binarios multiplataforma en crates.io, PyPI y GitHub releases.
- **Documentación**: [Documentación completa](https://sumi.rs/docs/) con [guía rápida](https://sumi.rs/docs/), [ejemplos](https://sumi.rs/docs/examples), [reglas](https://sumi.rs/docs/rules), [integración](https://sumi.rs/docs/integration), [FAQ](https://sumi.rs/docs/faq)...

View File

@@ -1,33 +0,0 @@
+++
title = "git-sumi"
description = "The non-opinionated Rust-based commit message linter."
weight = 10
[taxonomies]
tags = ["Git", "Rust", "Continuous Integration", "GitHub Actions", "CLI", "automation"]
[extra]
local_image = "projects/git-sumi/git-sumi_logo.webp"
social_media_card = "social_cards/projects_git-sumi.jpg"
canonical_url = "https://osc.garden/projects/git-sumi/"
+++
**git-sumi** is the non-opinionated commit message linter written in Rust.
{% wide_container() %}
<video controls src="https://cdn.jsdelivr.net/gh/welpo/git-sumi@main/assets/git-sumi_demo.mp4" title="git-sumi demo"></video>
{% end %}
#### [GitHub](https://github.com/welpo/git-sumi) • [Website](https://sumi.rs/) • [Documentation](https://sumi.rs/docs/) {.centered-text}
## Main features
- **Customizable rules**: Configure rules to enforce [Conventional Commits](https://www.conventionalcommits.org/), length limits, [Gitmoji](https://gitmoji.dev/) usage, and [more](https://sumi.rs/docs/rules).
- **Clear error reporting**: Provides detailed error reporting, making fixing commit messages straightforward and educational.
- **Seamless integration**: As a single binary, git-sumi easily integrates into your existing workflow with minimal setup. You can even use the [GitHub Action](https://github.com/welpo/git-sumi-action) to lint your commits (or PR titles) without installing anything.
## Development best practices
- **Comprehensive code coverage**: 98% test coverage; linting needs to be reliable.
- **Continuous [integration](https://github.com/welpo/git-sumi/blob/main/.github/workflows/ci.yml) and [deployment](https://github.com/welpo/git-sumi/blob/main/.github/workflows/release.yml)**: Automated workflows for testing and releasing cross-compiled binaries to crates.io, PyPI and GitHub releases.
- **Documentation**: [Comprehensive documentation](https://sumi.rs/docs/) with a [quick start guide](https://sumi.rs/docs/), [examples](https://sumi.rs/docs/examples), [rules](https://sumi.rs/docs/rules), [integration](https://sumi.rs/docs/integration), [FAQ](https://sumi.rs/docs/faq)…

Binary file not shown.

Before

Width:  |  Height:  |  Size: 160 KiB

View File

@@ -1,85 +0,0 @@
+++
title = "nani"
description = "Script Bash per crear URLs públiques a partir d'arxius o text en servidors remots."
weight = 50
[taxonomies]
tags = ["bash", "CLI"]
[extra]
local_image = "projects/nani/nani_logo.webp"
canonical_url = "https://osc.garden/ca/projects/tabi/"
social_media_card = "social_cards/ca_projects_nani.jpg"
+++
Si treballes en un servidor remot, saps que compartir arxius amb altres persones pot ser un procés feixuc. `nani` és un script en Bash dissenyat per simplificar aquesta tasca. Amb una sola comanda, pots convertir arxius locals o URLs en enllaços accessibles, facilitant el procés de compartir directament des del teu servidor.
[![nani logo](nani_logo.webp)](https://github.com/welpo/nani/)
#### [Veure a GitHub](https://github.com/welpo/nani) {.centered-text}
## Característiques clau
- **Tot tipus d'arxius**: gestiona directoris, arxius FLAC, arxius de text i fins i tot URLs a vídeos.
- **Personalitzable**: adapta els ajustos editant l'script o un arxiu de configuració.
- **Notificacions**: notificacions a l'escriptori i integració amb el portaretrats per a una millor experiència.
## Inici ràpid
1. Col·loca `nani` en un directori dins del teu PATH.
2. Fes que l'script sigui executable.
Per a passos d'instal·lació més detallats, [consulta la documentació completa](https://github.com/welpo/nani#-install).
## Ús
```bash
$ nani Ruta/A/foto.png
https://example.com/nani/hjRGLZB.png
```
Compartir un directori mantenint el seu nom original:
```bash
$ nani -o Ruta/A/Directori
https://example.com/nani/Directori.zip
```
Pots configurar diverses opcions a través dels paràmetres. Aquí tens la sortida de `nani --help`:
{% wide_container() %}
```
Usage: nani [options] <infile>
Provides public URL from input.
Input handling:
Directory Will be stored using zip (or symbolic link)
FLAC Can be transcoded to MP3
Text (html, php...) Extension can be set to .txt
Other files New copy/hard link/symbolic link at output directory
URL to video (e.g: youtube) Downloaded using yt-dlp
Other URLs Downloaded using wget
Modify the first lines of the script to change how nani behaves: quiet mode,
enabling/disabling transcoding, length of the string, extension truncation...
Settings and options:
-a, --alias Revert the hard link setting
-c, --cleanup Remove all files on /nani/ except index.html
-h, --help Display this help and exit
-i, --insert Open nano to enter text. Saved in output directory as .txt
-k, --keep Output dir becomes /nani/k/, to set different cleanup rules
-l, --list List files in output directory /nani/
-n, --name Use custom name (e.g. nani -n DesiredName <file>)
-N, --notify Revert the notify option
-o, --original Preserve original file name
-p, --push Send push notification
-q, --quiet Revert the quiet setting
-s, --string Force a certain string length (e.g. nani -s 32 <file>)
-t, --transcode Revert the transcode setting
-x, --xclip Revert the xclip setting
-y, --symbolic Create a symbolic link for files and directories
```
{% end %}

View File

@@ -1,84 +0,0 @@
+++
title = "nani"
description = "Script Bash para crear URLs públicas a partir de archivos o texto en servidores remotos."
weight = 50
[taxonomies]
tags = ["bash", "CLI"]
[extra]
local_image = "projects/nani/nani_logo.webp"
canonical_url = "https://osc.garden/es/projects/tabi/"
social_media_card = "social_cards/es_projects_nani.jpg"
+++
Si trabajas en un servidor remoto, sabrás que compartir archivos con otras personas puede ser un proceso tedioso. `nani` es un script en Bash diseñado para simplificar esta tarea. Con un solo comando, puedes convertir archivos locales en enlaces públicos, facilitando el proceso de compartir directamente desde tu servidor.
[![nani logo](nani_logo.webp)](https://github.com/welpo/nani/)
#### [Ver en GitHub](https://github.com/welpo/nani) {.centered-text}
## Características clave
- **Todo tipo de archivos**: maneja directorios, archivos FLAC, archivos de texto e incluso URLs a vídeos.
- **Personalizable**: adapta los ajustes editando el script o un archivo de configuración.
- **Notificaciones**: notificaciones en el escritorio e integración con el portapapeles para una mejor experiencia.
## Inicio rápido
1. Coloca `nani` en un directorio dentro de tu PATH.
2. Haz el script ejecutable.
Para pasos de instalación más detallados, [consulta la documentación completa](https://github.com/welpo/nani#-install).
## Uso
```bash
$ nani Ruta/A/foto.png
https://example.com/nani/hjRGLZB.png
```
Compartir un directorio manteniendo su nombre original:
```bash
$ nani -o Ruta/A/Directorio
https://example.com/nani/Directorio.zip
```
Puedes configurar varias opciones a través de los parámetros. Aquí tienes la salida de `nani` --help:
{% wide_container() %}
```
Usage: nani [options] <infile>
Provides public URL from input.
Input handling:
Directory Will be stored using zip (or symbolic link)
FLAC Can be transcoded to MP3
Text (html, php...) Extension can be set to .txt
Other files New copy/hard link/symbolic link at output directory
URL to video (e.g: youtube) Downloaded using yt-dlp
Other URLs Downloaded using wget
Modify the first lines of the script to change how nani behaves: quiet mode,
enabling/disabling transcoding, length of the string, extension truncation...
Settings and options:
-a, --alias Revert the hard link setting
-c, --cleanup Remove all files on /nani/ except index.html
-h, --help Display this help and exit
-i, --insert Open nano to enter text. Saved in output directory as .txt
-k, --keep Output dir becomes /nani/k/, to set different cleanup rules
-l, --list List files in output directory /nani/
-n, --name Use custom name (e.g. nani -n DesiredName <file>)
-N, --notify Revert the notify option
-o, --original Preserve original file name
-p, --push Send push notification
-q, --quiet Revert the quiet setting
-s, --string Force a certain string length (e.g. nani -s 32 <file>)
-t, --transcode Revert the transcode setting
-x, --xclip Revert the xclip setting
-y, --symbolic Create a symbolic link for files and directories
```
{% end %}

View File

@@ -1,85 +0,0 @@
+++
title = "nani"
description = "Bash script to create public URLs from files or text on remote servers."
weight = 50
[taxonomies]
tags = ["bash", "CLI"]
[extra]
local_image = "projects/nani/nani_logo.webp"
canonical_url = "https://osc.garden/projects/tabi/"
social_media_card = "social_cards/projects_nani.jpg"
+++
If you're working on a remote server, you know that sharing files with others can often involve multiple steps. `nani` is a Bash script designed to streamline this process. By executing a single command, you can convert local files or URLs into accessible links, allowing for easier sharing right from your server.
[![nani logo](nani_logo.webp)](https://github.com/welpo/nani/)
#### [View on GitHub](https://github.com/welpo/nani) {.centered-text}
## Key Features
- **Multiple File Types**: Handles directories, FLAC files, text files, and even URLs to videos.
- **Customisable**: Tailor settings via a config file or runtime flags.
- **Notifications**: Desktop notifications and clipboard integration for a better experience.
## Quick Start
1. Place `nani` in a directory within your PATH.
2. Make the script executable.
For detailed installation steps, [read the full documentation](https://github.com/welpo/nani#-install).
## Usage
```bash
$ nani Path/To/picture.png
https://example.com/nani/hjRGLZB.png
```
**Share a directory keeping its original name**:
```bash
$ nani -o Path/To/Directory
https://example.com/nani/Directory.zip
```
Additional control is available through flags. Here's the output of `nani --help`:
{% wide_container() %}
```
Usage: nani [options] <infile>
Provides public URL from input.
Input handling:
Directory Will be stored using zip (or symbolic link)
FLAC Can be transcoded to MP3
Text (html, php...) Extension can be set to .txt
Other files New copy/hard link/symbolic link at output directory
URL to video (e.g: youtube) Downloaded using yt-dlp
Other URLs Downloaded using wget
Modify the first lines of the script to change how nani behaves: quiet mode,
enabling/disabling transcoding, length of the string, extension truncation...
Settings and options:
-a, --alias Revert the hard link setting
-c, --cleanup Remove all files on /nani/ except index.html
-h, --help Display this help and exit
-i, --insert Open nano to enter text. Saved in output directory as .txt
-k, --keep Output dir becomes /nani/k/, to set different cleanup rules
-l, --list List files in output directory /nani/
-n, --name Use custom name (e.g. nani -n DesiredName <file>)
-N, --notify Revert the notify option
-o, --original Preserve original file name
-p, --push Send push notification
-q, --quiet Revert the quiet setting
-s, --string Force a certain string length (e.g. nani -s 32 <file>)
-t, --transcode Revert the transcode setting
-x, --xclip Revert the xclip setting
-y, --symbolic Create a symbolic link for files and directories
```
{% end %}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 63 KiB

View File

@@ -1,33 +0,0 @@
+++
title = "ラム (ramu)"
description = "Una aplicació web per practicar la lectura i comprensió auditiva de nombres en japonès."
weight = 35
[taxonomies]
tags = ["Japonès", "interactiu", "web app", "web", "PWA", "JavaScript"]
[extra]
local_image = "projects/ramu/ramu_logo.webp"
canonical_url = "https://osc.garden/ca/projects/ramu/"
social_media_card = "social_cards/projects_ramu.jpg"
+++
<ruby><rt>ra</rt><rt>mu</rt></ruby> és una aplicació web progressiva per practicar la lectura i comprensió auditiva de nombres en japonès. El nom reflecteix el seu propòsit: aconseguir accès aleatori (RAM; memòria d'accés aleatori) als nombres, en contraposició a una memòria seqüencial (1, 2, 3…).
{% wide_container() %}
<video controls src="media/ラム_demo.mp4" title="demo de ramu"></video>
{% end %}
#### [Prova-la ara](https://ramu.osc.garden) • [GitHub](https://github.com/welpo/ramu) • [Article](https://osc.garden/ca/blog/ramu-japanese-numbers-practice-web-app/) {.centered-text}
## Característiques
- Pràctica amb nombres aràbics (123…) i japonesos (一二三…)
- Dos modes de pràctica: lectura i comprensió auditiva
- Rangs numèrics configurables (des de 0 fins a més de 100.000.000)
- Pràctica de comptadors (個、本、匹…)
- Funciona sense connexió com a aplicació web progressiva
- Control complet per teclat (<kbd>espai</kbd>/<kbd></kbd> per següent, <kbd>esc</kbd> per aturar)
- Compatible amb lectors de pantalla per a la pràctica amb nombres aràbics
[![targeta social de ramu](social_cards/projects_ramu.jpg)](https://ramu.osc.garden)

View File

@@ -1,33 +0,0 @@
+++
title = "ラム (ramu)"
description = "Una aplicación web para practicar la lectura y comprensión auditiva de números en japonés."
weight = 35
[taxonomies]
tags = ["Japonés", "interactivo", "web app", "web", "PWA", "JavaScript"]
[extra]
local_image = "projects/ramu/ramu_logo.webp"
canonical_url = "https://osc.garden/es/projects/ramu/"
social_media_card = "social_cards/projects_ramu.jpg"
+++
<ruby><rt>ra</rt><rt>mu</rt></ruby> es una aplicación web progresiva para practicar la lectura y comprensión auditiva de números en japonés. El nombre refleja su propósito: lograr acceso aleatorio (RAM; memoria de acceso aleatorio) a los números, en contraposición a una memoria secuencial (1, 2, 3…).
{% wide_container() %}
<video controls src="media/ラム_demo.mp4" title="demo de ramu"></video>
{% end %}
#### [Pruébala ahora](https://ramu.osc.garden) • [GitHub](https://github.com/welpo/ramu) • [Artículo](https://osc.garden/es/blog/ramu-japanese-numbers-practice-web-app/) {.centered-text}
## Características
- Práctica con números arábigos (123…) y japoneses (一二三…)
- Dos modos de práctica: lectura y comprensión auditiva
- Rangos numéricos configurables (desde 0 hasta más de 100.000.000)
- Práctica de contadores (個、本、匹…)
- Funciona sin conexión como aplicación web progresiva
- Control por teclado (<kbd>espacio</kbd>/<kbd></kbd> para siguiente, <kbd>esc</kbd> para detener)
- Compatible con lectores de pantalla para la práctica con números arábigos
[![tarjeta social de ramu](social_cards/projects_ramu.jpg)](https://ramu.osc.garden)

View File

@@ -1,33 +0,0 @@
+++
title = "ラム (ramu)"
description = "A web app to practice reading and listening to Japanese numbers."
weight = 35
[taxonomies]
tags = ["Japanese", "interactive", "web app", "web", "PWA", "JavaScript"]
[extra]
local_image = "projects/ramu/ramu_logo.webp"
canonical_url = "https://osc.garden/projects/ramu/"
social_media_card = "social_cards/projects_ramu.jpg"
+++
<ruby><rt>ra</rt><rt>mu</rt></ruby> is a Progressive Web App to practice reading and listening to Japanese numbers. The name reflects its purpose: achieving RAM (Random Access Memory) to numbers, as opposed to sequential memory (1, 2, 3…).
{% wide_container() %}
<video controls src="media/ラム_demo.mp4" title="ramu demo"></video>
{% end %}
#### [Try it now](https://ramu.osc.garden) • [GitHub](https://github.com/welpo/ramu) • [Blog post](https://osc.garden/blog/ramu-japanese-numbers-practice-web-app/) {.centered-text}
## Features
- Practice with both Arabic (123…) and Japanese (一二三…) numerals
- Two practice modes: reading and listening comprehension
- Configurable number ranges (from 0 to over 100,000,000)
- Counter word practice (個、本、匹…)
- Works offline as a Progressive Web App
- Full keyboard control (<kbd>space</kbd>/<kbd></kbd> for next, <kbd>esc</kbd> to stop)
- Screen reader friendly for Arabic numeral practice
[![ramu social media card](social_cards/projects_ramu.jpg)](https://ramu.osc.garden)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 167 KiB

View File

@@ -1,29 +0,0 @@
+++
title = "Calculadora de royalties de streaming"
description = "Una eina per calcular els royalties de streaming per a músics."
weight = 45
[taxonomies]
tags = ["música", "interactiu", "web app", "web", "JavaScript", "anàlisi de dades"]
[extra]
local_image = "projects/streaming-royalties-calculator/streaming-royalties-calculator_logo.webp"
canonical_url = "https://osc.garden/ca/projects/streaming-royalties-calculator/"
social_media_card = "social_cards/ca_projects_streaming_royalties_calculator.jpg"
+++
La Calculadora de royalties de streaming permet als músics estimar els seus guanys de plataformes com Spotify, Apple Music, Instagram, TikTok i més.
Pots introduir una quantitat objectiu de guanys per veure quantes reproduccions es necessiten a cada plataforma, o introduir el nombre de reproduccions per servei per calcular les royalties esperades. Aquí tens una captura de pantalla:
<a href="https://osc.garden/ca/royalties-calculator/" target="_blank">
{{ dual_theme_image(light_src="https://cdn.jsdelivr.net/gh/welpo/osc.garden@main/content/blog/data-analysis-music-streaming/img/calculator_light.ca.webp", dark_src="https://cdn.jsdelivr.net/gh/welpo/osc.garden@main/content/blog/data-analysis-music-streaming/img/calculator_dark.ca.webp" alt="Calculadora de royalties de streaming") }}
</a>
#### [Prova-la!](https://osc.garden/ca/royalties-calculator/) • [Codi font (JavaScript)](https://github.com/welpo/osc.garden/blob/main/content/pages/royalties-calculator/js/streamsMonthCalculator.js) {.centered-text}
## Característiques principals
- **Dades precises**: Basades en l'últim any de [les meves pròpies dades de royalties](https://osc.garden/ca/blog/data-analysis-music-streaming/).
- **Múltiples plataformes**: Inclou Tidal, Spotify, Apple Music, Facebook, Deezer, TikTok i més.
- **Modes de càlcul**: Utilitza la taxa de pagament mitjana, mediana, mínima o màxima per estimar els guanys.

View File

@@ -1,29 +0,0 @@
+++
title = "Calculadora de royalties de streaming"
description = "Una herramienta para calcular los royalties de streaming para músicos."
weight = 45
[taxonomies]
tags = ["música", "interactivo", "web app", "web", "JavaScript", "análisis de datos"]
[extra]
local_image = "projects/streaming-royalties-calculator/streaming-royalties-calculator_logo.webp"
canonical_url = "https://osc.garden/es/projects/streaming-royalties-calculator/"
social_media_card = "social_cards/es_projects_streaming_royalties_calculator.jpg"
+++
La Calculadora de royalties de streaming permite a los músicos estimar sus ganancias de plataformas como Spotify, Apple Music, Instagram, TikTok y más.
Puedes introducir una cantidad objetivo de ganancias para ver cuántas reproducciones se necesitan en cada plataforma, o introducir el número de reproducciones por servicio para calcular las royalties esperadas. Aquí tienes una captura de pantalla:
<a href="https://osc.garden/es/royalties-calculator/" target="_blank">
{{ dual_theme_image(light_src="https://cdn.jsdelivr.net/gh/welpo/osc.garden@main/content/blog/data-analysis-music-streaming/img/calculator_light.es.webp", dark_src="https://cdn.jsdelivr.net/gh/welpo/osc.garden@main/content/blog/data-analysis-music-streaming/img/calculator_dark.es.webp" alt="Calculadora de royalties de streaming") }}
</a>
#### [¡Pruébala!](https://osc.garden/es/royalties-calculator/) • [Código fuente (JavaScript)](https://github.com/welpo/osc.garden/blob/main/content/pages/royalties-calculator/js/streamsMonthCalculator.js) {.centered-text}
## Características principales
- **Datos precisos**: Basada en el último año de [mis propios datos de royalties](https://osc.garden/es/blog/data-analysis-music-streaming/).
- **Múltiples plataformas**: Incluye Tidal, Spotify, Apple Music, Facebook, Deezer, TikTok y más.
- **Modos de cálculo**: Utiliza la tasa de pago media, mediana, mínima o máxima para estimar las ganancias.

View File

@@ -1,29 +0,0 @@
+++
title = "Streaming Royalties Calculator"
description = "A tool to calculate streaming royalties for musicians."
weight = 45
[taxonomies]
tags = ["music", "interactive", "web app", "web", "JavaScript", "data analysis"]
[extra]
local_image = "projects/streaming-royalties-calculator/streaming-royalties-calculator_logo.webp"
canonical_url = "https://osc.garden/projects/streaming-royalties-calculator/"
social_media_card = "social_cards/projects_streaming_royalties_calculator.jpg"
+++
The Streaming Royalties Calculator allows musicians to estimate their earnings from platforms like Spotify, Apple Music, Instagram, TikTok, and more.
You can either input a target earnings amount to see how many streams are needed on each platform, or enter the number of streams per service to calculate the expected royalties. Here's a screenshot:
<a href="https://osc.garden/royalties-calculator/" target="_blank">
{{ dual_theme_image(light_src="https://cdn.jsdelivr.net/gh/welpo/osc.garden@main/content/blog/data-analysis-music-streaming/img/calculator_light.webp", dark_src="https://cdn.jsdelivr.net/gh/welpo/osc.garden@main/content/blog/data-analysis-music-streaming/img/calculator_dark.webp" alt="Streaming Royalties Calculator") }}
</a>
#### [Try it!](https://osc.garden/royalties-calculator/) • [JavaScript Source](https://github.com/welpo/osc.garden/blob/main/content/pages/royalties-calculator/js/streamsMonthCalculator.js) {.centered-text}
## Main Features
- **Accurate data**: Based on the last year of [my own royalties data](https://osc.garden/blog/data-analysis-music-streaming/).
- **Multiple platforms**: Includes Tidal, Spotify, Apple Music, Facebook, Deezer, TikTok, and more.
- **Calculation modes**: Use the mean, median, minimum or maximum values to estimate the earnings.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.9 KiB

View File

@@ -1,70 +0,0 @@
+++
title = "tabi"
description = "Un tema de Zola ràpid, lleuger i modern amb suport multilingüe."
weight = 40
[taxonomies]
tags = ["web", "JavaScript"]
[extra]
local_image = "projects/tabi/tabi.webp"
canonical_url = "https://osc.garden/ca/projects/tabi/"
social_media_card = "social_cards/ca_projects_tabi.jpg"
+++
[**tabi**](https://github.com/welpo/tabi) és un tema modern i ric en funcionalitat per a [Zola](https://www.getzola.org/), un generador de llocs web estàtics molt ràpid.
{{ full_width_image(src="https://cdn.jsdelivr.net/gh/welpo/tabi@main/light_dark_screenshot.png", alt="Modes clar i fosc de tabi") }}
#### [Veure a GitHub](https://github.com/welpo/tabi) • [Demo i documentación](https://welpo.github.io/tabi/ca/) {.centered-text}
## Característiques
- [Estableix qualsevol idioma com a predeterminat](https://welpo.github.io/tabi/ca/blog/faq-languages/#com-estableixo-la-llengua-predeterminada-del-meu-lloc). Configura el teu lloc en xinès, espanyol, francès, hindi… o qualsevol [altre idioma compatible](https://welpo.github.io/tabi/ca/blog/faq-languages/#quines-llengues-admet-tabi). La interfície del tema es traduirà en conseqüència.
- [Integració amb repositoris remots](https://welpo.github.io/tabi/ca/blog/mastering-tabi-settings#integracio-amb-repositoris-git) a GitHub, GitLab, Gitea i Codeberg per a l'historial de commits i mostrar el codi font del lloc.
- Tema clar i fosc. S'adapta a la configuració del sistema operatiu, amb un interruptor a la barra de navegació.
- [Suport multilingüe complet](https://welpo.github.io/tabi/ca/blog/faq-languages/#com-gestiona-tabi-el-suport-multilingue). Afegeix tants idiomes com vulguis i deixa que els teus usuaris triin amb el selector d'idioma.
- [Suport per a sèries](https://welpo.github.io/tabi/ca/blog/series/) per crear contingut seqüencial com tutorials, cursos i històries multipart.
- Puntuació perfecta en Lighthouse (Rendiment, Accessibilitat, Millors Pràctiques i SEO).
- Suport per a [diagrames de Mermaid](https://welpo.github.io/tabi/ca/blog/shortcodes/#diagrames-de-mermaid) per a crear diagrames i gràfics amb text.
- Ressaltat de sintaxi de codi amb colors basats en [Catppuccin](https://github.com/catppuccin/catppuccin) Frappé.
- Suport per a [comentaris usant giscus, utterances, Hyvor Talk o Isso](https://welpo.github.io/tabi/ca/blog/comments/).
- [Cerca local](https://welpo.github.io/tabi/ca/blog/mastering-tabi-settings/#cerca) amb una interfície accessible i multilingüe.
- Tot el JavaScript es pot [deshabilitar completament](https://welpo.github.io/tabi/ca/blog/javascript/).
- [Codificació de correu](https://welpo.github.io/tabi/ca/blog/mastering-tabi-settings/#correu-electronic-codificat) per a protecció contra spam.
- [Mapa del lloc estilitzat i llegible per humans](https://welpo.github.io/tabi/sitemap.xml).
- [Capçaleres de seguretat personalitzables](https://welpo.github.io/tabi/ca/blog/security/).
- [Feed Atom estilitzat i llegible per humans](https://welpo.github.io/tabi/ca/atom.xml).
- [Enllaços de retrocés per a notes al peu](https://welpo.github.io/tabi/ca/blog/mastering-tabi-settings/#enllacos-de-retorn-a-les-notes-a-peu-de-pagina).
- [Taula de continguts personalitzable](https://welpo.github.io/tabi/ca/blog/toc/).
- [Avís de drets d'autor personalitzat](https://welpo.github.io/tabi/ca/blog/mastering-tabi-settings/#copyright).
- [Botó de copiar per a blocs de codi](https://welpo.github.io/tabi/ca/blog/mastering-tabi-settings/#boto-de-copiar-en-blocs-de-codi).
- [URL canòniques personalitzables](https://welpo.github.io/tabi/ca/blog/mastering-tabi-settings/#url-canonica).
- [Targetes per a xarxes socials](https://welpo.github.io/tabi/ca/blog/mastering-tabi-settings/#targetes-per-a-xarxes-socials).
- [Botons de navegació ràpida](https://welpo.github.io/tabi/ca/blog/mastering-tabi-settings/#botons-de-navegacio-rapida).
- [Shortcodes personalitzats](https://welpo.github.io/tabi/ca/blog/shortcodes/).
- [Skins personalitzables](https://welpo.github.io/tabi/ca/blog/customise-tabi/).
- [Publicacions fixades](https://welpo.github.io/tabi/ca/blog/mastering-tabi-settings/#fixar-entrades).
- [Pàgina de projectes](https://welpo.github.io/tabi/ca/projects/).
- Disseny responsive.
- Suport de [KaTeX](https://katex.org/).
- [Enllaços socials](https://welpo.github.io/tabi/ca/blog/mastering-tabi-settings/#icones-de-xarxes-socials).
- [Pàgina d'arxiu](https://welpo.github.io/tabi/ca/archive/).
- [Etiquetes](https://welpo.github.io/tabi/ca/blog/mastering-tabi-settings/#etiquetes).
## Pràctiques de desenvolupament
- **[Conventional Commits](https://www.conventionalcommits.org) i [Gitmoji](https://gitmoji.dev/)**: els missatges de commit segueixen formats estandarditzats per facilitar la llegibilitat.
- **Seguiment d'incidències**: cada error o nova funcionalitat té el seu propi tiquet, que s'enllaça amb els commits de codi i PRs o problemes relacionats.
- **Comentaris detallats**: els tiquets es documenten amb imatges, vídeos i descripcions detallades per facilitar una comunicació i resolució de problemes efectives.
- **Referències creuades**: enllacem tots els tiquets amb els commits de codi, pull requests o problemes relacionats per a una traçabilitat completa.
## Evolució del projecte
**tabi** va néixer com a disseny per al meu lloc web personal, [osc.garden](https://osc.garden). Malgrat les seves arrels personals, des del principi es van implementar bones pràctiques per assegurar la qualitat i la mantenibilitat. Des d'aleshores, el tema ha aconseguit atraure una comunitat activa de col·laboradors a GitHub.
## Inicia el teu recorregut com a escriptor amb tabi
Tens alguna cosa a dir. Potser vols parlar sobre com els lingüistes encara no han acordat una [definició de "paraula"](https://ca.wikipedia.org/wiki/Mot), o sobre la teva experiència explorant els diferents [palos del flamenc](https://ca.wikipedia.org/wiki/Estils_flamencs), o de com vas aconseguir resoldre un error d'un projecte de codi obert popular.
**tabi** t'ofereix la base ideal per al teu espai d'escriptura, permetent-te centrar-te en les teves paraules mentre Zola i tabi s'encarreguen de l'aspecte tècnic. Submergeix-te en el món dels blogs amb un sistema que fa que cada publicació sigui un plaer escriure i llegir. La teva veu té valor; comparteix-la amb el món.

View File

@@ -1,70 +0,0 @@
+++
title = "tabi"
description = "Un tema de Zola rápido, ligero y moderno con soporte multilingüe."
weight = 40
[taxonomies]
tags = ["web", "JavaScript"]
[extra]
local_image = "projects/tabi/tabi.webp"
canonical_url = "https://osc.garden/es/projects/tabi/"
social_media_card = "social_cards/es_projects_tabi.jpg"
+++
[**tabi**](https://github.com/welpo/tabi) es un tema moderno y rico en funcionalidad para [Zola](https://www.getzola.org/), un generador de sitios web estáticos muy rápido.
{{ full_width_image(src="https://cdn.jsdelivr.net/gh/welpo/tabi@main/light_dark_screenshot.png", alt="Modos claro y oscuro de tabi") }}
#### [Ver en GitHub](https://github.com/welpo/tabi) • [Demo y documentación](https://welpo.github.io/tabi/es/) {.centered-text}
## Características
- [Establece cualquier idioma como predeterminado](https://welpo.github.io/tabi/es/blog/faq-languages/#como-establezco-el-idioma-predeterminado-de-mi-sitio). Configura tu sitio en chino, español, francés, hindi… o cualquier [otro idioma compatible](https://welpo.github.io/tabi/es/blog/faq-languages/#que-idiomas-admite-tabi). La interfaz del tema se traducirá en consecuencia.
- [Integración con repositorios remotos](https://welpo.github.io/tabi/es/blog/mastering-tabi-settings/#integracion-con-repositorios-git) en GitHub, GitLab, Gitea y Codeberg para el historial de commits y mostrar el código fuente del sitio.
- [Soporte multilingüe completo](https://welpo.github.io/tabi/es/blog/faq-languages/#como-gestiona-tabi-el-soporte-multilingue). Añade tantos idiomas como desees y deja que tus usuarios elijan con un selector de idioma.
- Tema claro y oscuro. Se adapta a la configuración del sistema operativo, con un interruptor en la barra de navegación.
- [Soporte para series](https://welpo.github.io/tabi/es/blog/series/) para crear contenido secuencial como tutoriales, cursos e historias en varias partes.
- Puntuación perfecta en Lighthouse (Rendimiento, Accesibilidad, Mejores Prácticas y SEO).
- Soporte para [diagramas de Mermaid](https://welpo.github.io/tabi/es/blog/shortcodes/#diagramas-de-mermaid) para crear diagramas y gráficos con texto.
- Resaltado de sintaxis de código con colores basados en [Catppuccin](https://github.com/catppuccin/catppuccin) Frappé.
- Soporte para [comentarios usando giscus, utterances, Hyvor Talk o Isso](https://welpo.github.io/tabi/es/blog/comments/).
- Todo el JavaScript se puede [deshabilitar completamente](https://welpo.github.io/tabi/es/blog/javascript/).
- [Búsqueda local](https://welpo.github.io/tabi/es/blog/mastering-tabi-settings/#busqueda) con una interfaz accesible y multilingüe.
- [Codificación de correo](https://welpo.github.io/tabi/es/blog/mastering-tabi-settings/#correo-electronico-codificado) para protección contra spam.
- [Mapa de sitio web estilizado y legible por humanos](https://welpo.github.io/tabi/sitemap.xml).
- [Feed de Atom estilizado y legible por humanos](https://welpo.github.io/tabi/es/atom.xml).
- [Aviso de derechos de autor personalizado](https://welpo.github.io/tabi/es/blog/mastering-tabi-settings/#copyright).
- [Cabeceras de seguridad personalizables](https://welpo.github.io/tabi/es/blog/security/).
- [Botón de copiar para bloques de código](https://welpo.github.io/tabi/es/blog/mastering-tabi-settings/#boton-de-copiar-en-bloques-de-codigo).
- [Enlaces de retroceso para notas al pie](https://welpo.github.io/tabi/es/blog/mastering-tabi-settings/#enlaces-de-retorno-en-notas-al-pie).
- [Tabla de contenidos personalizable](https://welpo.github.io/tabi/es/blog/toc/).
- [URL canónicas personalizables](https://welpo.github.io/tabi/es/blog/mastering-tabi-settings/#url-canonica).
- [Botones de navegación rápida](https://welpo.github.io/tabi/es/blog/mastering-tabi-settings/#botones-de-navegacion-rapida).
- [Tarjetas para redes sociales](https://welpo.github.io/tabi/es/blog/mastering-tabi-settings/#tarjetas-para-redes-sociales).
- [Shortcodes personalizados](https://welpo.github.io/tabi/es/blog/shortcodes/).
- [Skins personalizables](https://welpo.github.io/tabi/es/blog/customise-tabi/).
- [Publicaciones fijadas](https://welpo.github.io/tabi/es/blog/mastering-tabi-settings/#fijar-publicaciones).
- [Página de proyectos](https://welpo.github.io/tabi/es/projects/).
- Diseño responsive.
- Soporte de [KaTeX](https://katex.org/).
- [Página de archivo](https://welpo.github.io/tabi/es/archive/).
- [Enlaces sociales](https://welpo.github.io/tabi/es/blog/mastering-tabi-settings/#iconos-de-redes-sociales).
- [Etiquetas](https://welpo.github.io/tabi/es/blog/mastering-tabi-settings/#etiquetas).
## Prácticas de desarrollo
- **[Conventional Commits](https://www.conventionalcommits.org) y [Gitmoji](https://gitmoji.dev/)**: los mensajes de commit siguen formatos estandarizados para mejorar la legibilidad.
- **Seguimiento de problemas**: cada error o nueva funcionalidad tiene su propio ticket, que se vincula a los commits de código y PRs o problemas relacionados.
- **Comentarios detallados**: los tickets se documentan con imágenes, vídeos y descripciones detalladas para facilitar una comunicación y resolución de problemas efectivas.
- **Referencias cruzadas**: enlazamos todos los tickets con los commits de código, pull requests o problemas relacionados para una rastreabilidad completa.
## Evolución del proyecto
**tabi** nació como diseño para mi sitio personal, [osc.garden](https://osc.garden/es/). A pesar de sus raíces personales, desde el principio se implementaron buenas prácticas para asegurar la calidad y mantenibilidad. Desde entonces, el tema ha logrado atraer a una comunidad activa de contribuyentes en GitHub.
## Empieza tu aventura escribiendo con tabi
Tienes algo que decir. Tal vez se trate de cómo los lingüistas aún no han acordado una [definición de "palabra"](https://es.wikipedia.org/wiki/Palabra), o sobre tu experiencia explorando los diferentes [palos del flamenco](https://es.wikipedia.org/wiki/Flamenco#Palos), o de cómo lograste resolver un fallo de un proyecto de código abierto popular.
**tabi** te ofrece la base ideal para tu espacio de escritura, permitiéndote centrarte en tus palabras mientras Zola y tabi se encargan del aspecto técnicos. Sumérgete en el mundo de los blogs con un sistema que hace que cada publicación sea un placer escribir y leer. Tu voz tiene valor; compártela con el mundo.

View File

@@ -1,70 +0,0 @@
+++
title = "tabi"
description = "A feature-rich modern Zola theme with first-class multi-language support."
weight = 40
[taxonomies]
tags = ["web", "JavaScript"]
[extra]
local_image = "projects/tabi/tabi.webp"
social_media_card = "social_cards/projects_tabi.jpg"
+++
[**tabi**](https://github.com/welpo/tabi) is a modern, feature-rich theme for [Zola](https://www.getzola.org/), a fast static site generator.
{{ full_width_image(src="https://cdn.jsdelivr.net/gh/welpo/tabi@main/light_dark_screenshot.png", alt="tabi light and dark mode") }}
#### [View on GitHub](https://github.com/welpo/tabi) • [Demo & Documentation](https://welpo.github.io/tabi/) {.centered-text}
## Features
- [Set any language as default](https://welpo.github.io/tabi/blog/faq-languages/#how-do-i-set-a-default-language-for-my-site). Set your base site to Chinese, Spanish, French, Hindi… or any [other supported language](https://welpo.github.io/tabi/blog/faq-languages/#what-languages-does-tabi-support). The theme's interface will be translated accordingly.
- [Integration with remote repositories](https://welpo.github.io/tabi/blog/mastering-tabi-settings/#git-repository-integration) on GitHub, GitLab, Gitea & Codeberg for commit history and showing the site source.
- [Series support](https://welpo.github.io/tabi/blog/series/) for creating sequential content like tutorials, courses, and multi-part stories.
- Dark and light themes. Defaults to the OS setting, with a switcher in the navigation bar.
- Thorough documentation. See [Mastering tabi Settings: A Comprehensive Guide](https://welpo.github.io/tabi/blog/mastering-tabi-settings/).
- Perfect Lighthouse score (Performance, Accessibility, Best Practices and SEO).
- [Comprehensive multi-language support](https://welpo.github.io/tabi/blog/faq-languages/#how-does-tabi-handle-multilingual-support). Add as many languages as you wish.
- Support for [comments using giscus, utterances, Hyvor Talk, or Isso](https://welpo.github.io/tabi/blog/comments/).
- Code syntax highlighting with colours based on [Catppuccin](https://github.com/catppuccin/catppuccin) Frappé.
- [Mermaid support](https://welpo.github.io/tabi/blog/shortcodes/#mermaid-diagrams) to create diagrams and charts with text.
- [Local search](https://welpo.github.io/tabi/blog/mastering-tabi-settings/#search) with an accessible, multi-lingual interface.
- [Custom Twitter card](https://welpo.github.io/tabi/blog/mastering-tabi-settings/#social-media-cards) and automatic Open Graph tags.
- [KaTeX](https://katex.org/) support for mathematical notation.
- [Stylized and human readable Atom feed](https://welpo.github.io/tabi/atom.xml).
- [Stylized and human readable sitemap](https://welpo.github.io/tabi/sitemap.xml).
- [Mail encoding](https://welpo.github.io/tabi/blog/mastering-tabi-settings/#encoded-email) for spam protection.
- All JavaScript can be [fully disabled](https://welpo.github.io/tabi/blog/javascript/).
- [Customizable Table of Contents](https://welpo.github.io/tabi/blog/toc/).
- [Customizable secure headers](https://welpo.github.io/tabi/blog/security/).
- [Copy button for code blocks](https://welpo.github.io/tabi/blog/mastering-tabi-settings/#copy-button-on-code-blocks).
- [Quick navigation buttons](https://welpo.github.io/tabi/blog/mastering-tabi-settings/#quick-navigation-buttons).
- [Custom copyright notice](https://welpo.github.io/tabi/blog/mastering-tabi-settings/#copyright).
- [Custom canonical URLs](https://welpo.github.io/tabi/blog/mastering-tabi-settings/#canonical-url).
- [Customizable skins](https://welpo.github.io/tabi/blog/customise-tabi/).
- [Custom shortcodes](https://welpo.github.io/tabi/blog/shortcodes/).
- [Social media cards](https://welpo.github.io/tabi/blog/mastering-tabi-settings/#social-media-cards).
- Responsive design.
- [Projects page](https://welpo.github.io/tabi/projects/).
- [Archive page](https://welpo.github.io/tabi/archive/).
- [Pinned posts](https://welpo.github.io/tabi/blog/mastering-tabi-settings/#pinning-posts).
- [Social links](https://welpo.github.io/tabi/blog/mastering-tabi-settings/#social-media-icons).
- [Tags](https://welpo.github.io/tabi/blog/mastering-tabi-settings/#tags).
## Development Practices
- **[Conventional Commits](https://www.conventionalcommits.org) & [Gitmoji](https://gitmoji.dev/)**: Commit messages follow standardised formats to enhance readability.
- **Issue Tracking**: Each bug or new feature has its dedicated ticket, which is linked to any consequent code commits and related PRs or issues.
- **Comprehensive Commentary**: Tickets are documented with images, videos, and detailed descriptions to facilitate effective communication and problem-solving.
- **Cross-Referencing**: We link all tickets to the relevant code commits, pull requests, or related issues for complete traceability.
## Project Evolution
**tabi** was originally designed for my personal website, [osc.garden](https://osc.garden). Despite its origins for personal use, best practices were implemented from the outset to ensure quality and maintainability. The theme has since grown to attract a vibrant community of contributors on GitHub.
## Start Your Writing Journey with tabi
You have something to say. Perhaps it's about how linguists haven't agreed on a [definition of "word"](https://en.wikipedia.org/wiki/Word) yet, or about your journey exploring the different [flamenco palos](https://en.wikipedia.org/wiki/Palo_(flamenco)), or about how you managed to solve a bug in a popular open-source project.
**tabi** provides the ideal foundation for your writing space, letting you focus on your words while Zola and tabi take care of the technical side. Step into the world of blogging with a system that makes each post a joy to write and to read. Your voice has value—share it with the world.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

View File

@@ -1,51 +0,0 @@
+++
title = "ずつ (zutsu)"
description = "Una aplicació minimalista i privada de gestió de tasques."
weight = 32
[taxonomies]
tags = ["interactiu", "productivitat", "web app", "web", "JavaScript"]
[extra]
local_image = "projects/zutsu/zutsu_logo.webp"
canonical_url = "https://osc.garden/ca/projects/zutsu/"
social_media_card = "social_cards/projects_zutsu.jpg"
+++
{% wide_container() %}
<video controls src="https://cdn.jsdelivr.net/gh/welpo/zutsu/assets/ずつ_demo.mov" title="demostració de zutsu"></video>
{% end %}
#### [Prova-la ara](https://zutsu.osc.garden) • [GitHub](https://github.com/welpo/zutsu) • [Article](https://osc.garden/ca/blog/zutsu-offline-task-planner-web-app/) {.centered-text}
<ruby><rt>zu</rt><rt>tsu</rt></ruby> és una aplicació web de gestió de tasques dissenyada per ajudar-te a centrar-te en una tasca cada vegada. El nom ve de <ruby>一つ<rt>hitotsu</rt>ずつ<rt>zutsu</rt></ruby>, que significa «d'un en un» en <ruby>日本語<rt>japonès</rt></ruby>.
## Per què?
Volia substituir els esdeveniments de calendari inflexibles per a les sessions d'estudi per alguna cosa senzilla i adaptable. Sense aplicacions de tercers, sense sincronització al núvol, només un espai centrat en a la gestió de tasques.
## Funcionalitats
### Principals
- Gestió de tasques amb possibilitat de reordenar-les arrossegant
- Temporitzador amb durada personalitzable per tasca
- Privada i offline —sense comptes, seguiment ni emmagatzematge al servidor
- Importació/exportació de llistes de tasques (JSON)
### Utilitats
- Temporitzador Pomodoro
- Calendari d'activitat (vista de 30 dies)
- Comptador i cronòmetre
- Espai per prendre notes
- Selectors aleatoris
### Qualitat de vida
- Tema fosc i clar
- Notificacions del navegador i so
- Dreceres de teclat
- Disseny responsive
[![targeta social de zutsu](social_cards/projects_zutsu.jpg)](https://zutsu.osc.garden)

View File

@@ -1,51 +0,0 @@
+++
title = "ずつ (zutsu)"
description = "Una aplicación minimalista y privada de gestión de tareas."
weight = 32
[taxonomies]
tags = ["interactivo", "productividad", "web app", "web", "JavaScript"]
[extra]
local_image = "projects/zutsu/zutsu_logo.webp"
canonical_url = "https://osc.garden/es/projects/zutsu/"
social_media_card = "social_cards/projects_zutsu.jpg"
+++
{% wide_container() %}
<video controls src="https://cdn.jsdelivr.net/gh/welpo/zutsu/assets/ずつ_demo.mov" title="demostración de zutsu"></video>
{% end %}
#### [Pruébala ahora](https://zutsu.osc.garden) • [GitHub](https://github.com/welpo/zutsu) • [Artículo](https://osc.garden/es/blog/zutsu-offline-task-planner-web-app/) {.centered-text}
<ruby><rt>zu</rt><rt>tsu</rt></ruby> es una aplicación web de gestión de tareas diseñada para ayudarte a centrarte en una tarea a la vez. El nombre viene de <ruby>一つ<rt>hitotsu</rt>ずつ<rt>zutsu</rt></ruby>, que significa «uno por uno» en <ruby>日本語<rt>japonés</rt></ruby>.
## ¿Por qué?
Quería sustituir la inflexibilidad del calendario para planificar las sesiones de estudio por algo simple y adaptable. Sin aplicaciones de terceros, sin sincronización en la nube —solo un espacio centrado en la gestión de tareas.
## Funcionalidades
### Principales
- Gestión de tareas con posibilidad de reordenarlas arrastrando y soltando
- Temporizador con duración personalizable por tarea
- Privada y offline —sin cuentas, seguimiento ni almacenamiento en servidor
- Importación/exportación de listas de tareas (JSON)
### Utilidades
- Temporizador Pomodoro
- Calendario de actividad (vista de 30 días)
- Contador y cronómetro
- Espacio para tomar notas
- Selectores aleatorios
### Calidad de vida
- Tema oscuro y claro
- Notificaciones del navegador y sonido
- Atajos de teclado
- Diseño responsive
[![tarjeta social de zutsu](social_cards/projects_zutsu.jpg)](https://zutsu.osc.garden)

View File

@@ -1,51 +0,0 @@
+++
title = "ずつ (zutsu)"
description = "A private minimalist task management app."
weight = 32
[taxonomies]
tags = ["interactive", "productivity", "web app", "web", "JavaScript"]
[extra]
local_image = "projects/zutsu/zutsu_logo.webp"
canonical_url = "https://osc.garden/projects/zutsu/"
social_media_card = "social_cards/projects_zutsu.jpg"
+++
{% wide_container() %}
<video controls src="https://cdn.jsdelivr.net/gh/welpo/zutsu/assets/ずつ_demo.mov" title="zutsu demo"></video>
{% end %}
#### [Try it now](https://zutsu.osc.garden) • [GitHub](https://github.com/welpo/zutsu) • [Blog post](https://osc.garden/blog/zutsu-offline-task-planner-web-app/) {.centered-text}
<ruby><rt>zu</rt><rt>tsu</rt></ruby> is a task management web app designed to help you focus on one task at a time. The name comes from <ruby>一つ<rt>hitotsu</rt>ずつ<rt>zutsu</rt></ruby> which means "one at a time" in <ruby>日本語<rt>Japanese</rt></ruby>.
## Why?
I wanted to replace inflexible calendar events for study sessions with something simple and adaptable. No third-party apps, no cloud sync —just a focused space for task management.
## Features
### Core
- Task management with drag-and-drop reordering
- Timer with customizable duration for each task
- Private & offline—no accounts, tracking, or server storage
- Import/export task lists (JSON)
### Utilities
- Pomodoro timer
- Activity calendar (30-day view)
- Counter & stopwatch
- Note-taking space
- Random choice makers
### Quality of life
- Dark and light theme support
- Browser and sound notifications
- Keyboard shortcuts
- Responsive design
[![zutsu social media card](social_cards/projects_zutsu.jpg)](https://zutsu.osc.garden)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 114 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB