shawnhooper, to rant
@shawnhooper@fosstodon.org avatar

If you've built a SaaS that allows your clients to integrate with it via an API, I have one big request:

PLEASE give them a staging environment for testing their integration without having to buy another license (sometimes very expensive). Just include it.

0x58, to AWS

📺 One to watch today - Interesting @frichetten talk titled "Evading Logging in the Cloud: Bypassing AWS CloudTrail" :cloudcomputing:​

https://youtu.be/YP2XNAbB_Nw?si=mLK1z_fh8MZkgsVG

ramikrispin, to OpenAI
@ramikrispin@mstdn.social avatar

OpenAI Assistants API for beginners 🚀

This is a new course by Vinci Bits and freeCodeCamp that focuses on building AI assistants using OpenAI's Assistants API. The course covers the following topics:
✅ Working with the Assistants API
✅ The API functionality
✅ Embedding the API into applications
✅ Creating an application with Streamlit

The course required experience with Python 🐍

Course: https://www.youtube.com/watch?v=qHPonmSX4Ms

minioctt, to web Italian

Colpo di estremamente radicale per risolvere un annoso : il creare una data , che non abbia bisogno di grande interattibilità (vedi un social network, o un CMS), senza dover mantenere 2 separate e quindi impazzire, facendola funzionare sia con un che totalmente senza… ossia, come unire in una sintesi circa accettabile i due maggiori paradigmi del ? 🤔️

  • Quello antico, delle prime , dove il server genera tutto l’HTML e il browser lo visualizza com’è, spesso con (quasi) zero (vedi la Spacc BBS). 📦️
  • Quello moderno, dove nel si espongono API (spesso JSON REST), e il fronte viene sviluppato a parte come app che gira totalmente lato , con il che richiede pezzetti di dati e fa i suoi iperprocessamenti. 💱️

Ormai quello antico non si usa quasi mai per nuovi, perché gli svantaggi sono pesanti appena si vuole andare un po’ più in là: per tappare i buchi nel progetto medio si finirebbe a dover scrivere talmente tanto , che a questo punto era meglio fare tutto nel secondo modo, senza menzionare i modelli e le da esporre nel server che altrimenti non si sarebbero implementati. Però, le webapp antiche girano bene anche sul computer tascabile meno performante (average Ximi), sui browser vecchi, e spesso sono le uniche che vanno quando tutto il resto ti lascia a piedi. D’altro canto però, anche se in teoria quella potrebbe funzionare , magari mostrando dati cachabili, se è sviluppata in modo attaccato al server ecco allora che non si può fare nulla: muore il server, muore tutto. 💣️

Quindi la mia paxxerella, dato che devo fare banalmente una come frontend per un altro servizio già esistente, ma voglio i vantaggi appena millantati: sviluppare con i paradigmi in un framework JS adatto, che giri sia in Node che nel browser. A quanto pare, qualcuno ci ha pensato prima, e qualcosa di già fatto ho trovato (Express+FrontExpress, Koa+Koa-Client, Rill)… ma è tutta roba ormai abbandonata, che o non funziona (ho provato) o ha altre . Te pareva che trovavo mai qualcosa di buono già pronto… Però, in un quarto d’ora ho tirato su uno scheletrino, giusto per poter partire per questa via. ☠️

Rapido : questo (giusto da , non fa nulla se non mostrare questo testo e far navigare tra pagine) gira sia come server su , che come script in una pagina totalmente , e l’esperienza non cambia. Percepisco il potenziale, continuerò così. 😤️https://octospacc.altervista.org/2024/02/07/frontendare-lato-client-come-fossimo-nel-backend/

simplescreenrecorder-2024-02-07_17.05.35

osjobhub, to legal
@osjobhub@fosstodon.org avatar

Featured Job at @openuk : The open-source standard for EL(T), is seeking a remote Technical Support Engineer in the UK. Learn more about this position and other openings on https://opensourcejobhub.com/company/585/

osjobhub, to opensource
@osjobhub@fosstodon.org avatar

The on-site job board closes soon! Featured Job at @openuk : Enabling companies to connect, secure, and observe modern applications, is seeking a Solutions Engineer located in the UK. Learn more about this position and other openings on https://opensourcejobhub.com/company/896/

frankel, to random
@frankel@mastodon.top avatar

Landscape: a comprehensive view of all stakeholders creating the programmable economy

https://apilandscape.apiscene.io/

