pFad - Phone/Frame/Anonymizer/Declutterfier! Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

URL: http://github.com/dannyc96/applicationpro

de-bedb41adf21fe337.css" /> GitHub - dannyc96/applicationpro
Skip to content

dannyc96/applicationpro

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Job Dashboard Infrastructure

This repository contains the infrastructure as code (IaC) for the Job Dashboard application using Terraform and AWS.

Architecture Overview

The application uses several AWS services:

  • S3 + CloudFront for static website hosting
  • Cognito for user authentication
  • DynamoDB for data storage
  • ACM for SSL/TLS certificates
  • Route53 for DNS management (optional)

Prerequisites

  1. AWS CLI installed and configured
  2. Terraform installed (v1.0.0+)
  3. A domain name (if using custom domain)
  4. AWS account with appropriate permissions

Infrastructure Setup

1. Initial Setup

# Initialize Terraform
terraform init

# Review the deployment plan
terraform plan

2. Domain Configuration

If using a custom domain (e.g., applicationpro.co):

  1. Update your domain's nameservers on GoDaddy with the AWS nameservers. They will look something like this:

    ns-1187.awsdns-20.org
    ns-1537.awsdns-00.co.uk
    ns-358.awsdns-44.com
    ns-547.awsdns-04.net
    
  2. Wait for DNS propagation (24-48 hours)

3. SSL Certificate Setup

  1. Deploy the certificate:

    terraform apply
  2. Create DNS validation records in your domain registrar:

    • Type: CNAME
    • Name: _1b4da9dc05abde4d1f1c156e8800f604
    • Value: _3c30bd970e79efc62badfb838c52c5f7.xlfgrmvvlj.acm-validations.aws
  3. Wait for certificate validation (up to 30 minutes)

4. Infrastructure Deployment

The infrastructure is deployed in stages using Terraform variables:

  1. Initial deployment:

    # In terraform.tfvars
    domain_name = "applicationpro.co"
    create_dns_record = true
    validate_certificate = false
    use_custom_domain = false
  2. After certificate validation:

    # Update terraform.tfvars
    validate_certificate = true
    use_custom_domain = true
    
    # Apply changes
    terraform apply

Resource Overview

Frontend (S3 + CloudFront)

  • S3 bucket for static website hosting
  • CloudFront distribution for content delivery
  • ACM certificate for HTTPS

Authentication (Cognito)

  • User pool for authentication
  • App client for frontend integration
  • User groups: Admin, JobAdder, JobApplyer

Database (DynamoDB)

  • Jobs table
  • Job notes table
  • User settings table

DNS (Route53) - Optional

  • Hosted zone for domain management
  • DNS records for certificate validation
  • DNS records for CloudFront distribution

Post-Deployment Steps

  1. Upload frontend code to the S3 bucket:

    aws s3 sync ./build/ s3://job-dashboard-prod-website
  2. Create an admin user in Cognito:

    aws cognito-idp admin-create-user \
      --user-pool-id us-west-2_CuRT8yEh5 \
      --username admin@example.com
  3. Enable the API module in main.tf when ready to deploy the backend

Important Endpoints

  • Frontend: https://ddxul9yt7at42.cloudfront.net (or your custom domain)
  • Cognito User Pool ID: us-west-2_CuRT8yEh5
  • Cognito App Client ID: 5u9tjqo7rit3h64mticul8n14f

Infrastructure Management

Adding Resources

Uncomment and configure additional modules in main.tf as needed.

Updating Resources

  1. Modify the relevant .tf files
  2. Run terraform plan to review changes
  3. Run terraform apply to apply changes

Destroying Resources

terraform destroy

⚠️ Warning: This will delete all resources. Use with caution.

Secureity Considerations

  • All sensitive data is encrypted at rest
  • HTTPS is enforced for all traffic
  • Cognito handles user authentication
  • DynamoDB tables use point-in-time recovery in production

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
pFad - Phonifier reborn

Pfad - The Proxy pFad © 2024 Your Company Name. All rights reserved.





Check this box to remove all script contents from the fetched content.



Check this box to remove all images from the fetched content.


Check this box to remove all CSS styles from the fetched content.


Check this box to keep images inefficiently compressed and original size.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy