Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/timclicks/intercity

A reasonable web framework. Others are faster, but this is likely to be more economical.
https://github.com/timclicks/intercity

Last synced: 3 days ago
JSON representation

A reasonable web framework. Others are faster, but this is likely to be more economical.

Awesome Lists containing this project

README

        

# intercity

> A web framework for people wanting to build microservices good
> and build other stuff good too.

Intercity is a reasonable web framework. Others are faster, but this
is might be more economical. Intercity provides a comfortable ride
with low cognitive cost.

Async code is difficult. And largely unnecessary. The C10k problem isn't
a problem in today's world. We have cloud servers these days. It's okay
to scale out horizontally when needed. We're not stuck to a single box.

When you're coding with intercity, you can do what you want. Each request
is served by its own thread. if you want to connect to a database, then
connect to a database. If you want to write to a file, then write to
a file.

## Status

Just an idea. Nothing works.

## Idea

Create an opinonated stack that uses synchronous (blocking) I/O. There are
very few frameworks that have avoided async. Perhaps only `rouille`.

My problem with `rouille` is that it makes you do too much thinking. I
don't want to decide on a templating language every time.

Stack

- http: tiny-http, rustls
- routing: intercity
- everything in the middle: intercity
- model: diesel
- views: minijinja, HTMX

## Why "intercity"?

It's a refererce to cheap, high-quality train services in Europe, combined
with the Ruby on Rails and Express web framework names.