Skip to content

Nanvithaa/seo_AI_saas_nextjs-15

Repository files navigation

SEO Reports Generator SaaS

A powerful SEO analysis tool that generates comprehensive, data-driven reports using AI and web scraping. Built with modern technologies like Next.js, Clerk for authentication, Convex for backend, and OpenAI GPT for AI-powered insights.

Overview

This project provides a sophisticated platform for generating SEO reports. By leveraging web scraping, AI-powered analysis, and real-time processing, it offers businesses and individuals an efficient way to evaluate and improve their SEO strategies. This tool is built using Next.js 15, Clerk, Convex, Bright Data, and OpenAI.

Features User Features:

Instant SEO Reports: Get instant, AI-driven reports for SEO performance.

Entity Analysis: Analyze different entities such as businesses, products, and websites.

AI Chat Integration: Interact with reports using OpenAI’s GPT (Pro users).

Comprehensive Data: Keyword research, backlink analysis, competitor tracking, and more.

Real-Time Progress: Track report generation with live updates.

Responsive Dashboard: Modern, clean, and easy-to-use dashboard interface.

Technical Features:

Next.js 15 & React: Leverage the latest web technologies for seamless user experiences.

Clerk Authentication: Secure user login and management, integrated with Stripe for subscription management.

Convex Backend: Real-time backend services with serverless functions and job management.

Bright Data Scraping: Scrape web data for SEO analysis via Bright Data’s powerful API.

OpenAI GPT: Generate insightful, AI-driven reports with advanced natural language processing.

Tailwind CSS: Use modern utility-first CSS framework for designing responsive components.

Tech Stack

Frontend:

Next.js 15

React 19

Tailwind CSS

Backend:

Convex (Serverless backend)

Zod (Data validation)

Authentication & Billing:

Clerk (with Stripe integration for subscriptions)

Data Collection:

Bright Data (web scraping)

AI:

OpenAI GPT (for analysis and report generation)

Setup and Installation Prerequisites:

Node.js 18+

pnpm (recommended) or npm/yarn

Accounts with Clerk, Convex, Bright Data, and OpenAI

Steps to Get Started:

Clone the repository:

git clone https://github.com/your-repo/seo-reports-generator.git cd seo-reports-generator

Install dependencies:

pnpm install

or using npm:

npm install

Set up environment variables: Create a .env.local file with the following:

NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=your_clerk_publishable_key CLERK_SECRET_KEY=your_clerk_secret_key

NEXT_PUBLIC_CONVEX_URL=your_convex_deployment_url NEXT_PUBLIC_CONVEX_SITE_URL=your_site_url_for_webhooks

BRIGHTDATA_API_KEY=your_brightdata_api_key

OPENAI_API_KEY=your_openai_api_key

Configuration Clerk Setup:

Create an account at Clerk.

Set up authentication providers (e.g., Email, Google).

Add your Clerk keys to .env.local.

Bright Data Setup:

Create an account at Bright Data.

Generate an API key for SERP scraping.

Add your API key to .env.local.

Convex Setup:

Create a project at Convex.

Copy the Convex project URL and add it to .env.local.

OpenAI Setup:

Sign up at OpenAI.

Generate an API key and add it to .env.local.

App Structure

app/: Next.js pages and layout

page.tsx: Home page and marketing section

dashboard/: User dashboard for managing SEO reports

api/chat/: AI chat API for Pro users

convex/: Convex backend functions

scrapingJobs.ts: Manages scraping tasks and jobs

analysis.ts: Handles AI-driven SEO analysis

http.ts: Webhooks for Bright Data results

auth.config.ts: Clerk JWT setup for authentication

components/: UI components

AIChat.tsx: Chat interface for interacting with SEO reports

ReportsTable.tsx: Displays reports in a table format

ui/: Reusable UI components

lib/: Helper functions and utilities for SEO analysis

seo-schema.ts: Zod validation schemas

seo-utils.ts: Helper functions for SEO tasks

middleware.ts: Protects dashboard routes with Clerk authentication

Usage Start the Development Server:

To run the app locally, use:

pnpm dev

or npm run dev

Visit http://localhost:3000 to see the app in action.

Generate SEO Reports:

Log in using Clerk authentication.

Enter the entity you want to analyze (e.g., website URL).

Generate the SEO report instantly or schedule it for later.

AI Chat (Pro Feature):

Pro users can chat with the generated reports using the OpenAI-powered AI chat interface.

Common Issues

Missing Environment Variables: Double-check that all required variables are set in .env.local.

Clerk Authentication Issues: Ensure Clerk JWT setup is correct.

Webhook Failures: Test webhook endpoints with tools like Postman to ensure Bright Data can send data correctly.

API Rate Limiting: If using OpenAI, monitor API usage and ensure you have the right plan.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors