mirror of
https://github.com/tuono-labs/tuono
synced 2026-07-25 12:52:47 -07:00
doc: update README.md
This commit is contained in:
@@ -10,6 +10,23 @@
|
||||
Tuono (Italian word for "thunder", pronounced /2 Oh No/).
|
||||
Why Tuono? Just a badass name.
|
||||
|
||||
## 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)
|
||||
|
||||
## Installation
|
||||
|
||||
```
|
||||
@@ -19,7 +36,7 @@ cargo install tuono
|
||||
## Create a new project
|
||||
|
||||
```
|
||||
tuono new
|
||||
tuono new [NAME]
|
||||
```
|
||||
|
||||
## Development
|
||||
@@ -27,30 +44,33 @@ tuono new
|
||||
```
|
||||
tuono dev
|
||||
```
|
||||
|
||||
## Features
|
||||
- Rust based server side rendering
|
||||
- FS routing
|
||||
- CSS modules
|
||||
- Hot Module Reload
|
||||
- Multi thread backend
|
||||
|
||||
- [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
|
||||
|
||||
## Folder structure
|
||||
|
||||
```
|
||||
- .tuono
|
||||
- public/
|
||||
| public/
|
||||
- src/
|
||||
| - routes/
|
||||
| | - api/
|
||||
| routes/
|
||||
| styles/
|
||||
| package.json
|
||||
| Cargo.toml
|
||||
| .gitignore
|
||||
| tsconfig.json
|
||||
```
|
||||
|
||||
```tsx
|
||||
// Data is passed by the loading function
|
||||
const IndexPage = ({data, isLoading, isError}) => <h1>Index Page</h1>
|
||||
## License
|
||||
|
||||
export const Route = createFileRoute({
|
||||
loader: (params) => fetchApi(params),
|
||||
component: IndexPage
|
||||
})
|
||||
```
|
||||
This project is licensed under the MIT License.
|
||||
|
||||
Reference in New Issue
Block a user