Skip to content
/ sofie Public

The elegant full-stack web framework that makes Rust web development effortless

License

Notifications You must be signed in to change notification settings

ararog/sofie

Sofie

The elegant full-stack web framework that makes Rust web development effortless

Sofie is a comprehensive, production-ready web framework for Rust that combines simplicity with power. Built on top of VeTiS, it provides everything you need to build modern web applications - from REST APIs to full-featured web services - with a clean, intuitive API that makes development a joy.

Why Sofie?

  • Developer Experience: Ergonomic API design that feels natural and intuitive
  • High Performance: Powered by VeTiS for blazing-fast request handling
  • Flexible Runtime: Choose between Tokio or Smol async runtimes
  • Production Ready: Built-in security, middleware, and monitoring capabilities
  • All-in-One: Full-stack features from routing to authentication
  • Modern Architecture: Designed for today's web applications

Quick Start

Add Sofie to your Cargo.toml:

sofie = { version = "0.1.0", features = ["vetis"] }

Usage Example

Here's how simple it is to create a web application with Sofie:

use sofie::App;
use http_body_util::{Full};
use bytes::Bytes;
use hyper::Response;

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    std_logger::Config::logfmt().init();

    let mut app = App::new();

    app.serve(|_| async move {
        Ok(Response::new(Full::new(Bytes::from("Hello World"))))
    }).await?;

    Ok(())
}

Perfect For

  • REST APIs: Build robust, scalable API services
  • Web Applications: Create full-featured web applications
  • Microservices: Develop lightweight, focused services
  • Backend Services: Power modern frontend applications
  • Real-time Apps: WebSocket and streaming applications
  • AI Integration: Build AI-powered web services

Supported Runtimes

  • tokio - High-performance async runtime
  • smol - Lightweight async runtime

Crate Features

  • tokio-rt (default) - Tokio runtime support
  • smol-rt - Smol runtime support
  • vetis - VeTiS server integration

License

MIT

Author

Rogerio Pereira Araujo rogerio.araujo@gmail.com

About

The elegant full-stack web framework that makes Rust web development effortless

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

 

Packages

No packages published

Contributors 2

  •  
  •