Pignio pignatico si rende superpignastico per pignare cose e cosine

https://octospacc.altervista.org/2025/07/13/pignio-pignatico-si-rende-superpignastico-per-pignare-cose-e-cosine/

minioctt Jul 13, 2025 · 3 mins read
Pignio pignatico si rende superpignastico per pignare cose e cosine
Share this

L’altro giorno mi è venuta l’idea pazza che più pazza non si può etc etc… solito andazzo. Ma, per quanto l’andazzo sia sempre lo stesso del cazzo, il risultato delle mie macchinazioni è anche stavolta originale, e la primissima versione utilizzabile di esso è già in produzione da ieri sera. Occhi aperti sul nuovissimo gnammifico pezzo di software che è Pignio.octt.eu.org!!! (Che per poco non rischiava di chiamarsi Octterest…) 💣💫💥

Questo coso spunta fuori dal fatto che, negli ultimi tempi, stava uscendo sempre più la necessità per me di avere un merdino per salvare ed organizzare elementi come link singoli o file multimediali, anche e soprattutto al volo, e potenzialmente renderli accessibili al pubblico… non so: memini, reference, cose da stampare, forse roba PDF file, tutto sotto il mio controllo a prova di sparizione. Ovviamente, una cartella con varie sottocartelle (magari sincronizzata su una repo Git pubblica), che in altri casi sarebbe l’opzione più ovvia, nel complesso qui non va bene, perché l’agilità va a farsi benedire… ma, io sono pur sempre una ragazza magica, dunque non devo accontentarmi delle soluzioni esistenti!!! 😍

In effetti, di software specializzati per salvare cose ce ne sono a bizzeffe… ne hosto io stessa da anni uno per link e articoli dal web, Shiori… però, non so, manca in tutti quella cosa in più per questo caso d’uso… Tra cui, il fatto che è bello facile a salvare elementi singoli dentro tutti quei robi, ma se io ipoteticamente (…e praticamente) avessi cartelle già piene di roba sul PC, che stracavolo dovrei fare? Quindi, beh, semplicemente ho progettato Pignio per operare direttamente sul file system, pescando e salvando sia file che metadati da e su file nella cartella del server, e ho fuso insieme quei due universi che mai devono toccarsi, rispettivamente della banalità informatica e dell’alta informatica… in altre parole, è flat-file, e sono negativamente stupita del fatto che non esista alcun altro software lato server per questo scopo qui ma con questa caratteristica. 🤥

Ora è davvero nelle fasi iniziali, e funziona bene… bisognerà vedere poi quanto regge, soprattutto con decine o centinaia di migliaia di file multimediali da trovare sul disco, con altrettanti file INI messi affianco da cui vengono letti i metadati (e quanto sarà l’overhead sul disco avendo tutti questi file da poche centinaia di byte ciascuno), ma la struttura del file system (per gli elementi creati dalla app stessa, identificati da un ID Snowflake, non i file tirati da fuori) penso di averla architettata bene. Sarà davvero la prova definitiva per l’architettura flat-file, se davvero finisco per riempire il sistema con questo passo… ma, in compenso, una repo Git sarà perfetta per fare il backup di tali questi miei preziosi dati (cosiddetto “mio tessoro“), non avendo blob di database. 🤤

Lo stile dell’interfaccia, e a breve anche il sistema di raggruppamento di elementi in collezioni, vabbé, l’ho copiato spudoratamente da Pinterest, e mi sembra ben ovvio… ma, differenza di Pinterest, Pignio ha vantaggi molto tosti… in primis è mio, quindi posso sistemarlo per non avere tutti i bug di merda (Pinterest ne ha infiniti!), poi è self-hostabile, quindi i dati sono già sempre fisicamente in mano a me; e, in più, funziona senza JavaScript, e quindi anche su browser vecchi (pur se con un layout mezzo rotto su quelli, per via del framework che ho usato, UIKit)… figurarsi se io trascuravo proprio una cosa del genere. 😤

Il lavoro da fare è ancora tantino però (e te pareva), perché, a parte le collezioni, ci sono cose solo da sistemare. Cose piccole, come l’importazione automatica di elementi da feed RSS esterni (…ed implementare i feed della roba dalla app stessa)… ma poi anche cose grosse ma assolutamente necessarie, come avere un OCR automatico sulle immagini, o più in generale il riconoscimento dei contenuti per fare tagging automatico, così da ottimizzare la ricerca e potenzialmente avere un algoritmo di suggerimento utile in un’istanza con più utenti. A proposito… ancora non ho nemmeno finito di implementare i permessi per gli utenti, quindi non posso invitare ancora nessuno a provare la mia istanza… però, ho reso pubblico il codice già da ieri (nonostante inizialmente pensavo di aspettare un po’, perché potrei cambiare alcune cose della struttura dati… ma francamente non freca): https://gitlab.com/octospacc/Pignio. GODETE!!! 😈😳