https://github.com/arvid-berndtsson/qr-spoof

A website to inform people about the potential dangers with QR codes.

https://github.com/arvid-berndtsson/qr-spoof

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.6%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

A website to inform people about the potential dangers with QR codes.

Basic Info
  • Host: GitHub
  • Owner: arvid-berndtsson
  • Language: TypeScript
  • Default Branch: main
  • Size: 306 KB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created almost 2 years ago · Last pushed about 1 year ago
Metadata Files
Readme

README.md

QR Spoof

A web application for generating QR codes and raising awareness about QR code security (quishing). Built with Next.js and deployed on Cloudflare Pages.

Features

  • QR code generation with customizable content
  • PDF export functionality
  • Social sharing capabilities
  • Modern, responsive design with TailwindCSS
  • Analytics integration with Umami
  • Cloudflare Pages deployment

Prerequisites

  • Node.js 22+ and pnpm
  • Cloudflare account
  • GitHub account

Getting Started

  1. Clone the repository: bash git clone https://github.com/yourusername/qr-spoof.git cd qr-spoof

  2. Install dependencies: bash npm install

  3. Create a .env.local file with the following variables: env NEXT_PUBLIC_UMAMI_WEBSITE_ID=your_umami_website_id NEXT_PUBLIC_UMAMI_URL=your_umami_url NEXT_PUBLIC_SITE_URL=your_site_url

  4. Run the development server: bash npm run dev

Open http://localhost:3000 with your browser to see the result.

Development

The project uses several key technologies:

  • Next.js: For the React framework and server-side rendering
  • TypeScript: For type safety and better developer experience
  • TailwindCSS: For styling and responsive design
  • Zod: For runtime type checking and validation
  • qrcode.react: For QR code generation
  • jspdf: For PDF export functionality
  • html-to-image: For converting components to images

Deployment

This project is configured for deployment on Cloudflare Pages. To deploy:

  1. Push your code to GitHub
  2. Go to the Cloudflare Dashboard
  3. Navigate to Pages
  4. Click "Create a project"
  5. Connect your GitHub repository
  6. Configure the build settings:
    • Build command: npx @cloudflare/next-on-pages@1
    • Build output directory: .vercel/output/static
    • Environment variables: Add the ones from your .env.local file

Cloudflare Pages will automatically deploy your site on every push to the main branch and create preview deployments for pull requests.

Environment Variables

The following environment variables are required:

  • NEXT_PUBLIC_UMAMI_WEBSITE_ID: Your Umami analytics website ID
  • NEXT_PUBLIC_UMAMI_URL: Your Umami analytics instance URL
  • NEXT_PUBLIC_SITE_URL: Your site's public URL

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feat/amazing-feature)
  3. Commit your changes following the Conventional Commits specification: bash # Examples: git commit -m "feat: add new QR code customization options" git commit -m "fix: resolve PDF export formatting issues" git commit -m "docs: update README with deployment instructions" git commit -m "style: improve button hover states" git commit -m "refactor: optimize QR code generation"
  4. Push to the branch (git push origin feat/amazing-feature)
  5. Open a Pull Request

Owner

  • Name: Arvid Berndtsson
  • Login: arvid-berndtsson
  • Kind: user
  • Location: Sweden
  • Company: @LimeTip

Based in Malmö, Sweden, I specialize in software development and digital sustainability. Founder of @LimeTip and Co-Founder of @merely-emissions

GitHub Events

Total
  • Push event: 12
Last Year
  • Push event: 12

Committers

Last synced: 11 months ago

All Time
  • Total Commits: 17
  • Total Committers: 2
  • Avg Commits per committer: 8.5
  • Development Distribution Score (DDS): 0.118
Past Year
  • Commits: 15
  • Committers: 1
  • Avg Commits per committer: 15.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Arvid Berndtsson 1****n 15
Arvid Berndtsson 1****d 2

Issues and Pull Requests

Last synced: 11 months ago

All Time
  • Total issues: 0
  • Total pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 0
  • Total pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels

Dependencies

package.json npm
  • @types/node ^20 development
  • @types/react ^18 development
  • @types/react-dom ^18 development
  • eslint ^8 development
  • eslint-config-next 14.2.4 development
  • postcss ^8.4.39 development
  • tailwindcss ^3.4.4 development
  • typescript ^5 development
  • autoprefixer ^10.4.19
  • next 14.2.4
  • next-seo ^6.5.0
  • react ^18
  • react-dom ^18
pnpm-lock.yaml npm
  • 183 dependencies