Building a Production Company Website on AWS — Project…
    Neura MarketNeura Market/Stable Diffusion
    ChatGPTChatGPTClaudeClaudeGeminiGeminiCursorCursorGrokGrokPerplexityPerplexityStable DiffusionStable Diffusion
    DeepSeekDeepSeekCoPilotCoPilotMidjourneyMidjourney
    View All Directories
    OverviewPromptsBlogVideosGuidesCoursesCommunityModelsLoRAsComfyUI WorkflowsTrending
    Stable DiffusionBlogBuilding a Production Company Website on AWS — Project Overview
    Back to Blog
    Building a Production Company Website on AWS — Project Overview
    aws

    Building a Production Company Website on AWS — Project Overview

    Josh Blair May 21, 2026
    0 views

    What We Built This series documents the end-to-end process of designing, building, and...

    What We Built

    This series documents the end-to-end process of designing, building, and deploying a production company website for a software and cloud consulting business. The result is a modern, fully serverless stack with automated CI/CD deployments — built intentionally to demonstrate and practice the AWS services I use professionally.

    Tech stack at a glance:

    LayerTechnology
    FrontendReact 18 + Vite + TypeScript + Tailwind CSS v4
    HostingAmazon S3 + CloudFront (CDN)
    DNS & TLSRoute 53 + ACM (SSL/TLS certificate)
    CI/CDGitHub + AWS CodePipeline + CodeBuild
    Contact APIAPI Gateway (HTTP) + AWS Lambda (Python)
    Data storageAmazon DynamoDB
    Email deliveryAmazon SES
    IaCAWS CloudFormation + AWS SAM

    Architecture Overview

    Architecture overview


    CI/CD Pipeline

    Every push to the main branch on GitHub automatically triggers a full build and deploy:

    CI/CD pipeline


    Articles in This Series

    #ArticleWhat it covers
    1Project Overview (this article)Full architecture, stack decisions, what we're building
    2React + Vite + Tailwind SetupScaffolding the SPA, routing, design system, component structure
    3Static Site Hosting on AWSS3, CloudFront with OAC, ACM, Route 53 DNS, CloudFormation
    4CI/CD with CodePipeline & CodeBuildGitHub connection, pipeline stages, buildspec.yml, IAM roles
    5Serverless Contact FormLambda, API Gateway, DynamoDB, SES, CORS, SAM deployment

    Key Design Decisions

    Why React + Vite (not Next.js)?

    Next.js is a great framework, but for a static marketing site, it's overhead. Vite produces a clean static build (dist/) that S3 + CloudFront serves perfectly. The site has no server-side rendering requirements. Vite also gives faster local dev iteration.

    Why S3 + CloudFront (not Amplify or Vercel)?

    This project is intentionally built on "raw" AWS primitives — CodePipeline, CloudFormation, S3, CloudFront — rather than abstracted platforms. The goal is to learn and demonstrate AWS services used in real enterprise projects.

    Why CloudFormation (not CDK or Terraform)?

    CloudFormation is the AWS-native tool that every AWS practitioner encounters. Understanding it directly — before abstracting to CDK — builds a stronger mental model of what's actually being deployed.

    Why separate ACM cert in us-east-1?

    CloudFront is a global service and requires ACM certificates to be provisioned specifically in us-east-1, regardless of where your other resources live. This is an AWS constraint, not a design choice.

    Why CloudFront OAC (not OAI)?

    Origin Access Control (OAC) is the modern replacement for Origin Access Identity (OAI). It supports all S3 operations, works with SSE-KMS encrypted buckets, and uses AWS SigV4 signing.


    Repository Structure

    bonefishsoftware.com/
    ├── src/                    # React source
    │   ├── components/         # Navbar, Footer, SectionHeader
    │   ├── pages/              # Home, Services, Technologies, Portfolio, Team, Contact
    │   └── data/               # services.ts, technologies.ts, team.ts
    ├── public/                 # Static assets (logo, sitemap, robots.txt)
    ├── lambda/
    │   └── contact/            # Python Lambda — contact form handler
    ├── infra/
    │   ├── acm/                # certificate.yml (deploy to us-east-1)
    │   └── stacks/
    │       ├── website.yml     # S3 + CloudFront (deploy to us-west-2)
    │       ├── pipeline.yml    # CodePipeline + CodeBuild (deploy to us-west-2)
    │       └── contact-api.yml # SAM — API Gateway + Lambda + DynamoDB (deploy to us-west-2)
    ├── docs/                   # This documentation
    ├── buildspec.yml           # CodeBuild build spec
    └── index.html              # Vite entry point with SEO meta tags
    

    Tags

    awswebdevtutorialcloud

    Comments

    More Blog

    View all
    Context bankruptcy: The case for strategic forgetting for AI Agentsai

    Context bankruptcy: The case for strategic forgetting for AI Agents

    Most of us have seen a coding agent fail to complete a task we know it can do. We just don't...

    J
    James O'Reilly
    Parallel Compliance Engine: Drive-to-Sheets Multi-Agent Orchestrationgooglecloud

    Parallel Compliance Engine: Drive-to-Sheets Multi-Agent Orchestration

    When building Generative AI applications, developers often encounter a massive bottleneck: sequential...

    A
    Aryan Irani
    Is It Ethical to Post and Ask About Circuits on Dev.to?discuss

    Is It Ethical to Post and Ask About Circuits on Dev.to?

    I’ve been thinking about sharing some electronic circuit posts on Dev.to — small circuits, DIY...

    C
    codebunny20
    The One-Click Exporter: AI Studio Antigravity, Probed to Its Limitsagents

    The One-Click Exporter: AI Studio Antigravity, Probed to Its Limits

    What nobody tells you about exporting your multi-agent prototype to a local workspace. Every...

    L
    leslysandra
    Guarding the till while autonomous data agents do the diggingagenticarchitect

    Guarding the till while autonomous data agents do the digging

    Autonomous agents are genuinely good at answering messy business questions. Give one an LLM and a set...

    S
    Sireesha Pulipati
    Return on Attention: Why AI Code Reviews Are Wearing Us Outai

    Return on Attention: Why AI Code Reviews Are Wearing Us Out

    PR volume went up, ticket quality didn't, and the gap got filled with LLMs on both sides of the review: bots reviewing, bots replying, bots occasionally arguing with bots about priorities that only existed in a teammate's head. Our CEO named the actual problem, and it's bigger than code review.

    C
    christine

    Stay up to date

    Get the latest Stable Diffusion prompts, rules, and resources delivered to your inbox weekly.

    Neura Market LogoNeura Market

    Discover the best AI prompts, plugins, and resources for Stable Diffusion and more.

    Content Types

    • Rules
    • Prompts
    • MCPs
    • Agents
    • Guides

    Platforms

    • ChatGPT Directory
    • Claude Directory
    • Gemini Directory
    • Cursor Directory
    • Grok Directory
    • Perplexity Directory
    • DeepSeek Directory
    • CoPilot Directory
    • Stable Diffusion Directory
    • Midjourney Directory
    • All Directories

    Resources

    • Blog
    • Documentation
    • Help Center
    • Marketplace

    Legal

    • Privacy Policy
    • Terms of Service

    © 2026 Neura Market. All rights reserved.

    |

    Not affiliated with any AI platform vendors.

    Ready-made automations for this

    Workflows from the Neura Market marketplace related to this Stable Diffusion resource

    • Create Custom PDF Documents from Google Drive Templatesn8n · $19.99 · Related topic
    • Production KPI Dashboard Workflow for Enhanced Manufacturing Insightsn8n · $16.91 · Related topic
    • Automated Storage of Notion Pages as Vector Documents in Supabasen8n · $15.91 · Related topic
    • Upsert Huge Documents in Vector Store with Supabase and Notionn8n · $14.99 · Related topic
    Browse all workflows