Skip to content

YaroslavChuiko/threatChecker

Repository files navigation

ThreatChecker

nextdotjs TypeScript react trpc zod reactquery nextauth tailwindcss chartdotjs Prisma postgresql virustotal vercel pnpm pwa

ThreatChecker is a free website security scanner. Remote scanners have limited access and results are not guaranteed.

Website


About

This is a T3 Stack project bootstrapped with create-t3-app.

A chat application, written in Next.js, with the use of tRPC, NextAuth.js, Tailwind CSS, Prisma.

Setup & Run

Prior to setup, create an .env file based on the .env.example. Then proceed:

  1. pnpm install
  2. Create PostgreSQL database and add connection url as value for DATABASE_URL
  3. npx prisma db push
  4. Generate a secret value for NEXTAUTH_SECRET. You can generate a new secret on the command line with: openssl rand -base64 32
  5. Create a Google OAuth App and add values for GOOGLE_CLIENT_ID and GOOGLE_CLIENT_SECRET
  6. Create a Discord OAuth App and add values for DISCORD_CLIENT_ID and DISCORD_CLIENT_SECRET
  7. Create a GitHub OAuth App. Make sure to set Authorization callback URL to http://localhost:3000/api/auth/callback/github. After that add values for GITHUB_CLIENT_ID and GITHUB_CLIENT_SECRET
  8. Create Mailtrap account and add values for EMAIL_SERVER_USER, EMAIL_SERVER_PASSWORD, EMAIL_SERVER_HOST, EMAIL_SERVER_PORT, EMAIL_FROM
  9. Create VirusTotal account and add values for VIRUS_TOTAL_API_KEY
  10. npx prisma db seed
  11. pnpm run dev

Deployment diagram

deployment-diagram

Entity-relationship diagram

Entity-relationship diagram

Snapshots

Sign in

image

image

Home

image

Results

image

image

Statistics

image