Files
tuono/README.md
T

77 lines
1.6 KiB
Markdown
Raw Normal View History

2024-05-12 21:52:04 +02:00
<p align="center">
2024-06-03 20:59:39 +02:00
<img src="https://raw.githubusercontent.com/Valerioageno/tuono/main/assets/logo.png" width="200px">
2024-05-12 21:52:04 +02:00
</p>
<h1 align="center">Tuono<br>The react/rust fullstack framework</h1>
2024-05-18 11:50:56 +02:00
<p align="center">
⚠️ This project is under heavy development. API might drastically change ⚠️
</p>
2024-05-02 20:49:46 +02:00
Tuono (Italian word for "thunder", pronounced /2 Oh No/).
Why Tuono? Just a badass name.
2024-04-27 10:10:50 +02:00
2024-06-05 21:17:26 +02:00
## Introduction
NodeJs/Deno/Bun are the only tools that make a React app fullstack right? (TLDR; no)
Techically the only thing React needs to do on the backend side is to render the HTML and returns it in the response payload and for it just a JS engine is required.
Why then we need to bring the entire runtime?
Tuono wants to prove that it's possible creating fully fledged react applications without the need to host them on a JS runtime server leveraging the best of the two worlds:
super powered server and crazy cool development experience.
## Requirements
- rust
- cargo
- node
- pnpm (other package managers support will be added soon)
2024-05-18 11:50:56 +02:00
## Installation
```
cargo install tuono
```
2024-05-18 20:45:35 +02:00
## Create a new project
```
2024-06-05 21:17:26 +02:00
tuono new [NAME]
2024-05-18 20:45:35 +02:00
```
2024-05-18 11:50:56 +02:00
## Development
```
tuono dev
```
2024-04-27 10:10:50 +02:00
## Features
2024-06-05 21:17:26 +02:00
- [x] FS routing
- [x] Hot Module Reload
- [x] CSS/SCSS modules
- [x] Rust based server side rendering
- [x] Multi thread backend
- [x] Development environment
- [ ] Create custom APIs
- [ ] Image optimization
- [ ] Build optimization
> 💡 Any suggestion or improvement is strongly appreciated
2024-04-27 10:10:50 +02:00
## Folder structure
```
2024-06-05 21:17:26 +02:00
| public/
2024-04-27 10:10:50 +02:00
- src/
2024-06-05 21:17:26 +02:00
| routes/
| styles/
| package.json
| Cargo.toml
| .gitignore
| tsconfig.json
2024-04-27 10:10:50 +02:00
```
2024-05-11 15:08:49 +02:00
2024-06-05 21:17:26 +02:00
## License
2024-05-11 15:08:49 +02:00
2024-06-05 21:17:26 +02:00
This project is licensed under the MIT License.