L'open source e gli sviluppatori sono una storia d'amore aperta che non piace alla chiusa. Per quelli di voi a cui non piacciono dichiarazioni del genere, ↓ è un insieme di parametri del Boston Consulting Group che dovrebbero iniziare a riscaldarvi.

Indipendentemente dalle statistiche, se scrivi codice per lo sviluppo web, ti starai chiedendo quali sono le ultime novità in ambito open source nel 2023. Quindi, non chiederti altro e tuffati direttamente nei dieci strumenti che dovresti proporre al tuo capo.

☝🏻 Fattori da considerare quando ho stilato questo elenco,

  • Popolarità

  • Contributi comunitari

  • Supporta la cadenza

  • Velocità dei rilasci

  • Sviluppo di nuove funzionalità

  • Sicurezza

Come fanno su cinque per questo elenco

  • ~16K GitHub ⭐

  • Valori per i contributi comunitari: 4/5

  • Valori per lo sviluppo di nuove funzionalità: 3/5

  • Velocità di rilascio: 3/5

  • Cadenza di supporto: 5/5

Lo sviluppo di un livello di notifica è un'attività comune quando si progetta una nuova applicazione. In genere si inizia con l'invio di una semplice e-mail, ma è possibile gestire centinaia di notifiche su più canali man mano che l'applicazione cresce. Questo può essere un processo lungo e complesso. È qui che entra in gioco Novu. Novu è una piattaforma di sviluppo dell'infrastruttura che aiuta gli sviluppatori a creare e distribuire applicazioni native del cloud. Il suo obiettivo è rendere più semplice per gli sviluppatori creare una comunicazione transazionale significativa tra il loro prodotto e i suoi utenti.

Professionisti

  • Facile da configurare e integrare

  • API unica per tutti i provider di messaggistica (Email, SMS, Push, Chat)

Contro

  • Nessuna configurazione basata su ORM

  • Nessun piano tariffario per il servizio gestito dal cloud

Novu offre un'API facile da usare e si concentra sull'esperienza degli sviluppatori. Ciò significa che gli sviluppatori possono integrare facilmente le notifiche nelle loro applicazioni senza preoccuparsi dell'infrastruttura sottostante.

Con Novu puoi,

  • Connetti diversi provider: utilizza una raccolta integrata di provider popolari: Sendgrid, Mailgun, Twilio e molti altri. Aggiungi la chiave API e sei pronto per partire.

  • Imposta più canali di notifica: Novu supporta molte notifiche, tra cui e-mail, SMS, notifiche push e altro. Ciò significa che puoi raggiungere i tuoi utenti attraverso i loro canali preferiti e assicurarti che i tuoi messaggi vengano recapitati.

  • Utilizza modelli dinamici: seleziona i canali, aggiungi contenuti con la sintassi {<!-- -->{dynamic}} e regole personalizzate per controllare la consegna delle notifiche.

  • Feed di tracciamento: Novu fornisce un feed di attività di notifica che monitora ogni messaggio in uscita associato ai relativi metadati rilevanti.

Alternativa a sorgente chiuso

  • Corriere

  • Magicbell

🔎 Come si comportano al quinto posto in questo elenco

  • ~24.7K GitHub ⭐

  • Valori per i contributi comunitari: 4/5

  • Valori per lo sviluppo di nuove funzionalità: 4/5

  • Velocità di rilascio: 5/5

  • Cadenza di supporto: 5/5

Appsmith è una piattaforma low-code che consente agli sviluppatori di creare applicazioni software senza scrivere codice esteso. Fornisce un'interfaccia visiva per creare e connettere vari componenti, come moduli, pulsanti e origini dati. Ciò consente agli sviluppatori di prototipare e creare rapidamente applicazioni funzionali con il minimo sforzo.

Professionisti

  • Diversi widget predefiniti per creare qualsiasi interfaccia di strumento interno in pochi minuti.

  • Funzionalità aziendali: VCS avanzato, registri di controllo, branding personalizzato, SSO.

  • Diverse opzioni di distribuzione self-hosted.

Contro

  • Interfaccia utente reattiva per dispositivi mobili (disponibile a breve nella roadmap)

