Laravel 
Laravel is an incredibly productive web framework written in PHP. If you seek for the fastest time-to-market, huge store of packages for real-world busineess use case and exceptional local-to-production experience, battle tested components and dead-simple deployment, Laravel is the go-to choice for teams that want to ship fast.
Hello world 
Here is a simple hello world written on both Laravel and Mantis.
php
use Illuminate\Support\Facades\Route;
Route::get("/", function(): string {
  return "hello world";
})->name("index");v
module main
import khalyomede.mantis.http { app_create, App, Response }
import khalyomede.mantis.http.route
fn main() {
  app := create_app(
    routes: [
      route.get(name: "index", path: "/", callback: fn (app App) !Response {
        return app.response.html(content: "hello world")
      })
    ]
  )
  app.serve() or { panic(err) }
}Form validation 
php
use Illuminate\Http\RedirectResponse;
use Illuminate\Support\Facades\Routes;
use App\Models\Post;
use App\Http\Requests\Post\UpdateRequest;
Route::put("/post/{post}", function(UpdateRequest $request, Post $post): RedirectResponse {
  $validated = $request->validated();
  $post->update([
    "title" => $validated["title"],
    "excerpt" => $validated["excerpt"],
  ]);
  return redirect()->route("post.show", $post);
})->name("post.update");v
module main
import khalyomede.mantis.database { Database, DatabaseConnection }
import khalyomede.mantis.http { app_create, App, Response }
import khalyomede.mantis.http.route
import khalyomede.mantis.validation { validate, Rule, Value }
struct Filled {}
fn (rule Filled) validate(value Value) bool {
  return match value {
    string {
      value.trim_space().len > 0
    }
    else { false }
  }
}
fn (rule Filled) message(key string) string {
  return "The ${key} must be a filled."
}
struct Post {
  id u64
  title string
  excerpt string
}
fn main() {
  app := create_app(
    database: Database{
      connection: DatabaseConnection{
        by_default: true
        driver: .sqlite
        database: 'database.sqlite'
    }
    routes: [
      route.get(name: "post.update", path: "/post/{post}", callback: fn (app App) !Response {
        id := app.route_parameter("post") or {
          return app.response.html(status: .not_found)
        }
        posts := app.database.all[Post]("SELECT title, excerpt FROM posts WHERE id = ${id}")!
        post := posts[0] or {
          return app.response.html(status: .not_found)
        }
        title := app.request.form("title") or {
          return app.response.html(status: .unprocessable_entity)
        }
        excerpt := app.request.form("excerpt") or {
          return app.response.html(status: .unprocessable_entity)
        }
        data := {
          "title": Value(title)
          "excerpt": Value(excerpt)
        }
        rules := {
          "title": [
            Filled{}
          ]
          "excerpt": [
            Filled{}
          ]
        }
        validate(data, rules)!
        app.database.run("UPDATE posts SET title = ${title}, excerpt = ${excerpt} WHERE id = ${id}")!
        return app.response.redirect("/post/{$id}", {})
      })
    ]
  )
  app.serve() or { panic(err) }
}