opensuse, to UI
@opensuse@fosstodon.org avatar

Did you miss the monthly Open Build Service / meeting yesterday? Set a reminder https://calendar.opensuse.org/

kubikpixel, to web
@kubikpixel@chaos.social avatar

Such reports have become more frequent recently. Of course, is not just simple, but as a provider you should, in my opinion, test it officially to maintain – is professional?

«Twitter alternative spouts a massive : Spoutible’s coughed up 's, info, and tokens that could let attackers take over anyone’s

🔓 https://www.theverge.com/2024/2/5/24061997/twitter-alternative-spoutible-vulnerabilty

mima, to fediverse

A adding support is waiting to be merged into 's repo 👀

If this gets added in, this will bring in Misskey (and too!) a lot more compatible third-party clients.. ​:gyate_patchouli_wow:​ Thus the issue of lack of clients in Misskey is workarounded and we may not need the (aka ) after all... ​:sagume_think:​

This also AFAIK makes Misskey the first mainstream software out there to support Micropub; earlier than Mastodon! ​:SuikaWOW:​

RE: https://p1.a9z.dev/notes/9p80jquq4o

minioctt, (edited ) to CSS Italian

[⤴️ https://octospacc.altervista.org/2024/02/01/emmebi-telegrammico/]

L’ultimissimo miglioramento che ho in ogni caso poi fatto ad è stato l’aggiunta di una funzione per importare codice e , per modificare come i post possono essere visualizzati. Entrambi funzionano allo stesso modo, con i relativi parametri URL che accettano sia esterni che data URI. Niente di particolare per gli stili, semplicemente importo nella pagina la qualunque cosa venga data lì, ma per gli è stato leggermente più . 😕️

Il punto sta nel voler evitare che essenzialmente non affidabili siano iniettati nel contesto della pagina semplicemente da URL, perché potrebbero fare tante cosine cattive; prima fra tutte, rubare dall’archiviazione del del mio dominio, cosa che è un , perché gli utenti inesperti che aprono la app da non andranno a cercare di investigare cosa accade dietro le quinte (e, molto probabilmente, non lo farei realisticamente nemmeno io, seguendo la logica del “i miei siti sono miei e li conosco, sui siti altrui ho le protezioni del browser attive“). E quindi inizio a scendere in un rabbithole… ☠️

  • ? Hmm… non so, non è il caso, sarebbero insicuri, ci sono alcuni modi in cui una pagina in frame può fare robe fastidiose. Non può essere assolutamente un’idea, proprio mai (foreshadowing). 🪟️
  • Trovo un bel po’ di vecchie che ricompilano codice per rimuovere pericoli, o lo analizzano preventivamente per la presenza di operazioni dannose così che possa non essere mai eseguito… praticamente tutte abbandonate, qualcuna esplicitamente dichiarata insicura e non patchata, e per qualcun’altra lo possiamo dare per scontato. 🐛️
  • Forse questa libreria più recente, jailed, che sfrutta un iframe assieme ad un Web Worker per creare una sandbox forte e bloccare tutte le eccetto alcune che si decidono… No, l’ho provata e non va bene, non si riescono a passare alla sandbox oggetti complessi, tra cui i costruttori, è impossibile far funzionare API tipo quella del DOM. 🚧️
    • Sarebbe stata un’idea usare qualche reimplementazione del per NodeJS tramite browserify, tipo Cheerio, ma farla anche solo girare lì dentro è un altro casino allucinante. 🥴️
  • WASM tecnicamente è una a sua volta, e non accede alle API del browser se non con codice colla, quindi magari… teoricamente ok, ma nella pratica non ho trovato nessuna soluzione già bella e pronta che potessi usare per questo specifico scopo. 🕳️
  • La : PyScript… sarebbe quasi già pronto, ma avrei dovuto comunque modificarlo per bloccare tutte le API insicure (rimuovere ), e poi richiede 15+ MB di dipendenze di runtime… non ideale. 🗿️

Alla fine ci ho pensato meglio, e sono arrivata alla conclusione che è abbastanza sicuro far girare gli script in un iframe con proprietà src="data:[...]" e sandbox="allow-scripts" (che significa, “blocca tutte le proprietà sensibili eccetto gli script”)… voglio dire, nel visualizzare il contenuto dei siti, già permetto eventuali iframe provenienti dai post, e quelli teoricamente possono già fare quello che vogliono eccetto accedere ai dati della finestra root. Nella pratica, i programmini degli utenti quindi hanno accesso a (quasi) l’intera API JavaScript senza poter fare cose bruttissime. 🎉️

https://octospacc.altervista.org/wp-content/uploads/2024/02/image.pngEcco un esempio di tutto, alla fine: questo URL carica il mio MicroBlog, importa un foglio di che mette questo font buffo, e uno script che colora le parole dei in base a come si ripetono man mano (inutile, ma serve giusto per dare idea delle potenzialità)… <a href="https://hub.octt.eu.org/MBViewer/#/siteUrl=https://octospacc.altervista.org|platform=wordpress.org|includeStyle=data:text/css;utf8,@import%20url('https://fonts.googleapis.com/css2?family=Single+Day&display=swap');.MbPost{font-family:'Single%20Day',cursive;}|includeScript=data:text/javascript;utf8,function%20MbViewerFunction(data){const%20dom=new%20DOMParser().parseFromString(data.html,'text/html').body;const%20tokens=dom.textContent.split('%20');const%20words={};for(const%20i%20in%20tokens){const%20word%20=%20tokens[i];if(words[word])words[word]++;else%20words[word]=1;tokens[i]=%60%3Cspan%20style='color:${atob('Iw==')}${[0,'b58900','cb4b16','dc322f','d33682','6c71c4','268bd2','2aa198','859900'][words[word]]};'%3E${word}%3C/span%3E%60}data.html=tokens.join('%20').replaceAll('nn','%3Cbr%3E');for(const%20img%20of%20dom.querySelectorAll('img'))data.html+=img.outerHTML;MbViewerReturn(data)}">https://hub.octt.eu.org/MBViewer/#/siteUrl=https://octospacc.altervista.org|platform=wordpress.org|includeStyle=[...]|includeScript=[...]</a> (il link con tutta quella roba messa inline è una stringa di quasi 1 KB!). Userò tutta la cosa per rendere gli hashtag nel testo meno intrusivi per il mio sito anche lì, oltre che sul dominio originale. 👋️Finisco con dati ancora più tecnici, per chi non ha una vita: con questo , ogni deve provvedere ad esporre una funzione che, tramite la Channel Messaging API, viene richiamata dalla per ogni messaggio appena questo viene aggiunto al documento visibile; questa funzione riceve dati utili (per ora, solo l’HTML del contenuto; oltre a dati come l’id del messaggio nel flusso, che non sono granché utili all’utente ma devono essere restituiti alla app) e può rimandare nuovi dati indietro richiamando una funzione che è invece l’applicazione ad esporre allo script. Tutto questo ambaradan permetterebbe agli script di effettuare anche operazioni asincrone, comunque, non per forza di dover agire immediatamente alla chiamata. 🤓️

https://octospacc.altervista.org/2024/02/01/emmebi-javascriptico/

itnewsbot, to internet
@itnewsbot@schleuss.online avatar

Exploring Reddit’s third-party app environment 7 months after the APIcalypse - Enlarge (credit: Getty)

Last year, Reddit sparked massive cont... - https://arstechnica.com/?p=1992717

orhun, to rust
@orhun@fosstodon.org avatar

Here is how you can automatically generate API documentation for your Rust service! 🏗️ 🦀

🚀 apistos: Actix-web wrapper for OpenAPI 3.0 documentation generation.

⭐ GitHub: https://github.com/netwo-io/apistos

📚 Docs: https://docs.rs/apistos

jfayre, to Toronto

Our local transit agency publishes an to get real-time train departure and platform information at union station. I requested an API key, but the documentation they provide doesn't give the api endpoint URL, or the header you are supposed to use to pass the key to the request. Brilliant! Oh, and two email addresses I found are bouncing back, including the one in the api key email they sent me.

madargon, to django
@madargon@is-a.cat avatar

Listening to this in loop when trying to force our Brave New Wo... App to cooperate.

https://piped.video/watch?v=nSKp2StlS6s

vulkan, to GraphicsProgramming
@vulkan@fosstodon.org avatar

In 1 week, join us for the start of Vulkanised 2024! Tom Olson, Chair of the Vulkan Working Group, will kick things off with the latest Vulkan deliverables and Vulkan 2024 Roadmap! Don't miss it. Register now!

https://vulkan.org/events/vulkanised-2024

braidn, to random

How are folks writing s these days and getting for (mostly) free documentation?

Are we choosing things like: https://typespec.io or are we still hand building files for ?

ai6yr, to python
@ai6yr@m.ai6yr.org avatar

"A series of tutorial videos on how to access the Sentinel Hub APIs in your Copernicus Data Space Ecosystem Jupyter Lab using Python. Learn how to configure your credentials, search and discover Sentinel-2 L2A imagery and how to visualise them afterwards. Lastly, the videos also show you how to create time series analyses derived from the same data." https://www.youtube.com/playlist?list=PLj4KwRQTBlPL3CVwpaBXl3VrO0_V3VX_Q

davidbisset, to php
@davidbisset@phpc.social avatar

(Un)official bindings for the Open Brewery DB API.

https://github.com/JoeyMckenzie/openbrewerydb-php-api

Open DB provides a public dataset for breweries around the world, as well as offering an to retrieve data in various forms.

vulkan, to GraphicsProgramming
@vulkan@fosstodon.org avatar

As part of the Vulkan Roadmap, Khronos announced the release of VK_KHR_dynamic_rendering_local_read, which adds support for local dependencies to dynamic rendering; enabling developers to fully move over to dynamic rendering.

Learn more: https://www.khronos.org/blog/streamlining-subpasses

vulkan, to GraphicsProgramming
@vulkan@fosstodon.org avatar

At Vulkanised 2024 be sure to catch all of the great talks on Vulkan Video! View the full agenda and register at: https://vulkan.org/events/vulkanised-2024

byrev, to php
@byrev@mastodon.social avatar

For those who need an attractive and interesting percentage gradient :) ..

