Sign inSign up

adaptjs/adapt

By adaptjs

•Updated over 2 years ago

Create and deploy full-stack apps to any infrastructure using the power of React.

Image
0

2.3K

adaptjs/adapt repository overview

Adapt logo

npm Gitter License

⁠Adapt - ReactJS for your infrastructure.

AdaptJS is a system to easily, reliably, and repeatably deploy your full-stack applications. Adapt specifications look like React⁠ apps, but instead of rendering browser DOM elements like <input>, or <div>, Adapt specifications use elements like AWS <EC2Instance>, Kubernetes <Pod>, or <MongoDB> database.

If you're already familiar with React, you'll feel right at home with Adapt. But if not, don't worry, knowledge of React isn't required to start using Adapt.

⁠Getting Started

For a new project, it's easy to get started with Adapt by using a starter template. The Getting Started Guide⁠ will walk through installing Adapt and deploying your first starter app.

⁠Creating and deploying an app

This example creates a new full-stack app from a starter template. It has a React⁠ UI, an Nginx⁠ web server, a Node.js⁠ API server, and a Postgres⁠ database, then deploys it to Kubernetes⁠:

# Install adapt
npm install -g @adpt/cli

# Create a new app from a starter template
adapt new hello-react-node-postgres ./myapp
cd myapp/deploy

# Deploy full stack locally using Docker
adapt run laptop

# Or just as easily deploy everything to Kubernetes
adapt run k8s-test

An Adapt description for a complete front end and back end app stack looks like this:

import Adapt from "@adpt/core";
import { NodeService, ReactApp } from "@adpt/cloud/nodejs";
import { Postgres } from "@adpt/cloud/postgres";

function MyApp() {
  const pg = Adapt.handle();

  return (
    <Adapt.Group>
      <ReactApp srcDir="../frontend" />
      <NodeService srcDir="../backend" connectTo={pg} />
      <Postgres handle={pg} />
    </Adapt.Group>
  );
}

⁠Adapt in action

This demo shows using Adapt to create and deploy a simple app called MovieDB that has a React⁠ UI, an Nginx⁠ web server, an Nginx URL router, a Node.js⁠ API server, and a Postgres⁠ database, then deploys it to Kubernetes⁠:

Adapt in action

⁠More info

⁠Getting Help

Gitter

We'd love to hear about your experience with Adapt! Join us on our Gitter channel⁠ to ask questions or to give us your feedback and suggestions.

If you've found a bug, you can also file an issue⁠.

Tag summary

Content type

Image

Digest

Size

41.3 MB

Last updated

about 6 years ago

docker pull adaptjs/adapt