Skip to content

Commit

Permalink
refactor: streamline readme (#403)
Browse files Browse the repository at this point in the history
  • Loading branch information
Valerioageno authored Jan 22, 2025
1 parent 3ee47e9 commit 8730bdb
Showing 1 changed file with 15 additions and 32 deletions.
47 changes: 15 additions & 32 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,51 +24,34 @@ Some of its features are:
- 🧬 Server Side Rendering
- 🔥 Hot Module Reload

## 📖 Documentation
## Documentation

The [documentation](https://tuono.dev/) is available on
[tuono.dev](https://tuono.dev/).

## Introduction
## Installation

**NodeJs/Deno/Bun are the only runtimes that allow a React app to be full-stack right? (no)**
Available on MacOS, Linux and Windows.

Tuono is a full-stack React framework with the server side written in Rust.
Because of this, Tuono is extremely fast, and the requests are handled by a multithreaded Rust server.
React is still React - it is just superpowered.

**Rust is a hard language, then writing server-side code is hard as well, right? (no again)**

Tuono provides a collection of utilities to handle the server side code seamlessly with the React code.
Each server-side route is managed in a separate file alongside the React route. The routing is handled
by Tuono based on the files defined within the `./src/routes` directory.

**How is Tuono different from Next.js?**

The Tuono API tries to stick as much as possible to the Next.js one (or at least takes a huge inspiration
from it). The major difference is the backend system. While Next.js relies entirely on Node/Deno/Bun,
Tuono runs the server without any intermediary runtime. This enables impressive performance improvements
(check the benchmarks [here](https://github.com/tuono-labs/tuono-benchmarks)).
```sh
cargo install tuono
```

## Getting started

Tuono is the CLI that provides all the needed commands to handle the full-stack project.
To download it is required [cargo](https://doc.rust-lang.org/cargo/), which is the [rust](https://www.rust-lang.org/)
package manager.

Then run `cargo install tuono`.

To list all the available commands, run `tuono -h`
Create a new project with:

To create a new project, run `tuono new [NAME]` (optionally, you can pass the `--template` (or `-t`) flag - check the
[examples](https://github.com/tuono-labs/tuono/tree/main/examples) folder).
```sh
tuono new [PROJECT_NAME]
```

Then, to run the local development environment, install the JS dependencies (`npm install`) and run inside the project folder `tuono dev`
> You can optionally pass the --template (or -t) flag to directly start from a [template](https://github.com/tuono-labs/tuono/tree/main/examples)
Finally, when the project is ready to be deployed, just run `tuono build` to create the final React assets
and to set the server project in `production` mode.
Now just install the dependencies with you favourite JS package manager (i.e. `npm install`) and start the development environment

Now to execute it just run `cargo run --release`.
```sh
tuono dev
```

## Contributing

Expand Down

0 comments on commit 8730bdb

Please sign in to comment.