Con Appsmith, ottieni,

  • Widget predefiniti: Appsmith viene fornito con una libreria di widget predefiniti che puoi utilizzare per creare la tua applicazione. Questi widget includono pulsanti, tabelle, moduli e grafici con proprietà avanzate come impaginazione, modifica in linea ed eventi.

  • Integrazioni native: Appsmith semplifica la connessione ai tuoi database e strumenti preferiti con oltre 20+ integrazioni native. Questi includono opzioni popolari come Postgres, MongoDB e Airtable, nonché la possibilità di connettersi a quasi tutte le API utilizzando l'API RESTful o il plug-in GraphQL.

  • Supporto del codice JavaScript. Puoi utilizzare JavaScript all'interno di {<!-- -->{ }} ovunque in Appsmith. Puoi fare riferimento a ogni entità in Appsmith come variabile JavaScript ed eseguire tutte le funzioni e operazioni JavaScript su di esse.

  • Controllo della versione con Git: questa funzionalità su Appsmith consente a più sviluppatori di aggiungere il proprio lavoro in un ramo git, inviare una richiesta pull per revisioni del codice, integrarsi con pipeline CI/CD e fornire una cronologia dei commit per tornare a una versione precedente, se necessario. dovesse andare storto.

Alternativa a sorgente chiuso

  • Riorganizzare

  • DronaHQ

  • Superblocchi

🔎 Come si comportano al quinto posto in questo elenco

  • ~44K GitHub ⭐

  • Valori per i contributi comunitari: 4/5

  • Valori per lo sviluppo di nuove funzionalità: 4/5

  • Velocità di rilascio: 5/5

  • Cadenza di supporto: 4/5

Negli ultimi tempi, la competizione tra database si è evoluta. Dopo tre decenni di crescita e miglioramento, Postgres si è guadagnato una reputazione di affidabilità e prestazioni elevate, rendendolo una scelta popolare tra le aziende di tutte le dimensioni. Oracle ha compromesso la natura open source di MySQL e, con la crescente popolarità del cloud storage, Postgres è diventata un'opzione di database open source leader. L’ascesa di Supabase, un’alternativa basata su Postgres a Firebase di Google, riflette la tendenza delle opzioni open source a sfidare quelle proprietarie.

Professionisti

  • Database Postgres completo con Instant REST

  • Viene fornito con autenticazione e-mail/social

Contro

  • Il suo SDK funziona solo con JS (il supporto per altre lingue è ancora in versione beta)

  • Le politiche di sicurezza sono limitate in tempo reale

Con Supabase puoi,

  • Imposta database: il cuore della maggior parte delle applicazioni è l'archiviazione dei dati e la fornitura agli utenti di un accesso semplice e veloce. Per raggiungere questo obiettivo, Supabase si affida a PostgreSQL, un database relazionale open source. Questa tecnologia consente a Supabase di offrire un'esperienza fluida di archiviazione, recupero e gestione dei dati all'interno delle tue applicazioni.

  • Configura Autenticazione: Supabase semplifica l'integrazione di tutte le principali app social, offrendoti varie opzioni per autenticare gli utenti della tua applicazione. Ma se preferisci un approccio più tradizionale, Supabase supporta anche l'autenticazione tramite password e-mail.

  • Scrivi funzioni Edge: a volte è necessario eseguire determinate attività in modo asincrono o eseguire operazioni sul backend della tua applicazione. Supabase offre funzioni edge per gestire questi tipi di casi d'uso. L'implementazione delle funzioni edge è semplice e Supabase le distribuisce a livello globale per garantire a tutti gli utenti un'esperienza coerente e veloce.

  • Configurazione dell'archiviazione: in qualità di amministratore, la piattaforma Supabase ti consente di gestire facilmente i file dal tuo browser. Puoi cercare, caricare, visualizzare ed eliminare file con pochi clic. Lo spazio di archiviazione Supabase si integra perfettamente con PostgreSQL e fornisce una semplice API JavaScript da utilizzare.

Alternativa a sorgente chiuso

🔎 Come si comportano al quinto posto in questo elenco

  • ~8K GitHub ⭐

  • Valori per i contributi comunitari: 4/5

  • Valori per lo sviluppo di nuove funzionalità: 4/5

  • Velocità di rilascio: 3/5

  • Cadenza di supporto: 4/5

