#appy — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #appy, aggregated by home.social.
-
RE: https://mastodont.cat/@spla/116262568363274008
Només per veure de quin pal van, he obert el registre dos minuts en els que els bots automatitzats han creat 10 comptes nous.
Tots son cripto brossa, amb noms d'usuari que son publicitat del que suposo és un canal de Telegram.🤔
1.466 IP bloquejades ja.
Aquest atac massiu des de Tor m'ha anat bé per millorar el codi de #appy i també el de #wappy, he implementat el bloqueig de IP. -
Si voleu provar com funciona un servidor #appy he obert el registre.
https://appy.cat
Una vegada completat el registre, es pot fer servir qualsevol aplicació client que utilitzem amb Mastodon per a iniciar-hi sessió, tant per a iOS com per Android
També es pot iniciar-hi sessió amb la interfície web #wappy -
El que em confirma que #appy té la seva API ben programada és que #wappy, la interfície web que estic desenvolupant per appy, també funciona molt bé amb Mastodon.
Quan vaig tenir la idea de crear appy en #Python i #fastAPI, tenia clar que la seva API havia de ser idèntica a la de Mastodon per a aprofitar totes les seves aplicacions client.https://codeberg.org/spla/appy
https://codeberg.org/spla/wappy -
Novetat en el codi: appy ja suporta citar tuts! ✅ Es poden fer cites des dels servidors appy i també es reben des de servidors federats. 🎉 #appy
-
Aquest és el flux d'inici de sessió en un servidor #appy
Estic molt satisfet, m'agrada molt el disseny de la pàgina que appy mostra a l'aplicació per a autoritzar-la a entrar. -
-
He afegit el selector de visibilitat a #wappy. wappy és l'interfície web que estic desenvolupant per a #appy
https://codeberg.org/spla/wappyO sigui, appy és només l'API on es connecten els clients, que poden ser aplicacions (totes les de Mastodon) o pot ser wappy, la interfície web.
-
Espectacular com es veuen les notícies en tendència en la interfície web dels servidors #appy.
-
Espectacular com queden els tuts en tendència en la interfície web a #appy
Ara inclouen l'avatar, el text sencer, els comptadors d'interaccions i la data de publicació. -
Brutal. Ja es pot afegir una imatge del servidor en la configuració del servidor a #appy. La imatge del servidor es mostra al visitar la pagina del mateix i abans d'iniciar sessió.
-
I ara a #appy ja es poden veure els dominis federats i blocar-los o des blocar-los. 😀
-
Provant la suspensió d'un usuari a #appy. Els botons "suspend" i "unsuspend" actualitzen la base de dades i mostren el "badge" corresponen.
-
-
RE: https://mastodont.cat/@spla/116107671669092808
La prova més bèstia que li pots fer a un servidor és que algú amb milers de seguidors impulsi un tut d'un usuari seu. Automàticament, el servidor rep un allau de peticions de tots els servidors on son els seguidors del usuari que l'ha impulsat, provocant una saturació important si el servidor no té un bon disseny del seu codi.
Quan vaig instal·lar Mastodon en la Raspberry 4 amb 8GB de RAM, aquesta prova bèstia va penjar la Raspberry, pobre. La mateixa prova amb #appy, i cap problema 💪🏼 -
RE: https://mastodont.cat/@spla/116107651852945308
#appy és molt lleuger i ràpid, funciona perfectament en una #Raspberry perquè menja menys recursos que cap altre programari, molts menys que Mastodon (que no funciona en una Raspberry) i menys que Pleroma o Akkoma que sempre han guanyat en aquest àmbit.
-
RE: https://mastodont.cat/@spla/116107594708220050
Ara mateix, totes les aplicacions client tant per a iOS com per Android funcionen bé amb els servidors #appy. Al inici del seu desenvolupament, només emprava l'aplicació client Ivory, que m'ha ajudat a arribar fins aquí.
En el camí he après moltíssim, el projecte era tot un repte: programar un servidor #ActivityPub des de zero amb #Python i #fastAPI amb el mateix comportament que l'API de Mastodon per a poder aprofitar totes les seves apps client.
Estic molt a prop del final 💪🏼 -
En el desenvolupament del servidor #appy havia deixat de banda l'aplicació client Icecubes des de feia mesos perquè no mostrava les línies de temps Inici o Federada, deia que hi havia un error i ja està.
Indirectament, endreçant un part del codi que diu a les aplicacions client on son els avatars dels perfils per a que els puguin mostrar (disc dur local), he solucionat la incidència a Icecubes. 😀
En el vídeo es veu com Icecubes va perfecte amb el meu servidor appy a spla.cat. -
Espectacular com funciona l'algorisme de Search a #appy
Escrius qualsevol text i Search et cerca usuaris, etiquetes i tuts que el continguin.
Fa el mateix que Search de Mastodon 👌 -
RE: https://mastodont.cat/@spla/116085742029273248
La funció que genera les snowflake ID a #appy és dins de la base de dades Postgresql.
https://codeberg.org/spla/appy/src/commit/f9b4f5e975a9d64fc055ea309f02fa94cedba111/app/db/schema.py#L168
Aquesta funció accepta dos paràmetres: el nom de la taula de la base de dades (statuses, on es desen els tuts) i "created_at", que com he dit abans és la data de creació/publicació del tut.
El format de les snowflake ID a appy és el mateix que el de Mastodon. -
L'ordre cronològic sense manipular és un dels punts forts dels servidors del #fedivers. El primer tut que arriba és el primer tut que es mostra, sense trampes.
A #appy no m'anava bé del tot però ja ho he solucionat: quan un tut arriba amb retard (pel motiu que sigui) no li has d'assignar una #SnowflakeID segons la data i hora actual del servidor appy sinó que ho has de fer segons la data i hora de creació del tut. ✅
I no només pels tuts tardants, per a tots. -
Quin progrés més potent li he donat al codi del servidor appy en els darrers dies.
- seguir etiquetes
- veure l'historial d'edicions dels tuts, amb les imatges i tot!
- obtenir el tut a qui respon l'usuari seguit (imprescindible per a entendre el context)
- mostrar els tuts d'usuaris no seguits impulsats per usuaris seguits.Ja queda menys per acabar el projecte començat des de zero💪🏼
-
Una idea em balla pel cap, aprofitant tot el que he après programant el servidor #appy, crear un nou projecte que permeti veure i validar les activitats ActivityPub, les signatures http etc. Hauria de ser molt útil per a crear nous serveis basats en aquest protocol.
-
Novetat a #appy, es poden seguir usuaris de Loops i rebre els seus vídeos. https://codeberg.org/spla/appy/commit/01566776bb8101d602ccdbe325e2ebd1bf5c5336 https://codeberg.org/spla/appy/commit/ef194c0892e7a82fd95fb0057f75e36fec26cdbf
-
#appy té una novetat, permet seguir usuaris de Loops i veure els seus vídeos. https://codeberg.org/spla/appy/commit/ef194c0892e7a82fd95fb0057f75e36fec26cdbf https://codeberg.org/spla/appy/commit/01566776bb8101d602ccdbe325e2ebd1bf5c5336
-
Em sembla que ja funciona com cal, ja fa el paginat de tots els tuts del compte consultat.
https://codeberg.org/spla/appy/commit/00ca934776a498ede68cf432de10d209f9bcf324
-
Des de fa dies estic modificant de dalt a baix tot el codi de #appy per a que gestioni la base de dades de manera asíncrona (evita colls d'ampolla). Encara no he acabat però els canvis ja son importants, 48 arxius modificats, 698 línies noves i 688 línies esborrades.
-
Gràcies a #asyncpg el servidor #appy de l'entorn de desenvolupament funciona molt ràpid. He re escrit tots els algorismes que gestionen la base de dades però la feinada s'ho val.
Encara he de refer tot el codi relacionat amb OAuth, quan estigui ho posaré a producció (appy.cat).
https://mastodont.cat/@spla/113038591246854071 -
Estic reprogramant de dalt a baix el codi del servidor #appy per a que faci servir #asyncpg enlloc de psycopg2.
Amb psycopg2 hi tinc un coll d'ampolla perquè tota la gestió de la base de dades és síncrona. asyncpg és asincrona, com diu el seu nom, i farà que appy sigui molt ràpid. En els gràfics asyncpg és a la dreta de tot. -
Ara sí que m'agrada, no he de tenir l'iPhone en una mà per a desenvolupar #appy, amb el teclat del portàtil puc tant modificar el codi com fer anar l'aplicació client Ivory gràcies a #iPhoneMirroring
-
#appy funciona de manera asíncrona per evitar bloquejos en el funcionament. L'únic que no és asíncron és la connexió amb la base de dades Postgresql perquè psycopg2, la biblioteca que utilitza appy, no ho és.
Cercant he trobat #asyncpg que com es dedueix del seu nom sí que és asíncrona i 5 vegades més ràpida que psycopg2.