All Projects → asos-craigmorten → Opine

asos-craigmorten / Opine

Licence: mit
Fast, minimalist web framework for Deno ported from ExpressJS.

Programming Languages

typescript
32286 projects

Projects that are alternatives of or similar to Opine

Hydra Express
A module which wraps Hydra and ExpressJS into a library for building distributed applications - such as microservices
Stars: ✭ 166 (-67.19%)
Mutual labels:  express, expressjs
Internship Lms Frontend
We are in the mission of solving a crisis for a lot of small and medium enterprises, who are trying to recruit interns for their projects. This platform aims to onboard new interns, who have applied to the companies and help them understand the process and make the transition smooth.
Stars: ✭ 193 (-61.86%)
Mutual labels:  express, expressjs
Fiber
⚡️ Express inspired web framework written in Go
Stars: ✭ 17,334 (+3325.69%)
Mutual labels:  express, expressjs
Node Express Mongoose Passport Jwt Rest Api Auth
Node, express, mongoose, passport and JWT REST API authentication example
Stars: ✭ 146 (-71.15%)
Mutual labels:  express, expressjs
Judo Heroes
A React application to showcase rendering with Universal JavaScript
Stars: ✭ 373 (-26.28%)
Mutual labels:  express, expressjs
Node Express Postgresql Sequelize
Node.js, Express.js, Sequelize.js and PostgreSQL RESTful API
Stars: ✭ 148 (-70.75%)
Mutual labels:  express, expressjs
Mevn Stack
A Quickstart for building an Express API with a VueJS Admin Portal
Stars: ✭ 178 (-64.82%)
Mutual labels:  express, expressjs
Githubdocs
Easily build a searchable documentation app using markdown files in your Github Repo or local Markdown files.
Stars: ✭ 122 (-75.89%)
Mutual labels:  express, expressjs
Express Status Monitor
🚀 Realtime Monitoring solution for Node.js/Express.js apps, inspired by status.github.com, sponsored by https://dynobase.dev
Stars: ✭ 3,302 (+552.57%)
Mutual labels:  express, expressjs
Nodebestpractices
✅ The Node.js best practices list (December 2021)
Stars: ✭ 72,734 (+14274.31%)
Mutual labels:  express, expressjs
Nodejs Rest Api Project Structure Express
Nodejs project structure practices for building RESTful APIs using Express framework and MongoDB.
Stars: ✭ 134 (-73.52%)
Mutual labels:  express, expressjs
Serverless Express
Run Node.js web applications and APIs using existing application frameworks on AWS #serverless technologies such as Lambda, API Gateway, Lambda@Edge, and ALB.
Stars: ✭ 4,265 (+742.89%)
Mutual labels:  express, expressjs
React Express Starter
A starter kit for React applications with a back end server all in the same project
Stars: ✭ 133 (-73.72%)
Mutual labels:  express, expressjs
Corporate Bs Generator Api
Corporate Bullshit(BuzzWord) Generator API
Stars: ✭ 155 (-69.37%)
Mutual labels:  express, expressjs
Express Env Example
A sample express environment that is well architected for scale. Read about it here:
Stars: ✭ 130 (-74.31%)
Mutual labels:  express, expressjs
Mern
🌐 MERN stack 2.0 - MongoDB, Express, React/Redux, Node
Stars: ✭ 175 (-65.42%)
Mutual labels:  express, expressjs
Mean Stack Angular5 Crud
MEAN Stack (Angular 5) CRUD Web Application Example
Stars: ✭ 107 (-78.85%)
Mutual labels:  express, expressjs
Docx
Easily generate .docx files with JS/TS with a nice declarative API. Works for Node and on the Browser.
Stars: ✭ 2,150 (+324.9%)
Mutual labels:  express, expressjs
Awesome Express
这个仓库主要是收集 Express 好用的中间件、新闻资讯、网站等,这是我在基于Express开发web应用过程中搜集到的一些插件和看到的一些好的内容。
Stars: ✭ 241 (-52.37%)
Mutual labels:  express, expressjs
Practicalnode
Practical Node.js, 1st and 2nd Editions [Apress] 📓
Stars: ✭ 3,694 (+630.04%)
Mutual labels:  express, expressjs

Deno reading an opinionated book

Opine

Fast, minimalist web framework for Deno ported from ExpressJS.

Current version Current test status Deno docs PRs are welcome Opine issues Opine stars Opine forks Opine license Opine is maintained Opine repository visit count Published on nest.land

Opine latest /x/ version Minimum supported Deno version Opine dependency count Opine dependency outdatedness Opine cached size


Table of Contents

Getting Started

import { opine } from "https://deno.land/x/[email protected]/mod.ts";

const app = opine();

app.get("/", function(req, res) {
  res.send("Hello World");
});

app.listen(3000);

Installation

This 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/[email protected]/mod.ts";

Opine is also available on nest.land, a package registry for Deno on the Blockchain.

import { opine } from "https://x.nest.land/[email protected]/mod.ts";

Features

  • Robust routing
  • Focus on high performance
  • Large selection of HTTP helpers including support for downloading / sending files, etags, Content-Disposition, cookies, JSONP etc.
  • Support for static serving of assets
  • View system supporting template engines
  • Content negotiation
  • Compatible with SuperDeno for easy server testing
  • Supports HTTP proxy middleware with opine-http-proxy

Documentation

Quick Start

The quickest way to get started with Opine is to utilize the Opine CLI to generate an application as shown below:

Install the executable. The executable's major version will match Opine's:

deno install -f -q --allow-read --allow-write --allow-net --unstable https://deno.land/x/[email protected]/opine-cli.ts

And follow any suggestions to update your PATH environment variable.

Create the app:

opine-cli --view=ejs hello-deno && cd hello-deno

Start your Opine app at http://localhost:3000/:

deno run --allow-net --allow-read --allow-env mod.ts

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, focussing first on developing robust tooling and features before moving onto accelerating performance and becoming super lightweight.

As time passes, Opine's goals may naturally diverge from ExpressJS and this will be reflected here.

Examples

To run the examples, you have two choices:

  1. Run the example using Deno directly from GitHub, for example:

    deno run --allow-net --allow-read https://raw.githubusercontent.com/asos-craigmorten/opine/main/examples/hello-world/index.ts
    
  2. Clone the Opine repo locally:

    git clone git://github.com/asos-craigmorten/opine.git --depth 1
    cd opine
    

    Then run the example you want:

    deno run --allow-net --allow-read ./examples/hello-world/index.ts
    

All the examples contain example commands in their READMEs to help get you started for either of the above methods.

Contributing

Contributing guide


License

There are several third party modules that have been ported into this module. Each third party module has maintained it's license and copyrights. The only exception is for Express, from which this entire module has been ported, whose license and copyrights are available at EXPRESS_LICENSE in the root of this repository, and cover all files within the source directory which not been explicitly licensed otherwise.

All modules adapted into this module are licensed under the MIT License.

Opine is licensed under the MIT License.

Icon designed and created by Hannah Morten.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].