A comprehensive collection of free, client-side cybersecurity utilities designed for security professionals, developers, and enthusiasts.

✨ Features
- 🔒 20+ Security Tools - Password generators, hash calculators, encryption tools, and more
- 🎨 Modern UI - Beautiful, responsive design with dark/light mode
- ⚡ Client-Side Processing - All processing happens in your browser, no data sent to servers
- 🚀 Blazing Fast - Optimized Next.js 16 App Router with React 19
- 📱 Mobile Friendly - Works seamlessly on all devices
- ♿ Accessible - WCAG 2.1 AA compliant
- 🌐 Offline Capable - Most tools work without internet connection
- Password Generator - Generate cryptographically secure passwords
- Password Strength Checker - Analyze password strength and entropy
Encoding & Decoding
- Base64 Encoder/Decoder - Encode and decode Base64 strings
- URL Encoder/Decoder - Encode or decode URL components
- Hex Converter - Convert text to and from hexadecimal
- HTML Entity Encoder - Encode special characters
- Hash Generator - Generate MD5, SHA-1, SHA-256, SHA-384, SHA-512
- Hash Identifier - Identify hash types
- Checksum Verifier - Verify file integrity
- Text Encryptor/Decryptor - AES-256-GCM encryption
- AES Encryption Tool - Advanced encryption standard
- Regex Tester - Test regular expressions in real-time
- JWT Decoder - Decode and inspect JSON Web Tokens
- CSP Builder - Build Content Security Policy headers
Generators
- UUID Generator - Generate v4 UUIDs
- Random String Generator - Cryptographically random strings
- IP Lookup - Get IP geolocation information
- DNS Lookup - Query DNS records
- Whois Lookup - Domain registration information
- Port Scanner - Network port reference
🚀 Quick Start
Prerequisites
- Node.js 18 or higher
- pnpm 8 or higher
Installation
# Clone the repository
git clone https://github.com/fizahmad/securitytools.git
cd securitytools
# Install dependencies
pnpm install
# Run development server
pnpm dev
Open http://localhost:3000 in your browser.
Build for Production
# Create optimized production build
pnpm build
# Start production server
pnpm start
📚 Documentation
Architecture & Design
Phase Documentation
Contributing
🏗️ Architecture Highlights
Modern Technology Stack
- Next.js 16 - Latest App Router with streaming SSR
- React 19 - Latest React with concurrent features
- TypeScript 5.7 - Strict type safety
- Tailwind CSS 4 - Modern styling with CSS variables
- Zod - Runtime type validation
- Radix UI - Accessible component primitives
Architectural Principles
- Separation of Concerns - Business logic separated from UI
- Type Safety First - Runtime validation with Zod schemas
- Feature-Based Structure - Organized by feature, not file type
- Pure Functions - Testable, reusable core logic
- Progressive Enhancement - Server components with client interactivity
Project Structure
securitytools/
├── app/ # Next.js App Router
├── components/ # Shared UI components
│ ├── feedback/ # Error boundaries, loading states
│ ├── layout/ # Navbar, footer
│ └── ui/ # shadcn/ui components
├── config/ # Configuration files
│ ├── site.ts # Site-wide config
│ ├── tools.ts # Tool registry (single source of truth)
│ ├── features.ts # Feature flags
│ └── seo.ts # SEO configuration
├── lib/ # Core business logic
│ ├── core/ # Pure functions
│ │ ├── crypto/ # Cryptographic functions
│ │ ├── encoding/ # Encoding utilities
│ │ └── validation/ # Input validation
│ ├── utils/ # Generic utilities
│ ├── env.ts # Type-safe environment variables
│ └── errors.ts # Error handling
├── types/ # TypeScript types
│ ├── domain/ # Domain models
│ └── ui/ # UI types
├── hooks/ # Custom React hooks
└── public/ # Static assets
🔒 Security
Client-Side Processing
All tools process data entirely in your browser:
- ✅ No data sent to any server
- ✅ Works offline
- ✅ Your data never leaves your device
We implement comprehensive security headers:
- Content Security Policy (CSP)
- Strict-Transport-Security (HSTS)
- X-Frame-Options
- X-Content-Type-Options
- Referrer-Policy
Cryptographic Standards
- Web Crypto API for secure randomness
- AES-256-GCM for encryption
- SHA-256/384/512 for hashing
- Industry-standard algorithms
🤝 Contributing
We welcome contributions! Please see our Contributing Guidelines for details.
How to Contribute
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature)
- Commit your changes (
git commit -m 'feat: add amazing feature')
- Push to the branch (
git push origin feature/amazing-feature)
- Open a Pull Request
Development Guidelines
- Follow TypeScript strict mode
- Write tests for new features
- Follow conventional commit messages
- Update documentation as needed
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
📞 Support
🌟 Star History
If you find this project useful, please consider giving it a star! ⭐
Built with ❤️ by the SecurityTools Team
Website • GitHub • Twitter
Maintained by Waseem Akram and the open-source community.