All Projects → nessjs → ness

nessjs / ness

Licence: MIT license
Deploy web sites and apps to your own cloud account effortlessly.

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to ness

laravel-vue-spa
Laravel Vue SPA 教程
Stars: ✭ 19 (-96.99%)
Mutual labels:  spa
ui-library
BlaBlaCar React Component Library
Stars: ✭ 37 (-94.14%)
Mutual labels:  spa
chronicle
Forming reliable memories.
Stars: ✭ 87 (-86.21%)
Mutual labels:  spa
bizbook-client
The repository of bizbook client project
Stars: ✭ 28 (-95.56%)
Mutual labels:  spa
example-app
Example app showcasing fulls1z3's Angular libraries
Stars: ✭ 27 (-95.72%)
Mutual labels:  spa
cdk-esbuild
CDK constructs for esbuild, an extremely fast JavaScript bundler
Stars: ✭ 44 (-93.03%)
Mutual labels:  static-website
EcommerceDDD
Experimental full-stack application using Domain-Driven Design, CQRS, and Event Sourcing.
Stars: ✭ 178 (-71.79%)
Mutual labels:  spa
skeleton-quasar
Exemplo simples de skeleton para o Quasar Framework
Stars: ✭ 40 (-93.66%)
Mutual labels:  spa
aem-spa-page-model-manager
Interface between Adobe Experience Manager and Single Page Application framework.
Stars: ✭ 26 (-95.88%)
Mutual labels:  spa
create-vuefront-app
Generator for quick VueFront project setup
Stars: ✭ 16 (-97.46%)
Mutual labels:  spa
angular-dersleri
En popüler front-end framework'ü Angular 12' i sıfırdan en ileri seviye kadar öğrenin.
Stars: ✭ 27 (-95.72%)
Mutual labels:  spa
webmarks
remoteStorage-enabled bookmarking app
Stars: ✭ 65 (-89.7%)
Mutual labels:  spa
platzi-exchange
Proyecto del Curso Basico de Vue.js de Platzi 💚
Stars: ✭ 26 (-95.88%)
Mutual labels:  spa
lm180 iEVE Echoes
a web based tools box for eve echoes
Stars: ✭ 16 (-97.46%)
Mutual labels:  spa
nodejsdesignpatterns.com
Source for Website for Node.js Design Patterns, book by Mario Casciaro and Luciano Mammino, published by Packt (https://nodejsdp.link/buy)
Stars: ✭ 27 (-95.72%)
Mutual labels:  static-website
wiretrustee-dashboard
NetBird Management Service Web UI Panel
Stars: ✭ 129 (-79.56%)
Mutual labels:  spa
ws
scripts for building web projects
Stars: ✭ 13 (-97.94%)
Mutual labels:  spa
moox
MoOx personal website
Stars: ✭ 33 (-94.77%)
Mutual labels:  static-website
urlzap
⚡️ Your own static URL shortener
Stars: ✭ 57 (-90.97%)
Mutual labels:  static-website
SPA-With-Blazor
Creating a Single Page Application with Razor pages in Blazor using Entity Framework Core database first approach.
Stars: ✭ 27 (-95.72%)
Mutual labels:  spa

Ness logo

release badge npm badge GitHub license badge Mentioned in Awesome CDK

Ness is the easiest way to stand up a production-ready web site on your own cloud infrastructure.

# Setup your site using React, Vue, Gatsby, Next.js, Docusaurus, etc.
$ npm init gatsby
$ cd gatsby-site
$ npx gatsby build

# Ness deploys your site to your AWS account.
$ npx ness deploy

Features

  • 🤩 Deployed to your AWS account—no third-party accounts necessary
  • 💨 Global CDN (CloudFront) for speedy delivery of your site's assets
  • Custom domains with HTTPS
  • 🔒 Security headers that follow best practices, including an auto-generated CSP
  • 🤖 Automatically detects web frameworks (Gatsby, Next.js, etc.)
  • ✌️ Supports Next.js SSR, Image Optimization, Internationalized Routing and more
  • ⚛️ Works with single page applications (include the --spa flag to redirect 404s)
  • 👀 (Coming soon) Pull request previews (powered by GitHub Actions)

Getting Started

Ness ships with two commands: deploy and destroy. By default, the deploy command will stand up a simple S3 website and output the site URL. Running destroy will tear it down and put your AWS account back in the state that it was prior to deploy.

On deploy, Ness will attempt to detect any static site frameworks and publish the appropriate build output directory. If Ness is unable to detect which framework you're using, or you haven't built your site, deploy will fail with an error that should point you in the right direction.

AWS Credentials

Ness leans heavily on the AWS SDK. Your AWS credentials will be picked up automatically, and Ness will guide you through the process of adding them if you haven't already.

Custom Domains

Ness supports custom domains with the --domain flag:

$ npx ness deploy --domain example.com

When a custom domain is specified, Ness stands up a CloudFront distribution along with an SSL certificate (through ACM) for HTTPS support.

Ness will validate that DNS is configured properly during deploy. If your domain was registered in Route53 and you already have a HostedZone configured, no additional setup will be necessary. If your domain was registered outside of AWS, Ness will guide you through the process of updating your registrar with the appropriate name server configuration.

Once you've deployed a given site with a custom domain, you can leave the --domain flag out of subsequent deploys. Ness stores project settings in ./ness.json, where you'll find the configured domain among other settings.

Next.js Support

Ness will auto-detect Next.js projects and stand up all of the necessary infrastructure to support its features, including:

You'll get most of the benefits of Vercel, without the limits, while deploying to your own AWS account. All with a single command: npx ness deploy.

Single Page Applications (SPAs)

Ness can deploy your single page applications as well. Pass the --spa flag to have ness configure 404 routing to your index document (configured with --index-doc, and defaulted to index.html).

Options

Run npx ness deploy --help to see all of the available options:

Usage: ness deploy [options]

Deploy a web site to your AWS account.

Options:
  --dir <dir>              the directory to publish
  --domain <domain>        custom domain
  --csp <csp>              content-security-policy header value
  --index-doc <index-doc>  index document for your site
  --error-doc <error-doc>  error document for your site
  --prod                   this is a production environment
  --redirect-www           create a redirect from www.<domain> to <domain>
  --spa                    single page application handling (redirect 404s)
  -h, --help               display help for command

Under the Hood

Ness deploys several resources into your AWS account when you deploy a site.

  • S3 Bucket for site assets
  • Route53 HostedZone (custom domain only)
  • ACM Certificate (custom domain only)
  • CloudFront distribution
  • Lambda@Edge functions (Next.js only)

Most of these resources are free at low traffic levels, and will scale very efficiently—both in terms of traffic handling and costs. Custom domains do require a Route53 HostedZone, which will cost $0.50 (USD) per month.

These resources are deployed into your account as CloudFormation stacks. As of this writing, these resources are split across three stacks: "web", "domain", and "alias". It's advised that you use npx ness destroy to tear these stacks down, in the event that you would like to remove a site from your account.

The first time you use Ness within a given AWS account, a "toolkit" stack will also be deployed (ness-toolkit) which provides an S3 bucket for storing packaged lambda functions, as well as a few CloudFront cache policy resources that are shared across all of the Ness sites in your account.

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].