Giter Club home page Giter Club logo

api-hotel-booking's Introduction

Hotel Booking

Hotel Booking

๐Ÿ’ก Project's Idea

This project was developed to create an online hotel booking API platform, using an event driven microservices architecture.

๐Ÿ” Features

  • Login and signup to the application;

๐Ÿ›  Technologies

During the development of this project, the following techologies were used:

๐Ÿ’ป Project Configuration

After creating the required AWS infrastructure resources, you must update the following lines at cognito.js with the Cognito's created service data, as well as the redirect callback and sign out URLs to your application's URL:

const config={
    cognito:{
        identityPoolId:"user_pool_id",
        cognitoDomain:"cognito_domain",
        appId:"app_client_id"
    }
}
//...
var cognitoApp={
    //...
    {
        var authData = {
            //...
            RedirectUriSignIn : 'https://your-app.domain.com/',
            RedirectUriSignOut : 'https://your-app.domain.com/',
        };
        //...
    }
}

You must also update the form action for addHotel.html with the API Gateway invoke url:

action="invoke_url"

๐Ÿ—๏ธ Infrastructure as Code (IaC) with Terraform

To make it easier to provision infrastructure on cloud providers, you can make use of the Terraform template provided.

First, you'll need to install Terraform on your machine; then, since we're using AWS for the specified resources, you'll need to install the AWS CLI as well.

After that, you must set up an IAM user with permissions to manage resources, create an access key for the new user and configure the AWS CLI with the following command (entering the access key ID, secret access key, default region and outout format):

$ aws configure

Once these steps are done, you can use the Terraform commands to create, update and delete resources.

$ terraform init # Downloads the necessary provider plugins and set up the working directory
$ terraform plan # Creates the execution plan for the resources
$ terraform apply # Executes the actions proposed in a Terraform plan
$ terraform destroy # Destroys all remote objects managed by a particular Terraform configuration

If you want to provide the required variables for Terraform automatically when executing the script, you can create a file called prod.auto.tfvars file on the root directory, with all needed variables, according to the sample provided (auto.tfvars).

Documentation:

๐Ÿ“„ License

This project is under the MIT license. For more information, access LICENSE.

api-hotel-booking's People

Contributors

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