Supertokens è una piattaforma di autenticazione open source che fornisce soluzioni sicure e scalabili per la gestione dell'autenticazione e dell'autorizzazione degli utenti nelle applicazioni web e mobili. Uno dei principali vantaggi derivanti dall'utilizzo di una libreria come i supertoken per l'autenticazione è che può far risparmiare tempo e fatica agli sviluppatori. Invece di scrivere da zero l’intero sistema di autenticazione, gli sviluppatori possono utilizzare il codice preesistente e accuratamente testato fornito dai supertoken. Ciò può ridurre il rischio di errori e vulnerabilità della sicurezza nel processo di autenticazione. Inoltre, la natura open source dei supertoken significa che gli sviluppatori hanno accesso al codice sorgente, il che consente loro di personalizzare ed estendere la libreria secondo necessità per soddisfare le esigenze specifiche del loro progetto.

Professionisti

  • L'architettura modulare semplifica la configurazione.

  • Fornisce una funzionalità di override che consente di personalizzare completamente l'autenticazione e scorre sia sul front-end che sul back-end.

Contro

  • No, non supportano molti linguaggi popolari come Java e Php e non dispongono di un'interfaccia utente predefinita per framework frontend popolari come Angular e Vue.

  • Manca di funzionalità aziendali come il provisioning SCIM, l'amministrazione e il supporto dell'organizzazione.

Oltre alle funzionalità di autenticazione principali, SuperTokens offre anche una soluzione completa end-to-end per la gestione delle sessioni utente. Con questa soluzione è facile implementare funzionalità avanzate come la sincronizzazione dei dati della sessione su più dispositivi o la limitazione del numero di dispositivi a cui un utente può accedere. Queste funzionalità possono aiutarti a creare applicazioni più sicure e funzionali e SuperTokens ne semplifica l'implementazione.

I SuperToken vengono forniti con,

  • Interfaccia utente completamente personalizzabile per l'autenticazione: Supertokens viene fornito con componenti dell'interfaccia utente predefiniti quando integrati, semplificando l'implementazione dell'autenticazione nella tua applicazione. E la parte migliore è che questi componenti dell'interfaccia utente sono completamente personalizzabili, quindi puoi personalizzarli per adattarli all'aspetto della tua applicazione.

  • Gestione delle sessioni: fornisce un robusto sistema di gestione delle sessioni che consente di creare, verificare, aggiornare e revocare facilmente le sessioni utente con un elevato livello di sicurezza.

  • Gestione dei ruoli: Supertokens include anche un sistema di gestione dei ruoli che ti consente di assegnare facilmente gli utenti a ruoli specifici e controllare quali azioni possono eseguire all'interno della tua applicazione. Ciò si ottiene assegnando ruoli alle sessioni, in modo da poter ottimizzare i livelli di accesso dei diversi utenti.

Alternativa a sorgente chiuso

  • Aut0

  • Ok

🔎 Come si comportano al quinto posto in questo elenco

  • ~28K GitHub ⭐

  • Valori per i contributi comunitari: 4/5

  • Valori per lo sviluppo di nuove funzionalità: 3,5/5

  • Velocità di rilascio: 3/5

  • Cadenza di supporto: 4/5

Appwrite è una popolare piattaforma Backend-as-a-Service (BaaS) open source che fornisce vari strumenti e funzionalità per la creazione di applicazioni moderne e ricche di funzionalità. È un'ottima soluzione per gli sviluppatori che cercano una piattaforma BaaS open source e altamente personalizzabile. Con Appwrite, puoi configurare facilmente un backend per la tua applicazione e sfruttare funzionalità come database in tempo reale, archiviazione di file, funzioni serverless e altro ancora.

Professionisti

  • Migliore documentazione per le istanze con hosting autonomo.

  • Facile da iniziare.

Contro

  • • Nessuna opzione gestita, quindi non è completamente serverless, ma è comunque un'opzione migliore rispetto alla creazione del tuo backend da zero se hai i requisiti legali per ospitare tu stesso il BaaS.

  • Devi gestire la sicurezza del server web