image/png

jscholes, to django
@jscholes@dragonscave.space avatar

Searched the internet for tips on using with , hoping specifically for guidance on incorporating Svelte components into Django templates. The first result is an article telling me how to ignore Django templates completely, move all development to in the form of an SPA, and turn my into a REST . Turns out, things can depress you even when they're not surprising.

zirias, to KDE
@zirias@techhub.social avatar

Remember these specific misrenderings using the wrong ? Made actually a good testcase after adding codepage selection to my new "dos2ansi" tool 😜
https://github.com/Zirias/dos2ansi

Screenshot from () running on and using Microsoft's font.

zirias,
@zirias@techhub.social avatar

Just released dos2ansi v0.4, with lots of s supported and a testmode to display them.

The next nice feature would be to use the actual terminal capabilities if output goes there. Very simple on *nix-like systems (, , ...), just link and use the termcap functions.

Thinking about again, either I keep relying on support (since IIRC? and still a bit buggy) and sequences support (since ) .... OR I attempt to use the native there (using special functions to write in and other special functions to set colors, which would require a major refactoring first 🙄)

https://github.com/Zirias/dos2ansi/releases/tag/v0.4

kubikpixel, (edited ) to internet German
@kubikpixel@chaos.social avatar

Jetzt wo ihr alle auf eine und offene Plattform für gewechselt seid, das , könnt ihr z.B. bei den weiter machen.

