AWS Pricelist Visualizer

Published on June 30, 2025 (1mo ago)

A fullstack web application for exploring, filtering, and analyzing AWS service pricing with a modern React frontend, Cloudscape UI, RESTful TypeScript backend, and Vercel deployment.

Live Demo

GitHub Repository

Tags: React, TypeScript, Node.js, AWS, Cloudscape Design, REST API, Vercel, Tailwind CSS, Fullstack, Pricing Visualization

Introduction

AWS Pricelist Visualizer is a fullstack web application designed to make AWS pricing data accessible, interactive, and visually intuitive. The app lets users browse, filter, and compare AWS service prices using a fast, modern UI and a robust backend API. This project was a deep dive into RESTful API design, frontend state management, and cloud deployment, inspired by the need for a developer-friendly AWS pricing explorer.

Key Features

Technologies Used

How It Works

  1. Frontend Bootstrapping:
    The React frontend (in /frontend) uses Cloudscape components for all selectors and tables. Tailwind CSS handles custom styles and responsive design.

  2. Dynamic Data Fetching:
    All selectors and tables fetch their data from the backend API, ensuring users always see the latest AWS pricing information.

  3. Backend API:
    The Node.js backend (in /backend) exposes RESTful endpoints for AWS services, versions, regions, products, and pricing. TypeScript ensures type safety and reliability.

  4. Monorepo & Deployment:
    The project is structured as a monorepo with separate frontend and backend folders.

    • Frontend: Deployed as a static site on Vercel.
    • Backend: Deployed as serverless functions via Vercel, with a custom vercel.json to route requests to the compiled JS output.
  5. User Experience:
    Users select services, versions, regions, and products via dropdowns, then view a searchable, sortable pricing table. The UI provides instant feedback for loading, errors, or empty results.

Getting Started

To run the project locally:

  1. Clone the repository:
    git clone https://github.com/kgurnoor/aws-pricing-project
    cd aws-pricing-project
  2. Install dependencies for both frontend and backend:
    cd frontend
    npm install
    cd ../backend
    npm install
  3. Build the backend (TypeScript to JS):
    npm run build
  4. Run backend and frontend (in separate terminals):
    # In /backend
    node server.js
    # In /frontend
    npm run dev
  5. Visit the frontend:
    Open http://localhost:3000 (or the port shown in your terminal).

Deployment

Lessons Learned

Future Enhancements

Contributing

Contributions, bug reports, and feature requests are welcome!
Check out the GitHub repo for source code, issues, and documentation.


AWS Pricelist Visualizer is my take on making cloud pricing more transparent and developer-friendly.
Try it out, and let me know what you think!