Con Appwrite puoi,

  • Configurazione dell'autenticazione: Appwrite fornisce un sistema completo di gestione degli utenti che consente agli sviluppatori di aggiungere facilmente autenticazione e autorizzazione alle proprie applicazioni.

  • Gestisci l'archiviazione dei dati: Appwrite offre una soluzione flessibile e scalabile che consente agli sviluppatori di archiviare, recuperare ed eseguire query facilmente sui dati.

  • Funzioni di scrittura: Appwrite fornisce il runtime di una funzione che consente agli sviluppatori di creare logiche di backend e integrazioni personalizzate senza mantenere i server.

  • Configura webhook: puoi ricevere una notifica SMS quando un nuovo utente si registra per la tua app. Puoi anche utilizzare i webhook per attivare azioni come lo svuotamento della cache quando uno dei documenti della tua app viene aggiornato.

Alternativa a sorgente chiuso

  • Base di fuoco

🔎 Come si comportano su cinque in questo elenco

  • ~24K GitHub ⭐

  • Valori per i contributi comunitari: 4/5

  • Valori per lo sviluppo di nuove funzionalità: 4/5

  • Velocità di rilascio: 3/5

  • Cadenza di supporto: 4/5

Astro è un nuovo framework per la creazione di siti Web che consente di utilizzare un framework JavaScript che genera un sito statico con zero JavaScript. Per impostazione predefinita, Astro non fornisce JavaScript al client e esegue il rendering dei componenti in HTML. Ciò aiuta ad accelerare le prestazioni del sito Web, poiché più JavaScript possono portare a tempi di caricamento più lenti. Se è necessario utilizzare JavaScript sul tuo sito Web, Astro offre la possibilità di utilizzare l'idratazione parziale tramite le direttive del client. Queste direttive ti consentono di specificare quando e come un componente deve essere idratato o aggiungere JavaScript.

Professionisti

  • Il Pattern offre tutti i vantaggi dell'architettura basata su componenti, come la riusabilità e la manutenibilità.

  • I siti web sono SEO-friendly perché tutto il contenuto statico viene visualizzato sul server.

Contro

  • Non c’è molto dibattito sull’argomento (architettura dell’Isola di Astro).

  • Molti framework affermano di supportare il modello, il che rende difficile scegliere tra di loro.

Uno degli aspetti positivi di Astro è che supporta librerie di componenti popolari come React/Preact (JSX), Svelte, Vue e componenti web, consentendo agli sviluppatori che hanno già familiarità con questi strumenti di essere subito operativi.

Astro si presenta come,

  • Incentrato sui contenuti: Astro è stato progettato per creare siti Web ricchi di contenuti. Ciò include la maggior parte dei siti di marketing, siti di pubblicazione, siti di documentazione, blog, portfolio e alcuni siti di e-commerce.

  • Server-first: Astro sfrutta il più possibile il rendering lato server rispetto al rendering lato client. Questo è lo stesso approccio che i tradizionali framework lato server – PHP, Ruby on Rails, ecc. – utilizzano da decenni. Ma non è necessario imparare una seconda lingua lato server per sbloccarlo.

  • Completamente flessibile: Astro è un framework web all-in-one con tutto il necessario per creare un sito web. Astro include una sintassi dei componenti, routing basato su file, gestione delle risorse, un processo di creazione, raggruppamento, ottimizzazioni, recupero dei dati e altro ancora.

🔎 Come si comportano al quinto posto in questo elenco

  • ~24K GitHub ⭐

  • Valori per i contributi comunitari: 4/5

  • Valori per lo sviluppo di nuove funzionalità: 4/5

  • Velocità di rilascio: 3/5

  • Cadenza di supporto: 4/5

Negli ultimi anni, GraphQL ha guadagnato molto interesse come alternativa alle API REST. GraphQL è un linguaggio di query che consente ai client di richiedere dati dalla forma specifica da un server, portando a una comunicazione più efficiente e flessibile tra client e server.

Nhost è una piattaforma backend basata su cloud che utilizza GraphQL per consentire agli sviluppatori di creare e distribuire applicazioni serverless più velocemente. Nhost offre una gamma di funzionalità che semplificano la creazione di applicazioni scalabili e ricche di funzionalità, tra cui gestione degli utenti, archiviazione dei dati, funzioni serverless, comunicazione in tempo reale e altro ancora.

