Excited to say that I've been working on a fast, minimalist web framework for Deno ported from ExpressJS called Opine!
import opine from "https://deno.land/x/opine@0.21.2/mod.ts";
const app = opine();
app.use((req, res) => {
res.send("Hello World");
});
app.listen(3000);
There are quite a few web frameworks out there already for Deno, such as Oak which is based on koa, but none that attempt to mirror the internals and API of ExpressJS that we know and love.
Opine attempts to solve this by completely porting ExpressJS over to TypeScript in Deno, making changes only where the Deno APIs dramatically differ from Node.
Installation
Opine is a Deno module available to import direct from this repo and via the Deno Registry.
Before importing, download and install Deno.
You can then import Opine straight into your project:
import opine from "https://deno.land/x/opine@0.21.2/mod.ts";
Features
- Robust routing
- Focus on high performance
- HTTP helpers
And more to come as we achieve feature parity with ExpressJS.
Philosophy
The Express philosophy is to provide small, robust tooling for HTTP servers, making it a great solution for single page applications, web sites, hybrids, or public HTTP APIs.
Opine will aim to achieve these same great goals, focusing first on developing robust tooling and features before moving onto accelerating performance and becoming super lightweight.
Examples
Opine comes with a few useful examples to get you started. To view the examples, clone the Opine repo:
git clone git://github.com/asos-craigmorten/opine.git --depth 1
cd opine
Then just run whichever example you want:
deno --allow-net --allow-read ./example/hello-world/index.ts
More!
Want to know more? Head over to the Opine GitHub page for full details, or check out one of the available doc resources:
Just a quick read today - stay tuned for further updates and some more posts on how you can use Opine and guides on how to convert your existing ExpressJS apps from Node to Opine apps on Deno!
Want to help, found a bug, or have a suggestion? Please reach out by commenting below or raising issues / PR on the repo!
See also: Opine Tutorial Part 1: Express For Deno
Top comments (2)
Thanks a lot for spent yours time to help our young community (Y).
app.stackbit.com/dashboard