🔎 @MetaGer
🔎 @Mojeek
🔎 @monocles
🔎 https://gruble.de

Ne du, so was wie , & liefern Daten ihrer Crawler wie (M$) und/oder . Pseudonymisiert ist nicht anonym, denn die sind vertraglich dazu verpflichtet.

kubikpixel, (edited )
@kubikpixel@chaos.social avatar

🧵 …neben den -Suchmaschinen wie @MetaGer, @Mojeek, @monocles und Servern (siehe oben weshalb) probiere ich nun stract.com aus. Das ist eine in / entwickelte Suchmaschine und hat u.a. auch eine ordentliche . Ob es nun eine zusätzliche Alternative zu & Co. ist muss ich erst noch herausfinden.

🔎 https://stract.com

  • All
  • Subscribed
  • Moderated
  • Favorites
  • megavids
  • thenastyranch
  • magazineikmin
  • everett
  • InstantRegret
  • rosin
  • Youngstown
  • slotface
  • love
  • Durango
  • kavyap
  • ethstaker
  • tacticalgear
  • DreamBathrooms
  • provamag3
  • cisconetworking
  • mdbf
  • tester
  • khanakhh
  • osvaldo12
  • normalnudes
  • GTA5RPClips
  • ngwrru68w68
  • modclub
  • anitta
  • Leos
  • cubers
  • JUstTest
  • All magazines