Professionisti

  • Fornisce API GraphQL in tempo reale istantanee basate sulle tabelle e colonne nel database.

  • Supporta funzioni serverless.

Contro

  • Le opzioni in tempo reale sono limitate.

Uno dei principali vantaggi dell'utilizzo di Nhost è che consente agli sviluppatori di sfruttare GraphQL senza preoccuparsi delle complessità legate alla configurazione e alla manutenzione del proprio server GraphQL.

Con Nhost puoi configurare,

  • Autenticazione: Nhost fornisce un sistema completo di gestione degli utenti che aggiunge facilmente autenticazione e autorizzazione alla tua applicazione. Ciò include il supporto per i metodi di autenticazione più diffusi come e-mail/password, accesso social e altro.

  • Funzioni serverless: Nhost ti consente di creare logica backend e integrazioni personalizzate senza la necessità di mantenere i server. Ciò semplifica l'aggiunta di funzionalità personalizzate alla tua applicazione e il ridimensionamento in base alle necessità.

  • API GraphQL in tempo reale: Nhost include un motore di comunicazione in tempo reale che ti consente di gestire gli abbonamenti per sincronizzare i dati in tempo reale.

Alternativa a sorgente chiuso

🔎 Come si comportano su cinque in questo elenco

  • ~49K GitHub ⭐

  • Valori per i contributi comunitari: 4/5

  • Valori per lo sviluppo di nuove funzionalità: 4/5

  • Velocità di rilascio: 3/5

  • Cadenza di supporto: 4/5

Hoppscotch è uno strumento di test API open source che aiuta gli sviluppatori a testare ed eseguire il debug delle loro API in modo rapido e semplice. È uno strumento leggero che può essere utilizzato per inviare richieste HTTP e analizzare le risposte dall'API.

Professionisti

  • Leggero e veloce.

  • Generatore di documentazione.

  • Il supporto per WebSocket consente anche SSE, Socket.IO e MQTT

Contro

  • Poca documentazione

  • Funzionalità mancanti per l'automazione dei test

  • È necessario aggiungere alcune funzionalità tramite CLI.

Una delle caratteristiche critiche di Hoppscotch è la sua semplicità. Ha un'interfaccia semplice e intuitiva che consente agli sviluppatori di iniziare facilmente con i test delle API. Include inoltre varie funzionalità che semplificano la personalizzazione e l'automazione dei test API, incluso il supporto per variabili, gestione dell'ambiente e altro ancora.

La campana viene fornita con

  • Supporto REST e GraphQL: Hoppscotch supporta sia le API REST che GraphQL, rendendolo uno strumento versatile che può essere utilizzato per testare le API create utilizzando un'ampia gamma di tecnologie.

  • Piattaforma in tempo reale: Hoppscotch include una piattaforma in tempo reale che consente agli sviluppatori di testare ed eseguire il debug delle proprie connessioni socket o canali. Ciò semplifica l'identificazione e la risoluzione dei problemi non appena si presentano.

  • Documentazione API: Hoppscotch consente agli sviluppatori di creare una documentazione API completa in modo rapido e semplice. Ciò può essere particolarmente utile per aiutare altri sviluppatori a comprendere e utilizzare la tua API.

  • Supporto PWA: Hoppscotch include il supporto per le Progressive Web App (PWA), consentendo agli sviluppatori di testare ed eseguire il debug delle API utilizzate dalle loro PWA in modo semplice.

Alternativa a sorgente chiuso

🔎 Come si comportano al quinto posto in questo elenco

  • ~33K GitHub ⭐

  • Valori per i contributi comunitari: 4/5

  • Valori per lo sviluppo di nuove funzionalità: 5/5

  • Velocità di rilascio: 5/5

  • Cadenza di supporto: 4/5

NocoDB è un progetto open source che fornisce una piattaforma basata sul Web per la creazione e la gestione di database online. È progettato per essere semplice e flessibile e consente agli utenti di creare database e flussi di lavoro personalizzati per soddisfare le loro esigenze specifiche.

