• Stars
    star
    157
  • Rank 238,399 (Top 5 %)
  • Language
    C#
  • License
    MIT License
  • Created over 4 years ago
  • Updated 9 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A collection of samples for Fusion library: https://github.com/servicetitan/Stl.Fusion

Welcome to the collection of Fusion samples!

All project updates are published on its Discord Server; it's also the best place for Q/A.
Build Discord Server

Don't know what Fusion is? You should! Fusion is your #1 partner in crime if you're building a real-time app (an online app delivering some or all updates in real-time) or a high-load app. Moreover, it plays really well with Blazor and works on MAUI.

Curious to see Fusion in action? Explore Actual Chat – a very new chat app built by the minds behind Fusion.

Actual Chat fuses real-time audio, live transcription, and AI assistance to let you communicate with utmost efficiency. With clients for WebAssembly, iOS, Android, and Windows, it boasts nearly 100% code sharing across these platforms. Beyond real-time updates, several of its features, like offline mode, are powered by Fusion.

We're posting some code examples from Actual Chat codebase here, so join this chat to learn how we use it in a real app.

Fusion allows you to build real-time UIs like this one — and it's nearly as easy as if there were no logic related to real-time updates at all:

Play with live version of this sample right now!

Running Samples

Build & run locally with .NET 8.0 SDK:

# Run this command first
dotnet build
Sample Command
HelloCart dotnet run -p src/HelloCart/HelloCart.csproj
HelloWorld dotnet run -p src/HelloWorld/HelloWorld.csproj
HelloBlazorServer dotnet run -p src/HelloBlazorServer/HelloBlazorServer.csproj + open http://localhost:5005/
HelloBlazorHybrid dotnet run -p src/HelloBlazorHybrid/Server/Server.csproj + open http://localhost:5005/
Blazor Samples dotnet run -p src/Blazor/Server/Server.csproj + open http://localhost:5005/
MiniRpc dotnet run -p src/MiniRpc/MiniRpc.csproj
MultiServerRpc dotnet run -p src/MultiServerRpc/MultiServerRpc.csproj
Benchmark dotnet run -c:Release -p src/Benchmark/Benchmark.csproj
RpcBenchmark dotnet run -c:Release -p src/RpcBenchmark/RpcBenchmark.csproj
Tutorial Install Try .NET + dotnet try --port 50005 docs/tutorial

Build & run with Docker + Docker Compose:

# Run this command first
docker-compose build
Sample Command
HelloCart docker-compose run sample_hello_cart dotnet Samples.HelloCart.dll
HelloWorld docker-compose run sample_hello_world dotnet Samples.HelloWorld.dll
HelloBlazorServer docker-compose run --service-ports sample_hello_blazor_server + open http://localhost:5005/
HelloBlazorHybrid docker-compose run --service-ports sample_hello_blazor_hybrid + open http://localhost:5005/
Blazor Samples docker-compose run --service-ports sample_blazor + open http://localhost:5005/
MiniRpc docker-compose run sample_mini_rpc dotnet Samples.MiniRpc.dll
MultiServerRpc docker-compose run sample_multi_server_rpc dotnet Samples.MultiServerRpc.dll
Benchmark docker-compose run sample_benchmark dotnet Samples.Benchmark.dll
RpcBenchmark docker-compose run sample_rpc_benchmark dotnet Samples.RpcBenchmark.dll
Tutorial docker-compose run --service-ports tutorial + open https://localhost:50005/README.md

A detailed description of nearly every sample can be found here: https://servicetitan.github.io/Stl.Fusion.Samples/

Useful Links

P.S. If you've already spent some time learning about Fusion, please help us to make it better by completing Fusion Feedback Form (1…3 min).