Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/fastrodev/fastro
Full Stack Framework for Deno, TypeScript, Preact JS and Tailwind CSS
https://github.com/fastrodev/fastro
backend deno fastro framework frontend fullstack middleware preact react typescript
Last synced: 1 day ago
JSON representation
Full Stack Framework for Deno, TypeScript, Preact JS and Tailwind CSS
- Host: GitHub
- URL: https://github.com/fastrodev/fastro
- Owner: fastrodev
- Created: 2020-05-15T22:08:15.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2024-10-29T09:30:16.000Z (12 days ago)
- Last Synced: 2024-10-29T09:57:43.524Z (12 days ago)
- Topics: backend, deno, fastro, framework, frontend, fullstack, middleware, preact, react, typescript
- Language: TypeScript
- Homepage: https://fastro.dev
- Size: 15.5 MB
- Stars: 219
- Watchers: 4
- Forks: 5
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
Awesome Lists containing this project
README
# Fastro
[![build](https://github.com/fastrodev/fastro/actions/workflows/build.yml/badge.svg)](https://github.com/fastrodev/fastro/actions/workflows/build.yml)
[![bench](https://github.com/fastrodev/fastro/actions/workflows/bench.yml/badge.svg)](https://github.com/fastrodev/fastro/actions/workflows/bench.yml)
[![deno doc](https://doc.deno.land/badge.svg)](https://deno.land/x/fastro/mod.ts)
[![Coverage Status](https://coveralls.io/repos/github/fastrodev/fastro/badge.svg?branch=main)](https://coveralls.io/github/fastrodev/fastro?branch=main)Full Stack Framework for Deno, TypeScript, Preact JS and Tailwind CSS
With [deno near native performance](https://fastro.deno.dev/docs/benchmarks),
you can:- Manage your app and routing cleanly with
[builder pattern](https://en.wikipedia.org/wiki/Builder_pattern)
- Leverage existing Deno objects and methods such as
[Request](jsr:api?s=Request), [Headers](jsr:api?s=Headers),
[URLPattern](https://developer.mozilla.org/en-US/docs/Web/API/URL_Pattern_API)
- Access the request, the context, and the next callback before execute the
handler with
[app middleware](https://github.com/fastrodev/fastro/blob/main/examples/app_middleware.ts)
and
[route middleware](https://github.com/fastrodev/fastro/blob/main/examples/route_middleware.ts).
- You can add multiple middleware at once in one route.
- Get url param with URLPattern
- Set the preact component props from the server side## Create your first end point
Create a `main.ts` file for deno-cli entry point.
```ts
import fastro from "https://fastro.deno.dev/mod.ts";const f = new fastro();
f.get("/", () => "Hello, World!");
await f.serve();
```Run the app
```
deno run -A main.ts
```## Simple Examples
To find one that fits your use case, you can explore
[the examples page](https://github.com/fastrodev/fastro/tree/main/examples).## SSR Example
And to create your first JSX SSR page, you can follow
[the start page step by step](https://fastro.deno.dev/docs/start).## Contribution
Feel free to help us!
Here are some issues to improving.
- [Unit tests](https://github.com/fastrodev/fastro/tree/main/http)
- [Middlewares](https://github.com/fastrodev/fastro/tree/main/middleware)
- [Use case examples](https://github.com/fastrodev/fastro/tree/main/examples)