Professionisti

  • Assegna e monitora le attività, è disponibile l'integrazione di terze parti

  • Trasforma il tuo database SQL in un foglio di calcolo intelligente

Contro

  • Nessuna versione cloud (aperta in beta privata)

Una delle caratteristiche principali di NocoDB è il suo modello di dati personalizzabile. Gli utenti possono creare tabelle di database personalizzate e definire i campi e le relazioni tra di essi. Ciò consente agli utenti di modellare i propri dati in un modo che abbia senso per il loro caso d'uso specifico.

Con NocoDB puoi

  • Configurazione di un'interfaccia avanzata per il foglio di calcolo: viene fornita con diverse operazioni che consentono la configurazione di una funzionalità completa del foglio di calcolo, comprese le operazioni CRUD, i tipi di autorizzazione di visualizzazione e la possibilità di condividere basi e visualizzazioni.

  • Configurazione delle automazioni: NocoDB include il supporto per le automazioni, che consente di automatizzare attività e flussi di lavoro ripetitivi. Ciò può aiutarti a risparmiare tempo e a migliorare l'efficienza quando lavori con i tuoi dati.

  • Configura l'API headless: NocoDB include un'API headless che ti consente di accedere e manipolare i tuoi dati in modo programmatico. Ciò può essere particolarmente utile per gli sviluppatori che desiderano creare integrazioni personalizzate o applicazioni che funzionino con NocoDB.

Alternativa a sorgente chiuso

Come fanno su cinque per questo elenco

  • ~51K GitHub ⭐

  • Valori per i contributi comunitari: 4/5

  • Valori per lo sviluppo di nuove funzionalità: 5/5

  • Velocità di rilascio: 5/5

  • Cadenza di supporto: 4/5

Strapi è un sistema di gestione dei contenuti (CMS) open source che consente agli sviluppatori di creare e gestire API per applicazioni ricche di contenuti. È progettato per essere semplice e flessibile e consente agli sviluppatori di creare e distribuire rapidamente API per le loro applicazioni.

Professionisti

  • Rapido e scalabile

  • Sistema di autenticazione integrato

  • Flussi di lavoro multipli per le automazioni

Contro

  • Difficile eseguire la migrazione delle API esistenti

  • Il supporto di TypeScript è limitato

Una delle caratteristiche principali di Strapi è la sua architettura basata su plugin. Strapi include una gamma di plug-in che consentono agli sviluppatori di aggiungere facilmente funzionalità alle proprie API, come il supporto per il caricamento di file, l'invio di e-mail e altro ancora. Questi plugin possono essere facilmente installati e configurati, semplificando la personalizzazione della funzionalità della tua API.

Oltre alla sua architettura a plugin, Strapi include anche un pannello di amministrazione intuitivo che consente agli sviluppatori e agli editori di contenuti di gestire facilmente i propri contenuti. Ciò include il supporto per la creazione e la gestione dei tipi di contenuto e l'anteprima e la pubblicazione del contenuto.

Con Strapi ottieni,

  • GraphQL o RESTful: Strapi consente agli sviluppatori di scegliere di utilizzare le API GraphQL o RESTful, a seconda delle loro esigenze. Ciò la rende una piattaforma flessibile che può essere utilizzata per creare API per varie applicazioni.

  • Webhook: Strapi include il supporto dei webhook, consentendo agli sviluppatori di attivare eventi e azioni personalizzati in base a determinate condizioni. Ciò può essere particolarmente utile per creare integrazioni e automatizzare i flussi di lavoro.

  • Autenticazione e autorizzazioni: Strapi include un sistema di gestione degli utenti che consente agli sviluppatori di aggiungere facilmente autenticazione e autorizzazione alle proprie API. Ciò include il supporto per i metodi di autenticazione più diffusi come e-mail/password, accesso social e altro.

  • Internazionalizzazione: Strapi include il supporto per l'internazionalizzazione, che consente agli sviluppatori di creare API che supportano facilmente più lingue. Ciò può essere particolarmente utile per creare applicazioni rivolte a un pubblico globale.

Alternativa a sorgente chiuso

  • Contenuto

Grazie per aver letto questo! Mi piacerebbe sentire i tuoi pensieri e il tuo elenco di progetti open source.