Skip to content

JaidevCodes/PhishGuardAI

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PHISHGUARDAI

Empower Your Safety, Outsmart Phishing Threats Today

languages


Built with the tools and technologies:

JSON Markdown npm AWS Amplify JavaScript

React Python Vite ESLint Axios

Features

  • Scan URLs for phishing indicators using a simple web interface.
  • AI-based detection (simulated, can be replaced with a real ML model).
  • Stores scan results in DynamoDB.
  • Sends alerts via SNS for high-risk URLs.
  • User-friendly frontend built with React.

Getting Started

Prerequisites

  • Node.js and npm
  • AWS account and AWS CLI
  • Amplify CLI (optional, for deployment)

Backend Deployment

  1. Package Lambda:

    • Zip your Lambda code (lambda_function.py and dependencies) as lambda_function.zip.
  2. Upload Lambda to S3:

    • Upload lambda_function.zip to an S3 bucket in your AWS account.

    Important:
    The Lambda function and the S3 bucket must be in the same AWS region for successful deployment.

  3. Deploy AWS Resources:

    • Use the provided resource.yml (inside backend dir) CloudFormation template to deploy all backend resources (DynamoDB, SNS, Lambda, API Gateway, Cognito).

    • Pass your project name and the S3 bucket/key for the Lambda zip as parameters.

    • Example command:

      aws cloudformation deploy \
        --template-file resource.yml \
        --stack-name <your-stack-name> \
        --parameter-overrides ProjectName=<your-project-name> CodeBucket=<your-s3-bucket> CodeObjectKey=<your-lambda-zip-path> \
        --capabilities CAPABILITY_NAMED_IAM
    • Parameters:

      • ProjectName: Name prefix for all resources (e.g., phishguardai)
      • CodeBucket: S3 bucket name where Lambda code is stored
      • CodeObjectKey: S3 key (object path) to the Lambda zip file
    • After deployment, note the output values for:

      • API Gateway URL
      • Cognito User Pool ID
      • Cognito User Pool Client ID
      • Region

Frontend

  1. Set Environment Variables:

    • Before deploying with Amplify or running locally, set the following environment variables:

      • VITE_APIGATEWAY_BASE_URL (API Gateway endpoint from CloudFormation output)
      • VITE_APIGATEWAY_REGION (AWS region)
      • VITE_COGNITO_USER_POOL_CLIENT_ID (from CloudFormation output)
      • VITE_COGNITO_USER_POOL_ID (from CloudFormation output)
    • For Amplify deployment:
      In Frontend build command and Build output directory upload buildspec.yml from frontend/amplify dir. Add these variables in the Amplify Console under "Environment variables" before deploying.

    • For local development:
      Create a .env file in the frontend directory:

      VITE_APIGATEWAY_BASE_URL=...
      VITE_APIGATEWAY_REGION=...
      VITE_COGNITO_USER_POOL_CLIENT_ID=...
      VITE_COGNITO_USER_POOL_ID=...
      
  2. Install dependencies:

    cd frontend
    npm install
  3. Start the development server:

    npm run dev
  4. Open http://localhost:5173 to use the app.

Usage

  1. Enter URLs or emails in the input field.
  2. Click "Scan".
  3. View the risk assessment and details.

License

....


PhishGuardAI – Protect yourself from phishing threats!

About

Cybersecurity threats, especially phishing attacks, are one of the most critical issues IT companies face today. Phishing emails and fake websites trick users into revealing confidential information, leading to massive financial and data losses.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • JavaScript 65.8%
  • Python 32.2%
  • HTML 2.0%