App socialWeb e AndroidIn sviluppoV1.0In uscita il · Estate 2027

Ble

Connettiti, condividi, incontra.

Ble riunisce in un'unica app un feed verticale di foto e video, la scoperta di profili tramite card da scorrere, i match, la messaggistica e le chiamate audio e video. Per l'amicizia come per l'amore, con uno spazio separato e protetto per i 14-17enni.

Web e AndroidChiamate audio e videoFrancese e inglese
Ble su computer: la card del profilo da scorrere, il selettore Amicizia / Amore, le storie, i nuovi match e i messaggi
Ble su mobile: la pila di card dei profili
Screenshot reali, con membri dimostrativi dai ritratti illustrati

Il concept

Tre usi, un'unica app

Oggi si condivide su un'app, si conoscono persone su un'altra e si chatta su una terza. Ble riunisce le tre cose, con gli stessi amici e lo stesso profilo.

Condividere

Un feed verticale di foto e video, «Per te» o «Seguiti», con like, commenti, hashtag e storie di 24 ore.

Conoscere

Card di profili da scorrere: passare, mettere like o super like. Un interesse reciproco crea un match, nell'amicizia come nell'amore.

Chattare

Una messaggistica in tempo reale che nasce dal match: foto, reazioni, conferme di lettura, «sta scrivendo», chiamate audio e video.

In immagini

L'app, così com'è

Home page pubblica di Ble: «Connettiti, condividi, incontra.»
Home
Il feed verticale «Per te»: un post con hashtag, like e commenti
Feed «Per te»
La messaggistica: nuovi match, conversazioni, reazioni e pulsanti di chiamata audio e video
Messaggi
Il mio profilo: anteprima della card, sei foto e verifica del profilo
Il mio profilo
  • Scopri su mobile: la pila di card dei profili
    Scopri
  • Il feed verticale a schermo intero su mobile
    Feed
  • Una conversazione su mobile, con foto e reazione
    Conversazione
  • La pagina di un membro su mobile: contatori, interessi e post
    Pagina membro

Funzionalità

Tutto ciò che ci si aspetta da un'app social, e qualcosa in più

Profilo completo

Intenzioni, interessi, fino a sei foto e badge di verifica tramite selfie controllato dalla moderazione.

Filtri di scoperta

Età, generi, stessa città o raggio in chilometri, posizione arrotondata al chilometro.

Annulla

Tornare all'ultimo profilo scartato, vedere chi ha messo like, celebrare ogni match.

Chiamate audio e video

Da dispositivo a dispositivo, solo tra membri che hanno fatto match, con relay sicuro.

Storie

Visibili per 24 ore, poi eliminate automaticamente.

Ricerca

Membri e hashtag, senza distinzione di accenti, profili seguiti e pagine dei membri.

Notifiche

In tempo reale nell'app, push su Android, compresa la chiamata in arrivo a schermo bloccato.

Chiaro o scuro

Interfaccia in francese e in inglese, modalità chiara e scura, animazioni curate.

Sicurezza dei membri

Due spazi separati, scritti nel codice

La separazione per età non è un filtro di visualizzazione: è una regola del dominio, verificata dall'API a ogni interazione. Un membro dello spazio adolescenti non può vedere né contattare un adulto, né essere contattato da un adulto.

14-17 anni

Solo amicizia e interessi comuni.

18 anni e oltre

Amicizia e incontri sentimentali.

  • Passaggio automatico a 18 anniUn'attività in background sposta il membro nello spazio adulti e chiude le sue conversazioni dello spazio adolescenti.
  • Blocco totaleUn blocco rende i due membri invisibili l'uno all'altro, ovunque nell'app.
  • Segnalazioni prioritarieEtà sospetta e molestie passano in cima alla coda di moderazione.
  • Moderazione e amministrazioneCoda delle segnalazioni, sospensione, rimozione dei contenuti, verifica dei profili, dashboard.

Prima della pubblicazione sugli store, la verifica dell'età, il consenso dei genitori e la classificazione per età saranno convalidati con un legale.

Tecnologie e architettura

Sotto il cofano di Ble

Un'API .NET 10 in Clean Architecture, le cui regole di dipendenza sono verificate da test, un web Blazor e un'app Android .NET MAUI che condividono gli stessi contratti e lo stesso client: il tempo reale passa da SignalR, le chiamate da WebRTC, i media direttamente verso lo storage.

Schema dell'architetturaCuore del prodottoFlusso di dati
  1. 01

    Applicazioni

    • Ble.WebBlazor Interactive Server, GSAP, Three.js, Lenis
    • Ble.Mobile.NET MAUI nativo in XAML, MVVM, core testabile senza MAUI
    • Ble.Client + Ble.ContractsClient HTTP e tempo reale tipizzato, DTO condivisi: nessun client vede il dominio
  2. 02

    Ble.Api

    ASP.NET Core, controller REST e hub SignalR

    • Ble.ApplicationCasi d'uso, porte, validazione, HybridCache
    • Ble.DomainMembri, scoperta, messaggistica, feed, storie, sicurezza, spazi per età
    • ChatHubMessaggi, match, digitazione, reazioni, notifiche, segnalazione delle chiamate
    • Attività in backgroundPassaggio allo spazio adulti a 18 anni, eliminazione delle storie, invio delle notifiche push
  3. 03

    Ble.Infrastructure

    • PostgreSQL 17EF Core 10, ricerca per trigrammi
    • Redis 7Cache distribuita e backplane SignalR tra istanze
    • Azure Blob StorageFoto e video caricati direttamente tramite URL firmato
    • coturnRelay TURN/STUN delle chiamate, credenziali temporanee

Il percorso di un messaggio

  1. 1Il web (circuito Blazor) o l'app Android invia il messaggio all'API tramite Ble.Client.
  2. 2L'API passa per autenticazione, limitazione della frequenza e autorizzazione, poi il caso d'uso verifica il match, il blocco e lo spazio per età.
  3. 3Il messaggio viene salvato in PostgreSQL; un eventuale media è già nello storage Blob.
  4. 4ChatHub lo invia in tempo reale ai dispositivi connessi, tramite Redis se sono attive più istanze.
  5. 5Un dispositivo offline riceve una notifica push Firebase.

Le scelte di architettura

  • Livelli verificati dai testUn progetto di test di architettura fa fallire la build se un livello dipende da quello sbagliato.
  • Tutela dei minori nel dominioSpazi per adolescenti (14-17 anni) e per adulti separati in modo rigoroso, scritti come regola di business e non come semplice filtro di visualizzazione.
  • Testato sotto carico8.000 utenti simultanei e 7.200 connessioni in tempo reale su una postazione di sviluppo, senza errori.
  • I media non passano dall'APICaricamento diretto nello storage con un URL firmato: l'API resta leggera quando il traffico cresce.

Tutte le tecnologie, per famiglia

Backend

  • .NET 10
  • C#
  • ASP.NET Core
  • EF Core 10
  • FluentValidation 12
  • HybridCache
  • OpenAPI
  • Scalar

Front-end

  • Blazor (Interactive Server)
  • Razor Class Library
  • Tailwind CSS 4
  • esbuild
  • GSAP
  • Three.js
  • Lenis

Mobile

  • .NET MAUI
  • XAML
  • CommunityToolkit.Mvvm
  • MediaElement
  • SkiaSharp
  • Lottie
  • Android 14+

Dati e archiviazione

  • PostgreSQL 17
  • Redis 7
  • Azure Blob Storage
  • Azurite
  • pg_stat_statements

Tempo reale

  • SignalR
  • Backplane Redis
  • WebRTC
  • coturn (TURN/STUN)

Autenticazione e sicurezza

  • ASP.NET Core Identity
  • Google Sign-In
  • LinkedIn (OpenID Connect)
  • Rate limiting
  • Data Protection
  • HSTS
  • Antiforgery
  • Spazi per età separati

Pagamenti e servizi di terzi

  • Firebase Cloud Messaging
  • MailKit (SMTP)
  • Mailpit

Qualità e strumenti

  • xUnit
  • NSubstitute
  • Testcontainers
  • Test di architettura
  • Test di carico
  • Playwright

DevOps e CI/CD

  • Docker (multi-stage)
  • Docker Compose

Monitoraggio

  • /health/live
  • /health/ready
  • Log ASP.NET Core

Inventario ricavato dal codice sorgente e dalla configurazione del prodotto.

Domande frequenti

Tutto su Ble

Solo in parte. Ble serve anche a fare amicizia, condividere le proprie passioni e chattare liberamente. Ogni membro sceglie le proprie intenzioni: amicizia, amore, o entrambe per gli adulti.

Un'app social per la Sua community?

Ble mostra ciò che il nostro team sa costruire: tempo reale, chiamate, media, moderazione e tutela dei minori. Ci parli del Suo progetto.