Back to projects
Oct 20264 min read

Cell Waves - Cell Tower Lease Experts

πŸ—Ό Landing site helping landlords negotiate cell tower lease renewals and buyouts. Built with Astro, React, Tailwind, and shadcn/ui.

See DemoSee Repository
Cell Waves - Cell Tower Lease Experts

✨ Features

  • Landlord-Side Negotiation β€” Dedicated expertise for lease renewals, extensions, and buyouts, never new-site brokering.
  • Full Service Catalog β€” Seven dedicated service pages covering agreements, renewals, rooftop leases, buyouts, consultant costs, and hiring guidance.
  • Landlord Advice Hub β€” Seven advice articles on lease rates, lease valuation, carrier mergers, upgrade requests, and tower attorneys.
  • Contact Form with Resend β€” On-demand /api/contact endpoint that validates submissions and emails them through the Resend REST API, with loading, error, and success states.
  • Testimonials Carousel β€” Verified landlord reports in an Embla-powered carousel with quote-first layout and local imagery.
  • Scroll-Reveal Animations β€” Dedicated entrance animations per section with staggered grids and an animated process signal line, honoring prefers-reduced-motion and no-JS fallbacks.
  • Responsive by Design β€” Fixed dock navigation, mobile drawer, and layouts that collapse cleanly below 768px.
  • Fast & Static First β€” Astro static output with prerendered pages; only the contact API runs serverless on Vercel.

🧱 Tech Stack

  • Astro: Static site generator for fast, content-focused pages.
  • React: Component library powering interactive islands like the testimonial carousel and contact form.
  • TypeScript: Strongly typed programming that builds on JavaScript.
  • Tailwind: Utility-first CSS framework for rapid UI development.
  • shadcn/ui: Re-usable components built on Radix UI and Tailwind CSS.
  • Motion: Animation library for entrance and state transitions in React islands.
  • Resend: Transactional email API behind the contact form.

πŸš€ Getting Started

Clone the repo, install deps, and boot the dev server:

git clone https://github.com/TowerFinder-Kurt-Access/cell-waves.git
cd cell-waves
bun install
bun run dev

Open http://localhost:4321 to view the app.

πŸ“¦ Build for Production

bun run build
bun run preview

πŸ”‘ Environment

Copy the example file and add your Resend key:

cp .env.example .env

RESEND_API_KEY authenticates the contact form’s /api/contact endpoint with Resend. It is required in the local .env and in the Vercel project settings.


πŸ—‚οΈ Configuration

The site is componentized under src. Key areas to customize are:

src/
  components/
    site/              # Header, footer, hero, homepage sections, contact form
    ui/                # shadcn/ui primitives
  layouts/
    base.astro         # Global shell, head tags, scroll-reveal observer
    article.astro      # Shared layout for service and advice pages
  pages/
    index.astro        # Homepage
    about-us.astro     # Team page
    why-select-us.astro
    testimonials.astro # Full landlord testimonials
    blog/              # Blog index and posts
    services/          # Seven service pages
    advice/            # Seven advice pages
    api/
      contact.ts       # POST endpoint wired to Resend
  scripts/
    count-up.ts        # Animated stat badges
  styles/
    global.css         # Theme tokens, reveal animations
  lib/
    content.ts         # Site-wide copy, navigation, testimonials, page data
public/
  images/              # Testimonial and blog imagery

🀝🏻 Contributing

Contributions are always welcome, whether you’re fixing bugs, improving docs, or shipping new features that make the project better for everyone.

Check out Contributing.md to learn how to get started and follow the recommended workflow.


βš–οΈ License

Copyright Β© Cell Waves Canada. All rights reserved.

Search Projects

Search all projects from anywhere on the site.