Skip to content

AliShariatian/DorkCraft

Repository files navigation

DorkCraft - Advanced Google Dork Generator

A powerful, intuitive web application for security researchers, penetration testers, and cybersecurity professionals to craft advanced Google search queries (Google Dorks) with ease.

πŸš€ Features

Core Functionality

  • Visual Query Builder: Drag-and-drop interface for building complex Google Dork queries
  • 50+ Operators: Comprehensive collection of Google search operators including advanced and lesser-known ones
  • Multi-Input Support: Specialized handling for operators requiring multiple inputs (OR, AROUND, etc.)
  • Real-time Preview: Live query generation as you build your search
  • Query Management: Add, remove, and reorder query components with drag-and-drop

Pre-built Dork Library

  • 30+ Common Dorks: Ready-to-use queries for common security research tasks
  • Risk Assessment: Each dork includes risk level indicators and use case descriptions
  • Expandable Details: View multiple dork explanations simultaneously
  • One-click Loading: Instantly load pre-built queries into the builder

User Experience

  • Responsive Design: Optimized for desktop, tablet, and mobile devices
  • Dark Theme: Professional dark interface with excellent contrast
  • Auto-focus: Streamlined workflow with intelligent input focusing
  • Export Options: Copy, search directly, or export queries as JSON
  • Category Filtering: Organize operators by type (Site, Content, File, etc.)

πŸ› οΈ Technology Stack

Frontend

  • Next.js 13 - React framework with App Router
  • TypeScript - Type-safe development
  • Tailwind CSS - Utility-first styling
  • Framer Motion - Smooth animations and transitions
  • Radix UI - Accessible component primitives

State Management

  • Zustand - Lightweight state management
  • React Hooks - Local component state

UI/UX Libraries

  • @dnd-kit - Drag and drop functionality
  • Lucide React - Beautiful icon library
  • Sonner - Toast notifications
  • shadcn/ui - Modern component library

Development Tools

  • ESLint - Code linting
  • PostCSS - CSS processing
  • Autoprefixer - CSS vendor prefixes

πŸ—οΈ Architecture

Component Structure

components/
β”œβ”€β”€ dork-builder.tsx          # Main builder interface
β”œβ”€β”€ operator-selector.tsx     # Operator selection and input
β”œβ”€β”€ active-queries.tsx        # Drag-and-drop query list
β”œβ”€β”€ common-dorks.tsx          # Pre-built dork library
β”œβ”€β”€ query-output.tsx          # Final query display
β”œβ”€β”€ category-pills.tsx        # Operator category filters
└── file-type-selector.tsx    # Quick file type selection

State Management

stores/
β”œβ”€β”€ dork-store.ts             # Query building state
└── ui-store.ts               # UI interaction state

Data Layer

lib/
β”œβ”€β”€ google-dorks.ts           # Operator definitions and common dorks
└── utils.ts                  # Utility functions

🎯 Key Features Implemented

Advanced Query Building

  • Operator Categories: Organized into Basic, Site, Content, File, Meta, and Advanced categories
  • Smart Input Handling: Different input types for different operators (single, dual, file types)
  • Query Validation: Real-time validation and error handling
  • Syntax Highlighting: Color-coded query display

Drag & Drop Interface

  • Reorderable Queries: Change query order with smooth drag-and-drop
  • Visual Feedback: Clear drag indicators and hover states
  • Keyboard Accessible: Full keyboard navigation support
  • Touch Friendly: Optimized for mobile touch interactions

Professional UX

  • Loading States: Smooth transitions and loading indicators
  • Error Handling: Graceful error messages and recovery
  • Responsive Layout: Adaptive design for all screen sizes
  • Accessibility: WCAG compliant with proper ARIA labels

πŸ”§ Installation & Setup

# Clone the repository
git clone https://github.com/yourusername/dorkcraft.git

# Navigate to project directory
cd dorkcraft

# Install dependencies
npm install

# Start development server
npm run dev

# Build for production
npm run build

# Start production server
npm start

πŸ“± Responsive Design

The application is fully responsive with breakpoints optimized for:

  • Mobile: 320px - 768px (Stacked layout, touch-optimized)
  • Tablet: 768px - 1024px (Hybrid layout)
  • Desktop: 1024px+ (Full horizontal layout)

πŸ”’ Security Considerations

Ethical Use

  • Educational Purpose: Designed for legitimate security research and testing
  • Terms of Service: Clear guidelines for responsible use
  • Privacy Policy: Transparent data handling practices
  • No Data Storage: Queries are not stored or transmitted to external servers

Best Practices

  • Client-side Processing: All query building happens in the browser
  • No API Keys: No external API dependencies
  • Secure Defaults: Safe configuration out of the box

🎨 Design System

Color Palette

  • Primary: Blue (#3B82F6) - Actions and highlights
  • Secondary: Emerald (#10B981) - Success states
  • Accent: Orange (#F97316) - Warnings and emphasis
  • Neutral: Slate (#64748B) - Text and backgrounds
  • Danger: Red (#EF4444) - Errors and destructive actions

Typography

  • Headings: Inter font family, various weights
  • Body: Inter font family, regular weight
  • Code: Monospace font family for query display

πŸ“Š Performance Optimizations

  • Code Splitting: Automatic route-based code splitting with Next.js
  • Image Optimization: Next.js Image component for optimized loading
  • Bundle Analysis: Webpack bundle analyzer for size optimization
  • Lazy Loading: Components loaded on demand
  • Memoization: React.memo and useMemo for expensive operations

πŸš€ Deployment

The application is configured for static export and can be deployed to:

  • Vercel (Recommended for Next.js)
  • Netlify
  • GitHub Pages
  • Any static hosting service
# Build and export static files
npm run build

# Files will be generated in the 'out' directory

🀝 Contributing

This project follows standard contribution guidelines:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgments

  • Google - For providing the search operators that make this tool possible
  • Security Community - For documenting and sharing Google Dork techniques
  • Open Source Libraries - All the amazing libraries that made this project possible

πŸ“ž Contact

Your Name - Shariatian92@gmail.com

Project Link: https://github.com/AliShariatian/DorkCraft


⭐ Star this repository if you found it helpful!

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published