Git Product home page Git Product logo

aws-boilerplate's Introduction

AWS Boilerplate

AWS Boilerplate License Maintenance

Note: The documentation is a work in progress. It will be in a much better state in couple of days!

The primary objective of this boilerplate is to give you a production ready code that reduces the amount of time you would normally have to spend on system infrastructure's configuration. It contains a number of services that a typical web application has (frontend, backend api, admin panel, workers) as well as their continuous deployment. Using this boilerplate you can deploy multiple environments, each representing a different stage in your pipeline.

We don't create any new CLIs or APIs that you need to learn. We use existing solutions, which you can extend or change however you like:

  • Make
  • CDK (TypeScript)
  • Serverless Framework
  • Docker

Prerequisites

  • Install latest Node.js (with NPM >= 6)

  • Install Python 3.8

    We recommend installing Python using pyenv

  • Install Pipenv

  • Install AWS CLI version 2

  • Install Docker

Installation

We recommend cloning this repository instead of downloading the ZIP. This way you'll be able to merge latest changes without too much hassle by resolving conflicts using your favourite tools.

To setup the project and install local dependencies run following command:

sh ./setup.sh

Running locally

Run backend services:

make up

Backend is running on http://localhost:5000.

Admin Panel is running on http://admin.localhost:5000.

Workers do not expose any http address.

How do I deploy the app to AWS?

Check out our deployment to AWS documentation

Services included in boilerplate

The boilerplate contains a number of typical services that are ready to be deployed to AWS. Each of them resides in the services directory and has to contain a Makefile. Do not change the names of the rules that are defined in Makefiles unless you know what you're doing. Most of them are used in CodeBuild jobs in your CI pipeline.

  • Web App – Single page application
  • Backend – Django app containing three services:
    • API backend
    • Admin Panel
    • Migrations
  • Async Workers – Serverless Framework

Continuous integration / Continuous Deployment

Each deployed environment comes with a preconfigured CI/CD implemented with AWS CodeCommit, AWS CodeBuild, and AWS CodePipeline. The general idea of deployment is for the user to push code to a master branch of the CodeCommit repository created by the Ci CDK Stack. Check out the CI/CD documentation to learn more.

Guides

aws-boilerplate's People

Contributors

dependabot[bot] avatar esenti avatar mkleszcz avatar pziemkowski avatar szdrasiak-apptension avatar toreno96 avatar yelwo avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.