🔧 build(_new): remove *

This commit is contained in:
Eshan Roy
2024-12-07 19:51:14 +05:30
parent c3b6ab5f03
commit d5b90950f2
27 changed files with 0 additions and 5995 deletions

25
.gitignore vendored
View File

@@ -1,25 +0,0 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*
node_modules
dist
dist-ssr
*.local
# Editor directories and files
.vscode/*
!.vscode/extensions.json
.idea
.DS_Store
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?
.bolt

View File

@@ -1,28 +0,0 @@
import js from '@eslint/js';
import globals from 'globals';
import reactHooks from 'eslint-plugin-react-hooks';
import reactRefresh from 'eslint-plugin-react-refresh';
import tseslint from 'typescript-eslint';
export default tseslint.config(
{ ignores: ['dist'] },
{
extends: [js.configs.recommended, ...tseslint.configs.recommended],
files: ['**/*.{ts,tsx}'],
languageOptions: {
ecmaVersion: 2020,
globals: globals.browser,
},
plugins: {
'react-hooks': reactHooks,
'react-refresh': reactRefresh,
},
rules: {
...reactHooks.configs.recommended.rules,
'react-refresh/only-export-components': [
'warn',
{ allowConstantExport: true },
],
},
}
);

View File

@@ -1,13 +0,0 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/svg+xml" href="/vite.svg" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Snigdha OS</title>
</head>
<body>
<div id="root"></div>
<script type="module" src="/src/main.tsx"></script>
</body>
</html>

4433
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,37 +0,0 @@
{
"name": "snigdhaos-web-dev",
"private": true,
"version": "0.0.0",
"type": "module",
"scripts": {
"dev": "vite",
"build": "vite build",
"lint": "eslint .",
"preview": "vite preview",
"deploy": "gh-pages -d dist"
},
"dependencies": {
"lucide-react": "^0.344.0",
"react": "^18.3.1",
"react-dom": "^18.3.1",
"react-icons": "^5.4.0",
"react-router-dom": "^6.22.3"
},
"devDependencies": {
"@eslint/js": "^9.9.1",
"@types/react": "^18.3.5",
"@types/react-dom": "^18.3.0",
"@vitejs/plugin-react": "^4.3.1",
"autoprefixer": "^10.4.18",
"eslint": "^9.9.1",
"eslint-plugin-react-hooks": "^5.1.0-rc.0",
"eslint-plugin-react-refresh": "^0.4.11",
"gh-pages": "^6.2.0",
"globals": "^15.9.0",
"postcss": "^8.4.35",
"tailwindcss": "^3.4.1",
"typescript": "^5.5.3",
"typescript-eslint": "^8.3.0",
"vite": "^5.4.2"
}
}

View File

@@ -1,6 +0,0 @@
export default {
plugins: {
tailwindcss: {},
autoprefixer: {},
},
};

View File

@@ -1,20 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>404 - Not Found</title>
<script>
// Redirect all 404 routes to the homepage (index.html) to let React Router handle routing
var redirectTo = '/';
var pathname = location.pathname;
if (pathname && pathname !== '/' && pathname !== '/index.html') {
redirectTo += pathname;
}
location.replace(redirectTo);
</script>
</head>
<body>
<p>Redirecting...</p>
</body>
</html>

View File

@@ -1,35 +0,0 @@
// import React from 'react';
import { BrowserRouter as Router, Routes, Route } from 'react-router-dom';
import Navbar from './components/layout/Navbar';
import Footer from './components/layout/Footer';
import Home from './pages/Home';
import About from './pages/About';
import Features from './pages/Features';
import Download from './pages/Download';
import Developers from './pages/Developers';
import PrivacyPolicy from './pages/PrivacyPolicy'; // Import the PrivacyPolicy page
import CookieNotice from './components/CookieNotice'; // Cookie Notice
function App() {
return (
<Router>
<div className="flex flex-col min-h-screen">
<Navbar />
<main className="flex-grow">
<Routes>
<Route path="/" element={<Home />} />
<Route path="/about" element={<About />} />
<Route path="/features" element={<Features />} />
<Route path="/download" element={<Download />} />
<Route path="/developers" element={<Developers />} />
<Route path="/privacy-policy" element={<PrivacyPolicy />} />
</Routes>
</main>
<CookieNotice />
<Footer />
</div>
</Router>
);
}
export default App;

View File

@@ -1,42 +0,0 @@
// src/components/CookieNotice.tsx
import React, { useState, useEffect } from 'react';
const CookieNotice: React.FC = () => {
const [isVisible, setIsVisible] = useState(false);
useEffect(() => {
const isCookieAccepted = localStorage.getItem('cookieAccepted');
if (!isCookieAccepted) {
setIsVisible(true);
}
}, []);
const handleAccept = () => {
localStorage.setItem('cookieAccepted', 'true');
setIsVisible(false);
};
if (!isVisible) return null;
return (
<div className="fixed bottom-4 left-4 right-4 bg-gray-900 text-white p-4 rounded-lg shadow-lg md:max-w-md md:mx-auto">
<p className="text-sm">
This website uses cookies to ensure you get the best experience on our website. By continuing to browse, you consent to our use of cookies.{' '}
<a href="/privacy-policy" className="text-blue-400 underline hover:text-blue-300">
Learn more
</a>.
</p>
<div className="mt-3 text-right">
<button
onClick={handleAccept}
className="bg-blue-500 hover:bg-blue-600 text-white px-4 py-2 rounded-md text-sm"
>
Accept
</button>
</div>
</div>
);
};
export default CookieNotice;

View File

@@ -1,133 +0,0 @@
import { useState, useEffect } from 'react';
import { ChevronLeft, ChevronRight } from 'lucide-react';
const slides = [
{
type: 'image',
url: "https://images.pexels.com/photos/614117/pexels-photo-614117.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=1",
title: "Data Encryption",
description: "Protect sensitive information with strong encryption protocols."
},
{
type: 'image',
url: "https://images.pexels.com/photos/5380792/pexels-photo-5380792.jpeg?auto=compress&cs=tinysrgb&dpr=1&w=500",
title: "Firewalls",
description: "Secure your network with advanced firewall protection."
},
{
type: 'image',
url: "https://images.pexels.com/photos/14066351/pexels-photo-14066351.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=1",
title: "Malware Detection",
description: "Detect and mitigate malware threats with sophisticated tools."
}
// {
// type: 'image',
// url: "https://images.unsplash.com/photo-1584697964178-70f5289cbbd1?crop=entropy&cs=tinysrgb&fit=max&ixid=MnwzNjA3fDB8MHxwaG90by1mZWF0Y2h8OXx8c3lzdGVtcyUyMGFuZCUyMHNlY3VyaXR5fGVufDB8fHx8fDE2NzgzNjM0NjQ&ixlib=rb-1.2.1&q=80&w=1080",
// title: "Cybersecurity Awareness",
// description: "Stay informed about the latest cybersecurity trends and threats."
// },
// {
// type: 'image',
// url: "https://images.unsplash.com/photo-1584697964178-70f5289cbbd1?crop=entropy&cs=tinysrgb&fit=max&ixid=MnwzNjA3fDB8MHxwaG90by1mZWF0Y2h8OXx8c3lzdGVtcyUyMGFuZCUyMHNlY3VyaXR5fGVufDB8fHx8fDE2NzgzNjM0NjQ&ixlib=rb-1.2.1&q=80&w=1080",
// title: "Advanced Threat Protection",
// description: "Protect your systems with advanced threat protection tools."
// },
// {
// type: 'image',
// url: "https://images.unsplash.com/photo-1590517286893-84f635b02cf0?crop=entropy&cs=tinysrgb&fit=max&ixid=MnwzNjA3fDB8MHxwaG90by1mZWF0Y2h8MXx8cGFzc3dvcmQlMjBmb3IlMjBjdXJlcyxlbnwwfHx8fDE2NzgzNjM5Nzg&ixlib=rb-1.2.1&q=80&w=1080",
// title: "Cybersecurity Policy",
// description: "Establish robust cybersecurity policies for your organization."
// },
// {
// type: 'image',
// url: "https://images.unsplash.com/photo-1622736606985-5f6881a2ffb6?crop=entropy&cs=tinysrgb&fit=max&ixid=MnwzNjA3fDB8MHxwaG90by1mZWF0Y2h8NXx8aXNtYWdlJTIwd2l0aCUyMHRlY2huaWNhbHxlbnwwfHx8fDE2NzgzNjQyNzg&ixlib=rb-1.2.1&q=80&w=1080",
// title: "Cybersecurity Tools",
// description: "Utilize the latest cybersecurity tools to keep your systems safe."
// }
];
export default function ImageSlider() {
const [currentIndex, setCurrentIndex] = useState(0);
const [isPlaying, setIsPlaying] = useState(true);
const prevSlide = () => {
const isFirstSlide = currentIndex === 0;
const newIndex = isFirstSlide ? slides.length - 1 : currentIndex - 1;
setCurrentIndex(newIndex);
};
const nextSlide = () => {
const isLastSlide = currentIndex === slides.length - 1;
const newIndex = isLastSlide ? 0 : currentIndex + 1;
setCurrentIndex(newIndex);
};
useEffect(() => {
let timer;
if (isPlaying) {
timer = setInterval(() => {
nextSlide();
}, 2000); // Longer interval for videos
}
return () => clearInterval(timer);
}, [currentIndex, isPlaying]);
const renderSlideContent = () => {
const slide = slides[currentIndex];
if (slide.type === 'video') {
return (
<video
autoPlay
muted
loop
className="absolute inset-0 w-full h-full object-cover"
onPlay={() => setIsPlaying(false)}
onEnded={() => setIsPlaying(true)}
>
<source src={slide.url} type="video/mp4" />
</video>
);
}
return (
<div
style={{
backgroundImage: `url(${slide.url})`,
}}
className="w-full h-full bg-center bg-cover"
/>
);
};
return (
<div className="relative h-[735px] w-full group">
<div className="w-full h-full bg-black relative overflow-hidden">
{renderSlideContent()}
<div className="absolute inset-0 bg-black/50 flex items-center justify-center flex-col text-white text-center px-4">
<h2 className="text-4xl md:text-5xl font-bold mb-4">{slides[currentIndex].title}</h2>
<p className="text-xl md:text-2xl max-w-2xl">{slides[currentIndex].description}</p>
</div>
</div>
{/* Navigation Arrows */}
<div className="hidden group-hover:block absolute top-[50%] -translate-y-[-50%] left-5 text-2xl rounded-full p-2 bg-black/20 text-white cursor-pointer">
<ChevronLeft onClick={prevSlide} className="h-6 w-6" />
</div>
<div className="hidden group-hover:block absolute top-[50%] -translate-y-[-50%] right-5 text-2xl rounded-full p-2 bg-black/20 text-white cursor-pointer">
<ChevronRight onClick={nextSlide} className="h-6 w-6" />
</div>
{/* Dots */}
<div className="absolute bottom-4 left-1/2 transform -translate-x-1/2 flex space-x-2">
{slides.map((_, slideIndex) => (
<div
key={slideIndex}
onClick={() => setCurrentIndex(slideIndex)}
className={`w-3 h-3 rounded-full cursor-pointer transition-all ${
currentIndex === slideIndex ? 'bg-white scale-125' : 'bg-white/50'
}`}
></div>
))}
</div>
</div>
);
}

View File

@@ -1,106 +0,0 @@
// import React from 'react';
import {
Wifi,
Network,
Key,
Bug,
Fingerprint,
Radio,
Database,
Shield,
Smartphone,
Webhook
} from 'lucide-react';
const tools = [
{
icon: <Wifi className="h-6 w-6" />,
name: "Aircrack-ng",
category: "Wireless",
description: "Complete suite for wireless network security assessment"
},
{
icon: <Network className="h-6 w-6" />,
name: "Nmap",
category: "Network Analysis",
description: "Powerful network discovery and security scanning tool"
},
{
icon: <Key className="h-6 w-6" />,
name: "John the Ripper",
category: "Password Attacks",
description: "Advanced password cracker with multiple attack modes"
},
{
icon: <Bug className="h-6 w-6" />,
name: "Metasploit",
category: "Exploitation",
description: "Framework for developing and executing exploit code"
},
{
icon: <Fingerprint className="h-6 w-6" />,
name: "Wireshark",
category: "Packet Analysis",
description: "Network protocol analyzer for detailed traffic inspection"
},
{
icon: <Radio className="h-6 w-6" />,
name: "Kismet",
category: "Wireless",
description: "Wireless network and device detector, sniffer, and IDS"
},
{
icon: <Database className="h-6 w-6" />,
name: "SQLmap",
category: "Web",
description: "Automated SQL injection and database takeover tool"
},
{
icon: <Shield className="h-6 w-6" />,
name: "Burp Suite",
category: "Web",
description: "Integrated platform for web application security testing"
},
{
icon: <Smartphone className="h-6 w-6" />,
name: "Frida",
category: "Mobile",
description: "Dynamic instrumentation toolkit for mobile app testing"
},
{
icon: <Webhook className="h-6 w-6" />,
name: "Hydra",
category: "Password Attacks",
description: "Fast network authentication cracker"
}
];
export default function PenTestTools() {
return (
<section className="py-20 bg-gray-50">
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div className="text-center mb-16">
<h2 className="text-3xl font-bold text-gray-900">Featured Security Tools</h2>
<p className="mt-4 text-xl text-gray-600">Comprehensive suite of pre-installed penetration testing tools</p>
</div>
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8">
{tools.map((tool, index) => (
<div key={index} className="bg-white p-6 rounded-lg shadow-lg hover:shadow-xl transition-shadow">
<div className="flex items-start space-x-4">
<div className="bg-[#754ffe] p-3 rounded-lg text-white">
{tool.icon}
</div>
<div>
<h3 className="text-xl font-semibold mb-1">{tool.name}</h3>
<span className="text-sm text-[#754ffe] font-medium">{tool.category}</span>
<p className="mt-2 text-gray-600">{tool.description}</p>
</div>
</div>
</div>
))}
</div>
</div>
</section>
);
}

View File

@@ -1,81 +0,0 @@
import React from 'react';
import { FaGithub, FaDev } from 'react-icons/fa';
export default function Footer() {
return (
<footer className="bg-gray-900 text-white">
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-12">
<div className="grid grid-cols-1 md:grid-cols-4 gap-8">
<div>
<h3 className="text-xl font-bold mb-4">Snigdha OS</h3>
<p className="text-gray-400">The Next Generation Security-Focused Operating System</p>
</div>
<div>
<h4 className="text-lg font-semibold mb-4">Quick Links</h4>
<ul className="space-y-2">
<li><a href="/download" className="text-gray-400 hover:text-[#754ffe]">Download</a></li>
<li><a href="/docs" className="text-gray-400 hover:text-[#754ffe]">Documentation</a></li>
<li><a href="/tools" className="text-gray-400 hover:text-[#754ffe]">Tools</a></li>
<li><a href="/contact" className="text-gray-400 hover:text-[#754ffe]">Contact Us</a></li>
</ul>
</div>
<div>
<h4 className="text-lg font-semibold mb-4">Community</h4>
<ul className="space-y-2">
<li><a href="/forums" className="text-gray-400 hover:text-[#754ffe]">Forums</a></li>
<li><a href="/blog" className="text-gray-400 hover:text-[#754ffe]">Blog</a></li>
<li><a href="/support" className="text-gray-400 hover:text-[#754ffe]">Support</a></li>
<li><a href="/contribute" className="text-gray-400 hover:text-[#754ffe]">Contribute</a></li>
</ul>
</div>
<div>
<h4 className="text-lg font-semibold mb-4">Connect</h4>
<div className="flex space-x-4">
<a href="https://github.com/snigdha-os" className="text-gray-400 hover:text-[#754ffe]">
<FaGithub className="h-6 w-6" />
</a>
<a href="https://dev.to/snigdhaos" className="text-gray-400 hover:text-[#754ffe]">
<FaDev className="h-6 w-6" />
</a>
</div>
</div>
</div>
{/* Legal & Newsletter Section */}
<div className="mt-8 grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 gap-4 text-center md:text-left">
<div>
<h4 className="text-lg font-semibold mb-2">Legal</h4>
<ul className="space-y-2">
<li>
<a href="/privacy-policy" className="text-gray-400 hover:text-[#754ffe]">
Privacy Policy
</a>
</li>
<li>
<a href="/terms-of-service" className="text-gray-400 hover:text-[#754ffe]">
Terms of Service
</a>
</li>
</ul>
</div>
<div>
<h4 className="text-lg font-semibold mb-2">Newsletter</h4>
<form>
<input
type="email"
placeholder="Your email"
className="p-2 rounded bg-gray-800 text-gray-300 mb-4"
/>
<button className="px-4 py-2 bg-[#754ffe] text-white rounded">Subscribe</button>
</form>
</div>
</div>
{/* Footer Bottom */}
<div className="mt-8 pt-8 border-t border-gray-800 text-center text-gray-400">
<p>&copy; {new Date().getFullYear()} Snigdha OS. All rights reserved.</p>
</div>
</div>
</footer>
);
}

View File

@@ -1,92 +0,0 @@
import React from 'react';
import { NavLink } from 'react-router-dom';
import { Menu, X, Terminal } from 'lucide-react';
import { FaGithub, FaDev } from 'react-icons/fa';
export default function Navbar() {
const [isOpen, setIsOpen] = React.useState(false);
const navLinks = [
{ path: '/', label: 'Home' },
{ path: '/about', label: 'About' },
{ path: '/features', label: 'Features' },
{ path: '/download', label: 'Download' },
{ path: '/developers', label: 'Developers' }
];
return (
<nav className="bg-white shadow-md">
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div className="flex justify-between h-16 items-center">
<div className="flex items-center">
<NavLink to="/" className="flex items-center">
<Terminal className="h-8 w-8 text-[#754ffe]" />
<span className="ml-2 text-xl font-bold text-gray-900">Snigdha OS</span>
</NavLink>
</div>
<div className="hidden md:flex items-center space-x-8">
{navLinks.map(({ path, label }) => (
<NavLink
key={path}
to={path}
className={({ isActive }) =>
`${isActive ? 'text-[#754ffe]' : 'text-gray-700'} hover:text-[#754ffe] transition-colors`
}
>
{label}
</NavLink>
))}
</div>
{/* Social Media Icons */}
<div className="hidden md:flex items-center space-x-6 ml-6">
<a
href="https://github.com/Snigdha-OS"
target="_blank"
rel="noopener noreferrer"
className="text-gray-700 hover:text-[#754ffe] transition-colors"
>
<FaGithub className="h-6 w-6" />
</a>
<a
href="https://dev.to/snigdhaos"
target="_blank"
rel="noopener noreferrer"
className="text-gray-700 hover:text-[#754ffe] transition-colors"
>
<FaDev className="h-6 w-6" />
</a>
</div>
<div className="md:hidden flex items-center">
<button
onClick={() => setIsOpen(!isOpen)}
className="text-gray-700 hover:text-[#754ffe]"
>
{isOpen ? <X className="h-6 w-6" /> : <Menu className="h-6 w-6" />}
</button>
</div>
</div>
</div>
{/* Mobile menu */}
{isOpen && (
<div className="md:hidden">
<div className="px-2 pt-2 pb-3 space-y-1 sm:px-3">
{navLinks.map(({ path, label }) => (
<NavLink
key={path}
to={path}
className="block px-3 py-2 text-gray-700 hover:text-[#754ffe]"
onClick={() => setIsOpen(false)}
>
{label}
</NavLink>
))}
</div>
</div>
)}
</nav>
);
}

View File

@@ -1,3 +0,0 @@
@tailwind base;
@tailwind components;
@tailwind utilities;

View File

@@ -1,10 +0,0 @@
import { StrictMode } from 'react';
import { createRoot } from 'react-dom/client';
import App from './App.tsx';
import './index.css';
createRoot(document.getElementById('root')!).render(
<StrictMode>
<App />
</StrictMode>
);

View File

@@ -1,113 +0,0 @@
// import React from 'react';
import { Shield, Users, Globe, Package, Laptop, Star } from 'lucide-react';
export default function About() {
return (
<div className="py-16">
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 text-center">
{/* Hero Section */}
<div className="mb-16">
<h1 className="text-4xl font-bold text-gray-900 mb-4">About Snigdha OS</h1>
<p className="text-xl text-gray-600 max-w-3xl mx-auto">
Snigdha OS is an open-source, Debian-based Linux distribution geared towards various information security tasks.
</p>
</div>
{/* Mission Section */}
<div className="bg-white rounded-lg shadow-lg p-8 mb-16 mx-auto max-w-3xl">
<h2 className="text-2xl font-bold text-gray-900 mb-6">Our Mission</h2>
<p className="text-gray-600 leading-relaxed">
Snigdha OS aims to provide security professionals and IT administrators with the most comprehensive and trusted suite of security tools. Our mission is to enable cybersecurity professionals and enthusiasts to perform thorough security auditing and penetration testing with enterprise-grade tools.
</p>
</div>
{/* Key Points */}
<div className="grid grid-cols-1 md:grid-cols-3 gap-8 mb-16 text-center">
<div className="bg-white p-6 rounded-lg shadow-lg">
<Shield className="h-12 w-12 text-[#754ffe] mb-4 mx-auto" />
<h3 className="text-xl font-semibold mb-2">Security Focus</h3>
<p className="text-gray-600">
Built specifically for penetration testing and security auditing, with hundreds of tools pre-installed.
</p>
</div>
<div className="bg-white p-6 rounded-lg shadow-lg">
<Users className="h-12 w-12 text-[#754ffe] mb-4 mx-auto" />
<h3 className="text-xl font-semibold mb-2">Community Driven</h3>
<p className="text-gray-600">
Supported by a vast community of security professionals and enthusiasts worldwide.
</p>
</div>
<div className="bg-white p-6 rounded-lg shadow-lg">
<Globe className="h-12 w-12 text-[#754ffe] mb-4 mx-auto" />
<h3 className="text-xl font-semibold mb-2">Global Impact</h3>
<p className="text-gray-600">
Used by cybersecurity professionals and organizations around the world.
</p>
</div>
</div>
{/* Why Snigdha OS? */}
<div className="bg-white rounded-lg shadow-lg p-8 mb-16 mx-auto max-w-3xl">
<h2 className="text-2xl font-bold text-gray-900 mb-6">Why Snigdha OS?</h2>
<p className="text-gray-600 leading-relaxed mb-4">
Snigdha OS is designed by security professionals for security professionals. It provides the tools needed for penetration testing, vulnerability scanning, and forensic analysis. It is not just a Linux distributionit's a full-fledged security platform.
</p>
<p className="text-gray-600 leading-relaxed mb-4">
With its constant updates and cutting-edge features, Snigdha OS ensures that you are always prepared for the latest security challenges. It is trusted by both ethical hackers and security researchers globally.
</p>
</div>
{/* Features */}
<div className="grid grid-cols-1 md:grid-cols-3 gap-8 mb-16 text-center">
<div className="bg-white p-6 rounded-lg shadow-lg">
<Package className="h-12 w-12 text-[#754ffe] mb-4 mx-auto" />
<h3 className="text-xl font-semibold mb-2">Comprehensive Toolset</h3>
<p className="text-gray-600">
Over 600 pre-installed penetration testing tools, covering a variety of cybersecurity tasks.
</p>
</div>
<div className="bg-white p-6 rounded-lg shadow-lg">
<Laptop className="h-12 w-12 text-[#754ffe] mb-4 mx-auto" />
<h3 className="text-xl font-semibold mb-2">Customizable Environment</h3>
<p className="text-gray-600">
Snigdha OS is highly customizable, allowing you to configure the environment based on your needs and workflows.
</p>
</div>
<div className="bg-white p-6 rounded-lg shadow-lg">
<Star className="h-12 w-12 text-[#754ffe] mb-4 mx-auto" />
<h3 className="text-xl font-semibold mb-2">Top-tier Performance</h3>
<p className="text-gray-600">
Snigdha OS is optimized for high performance and can run on a wide variety of platforms, including ARM and virtual machines.
</p>
</div>
</div>
{/* Core Values */}
<div className="bg-white rounded-lg shadow-lg p-8 mb-16 mx-auto max-w-3xl">
<h2 className="text-2xl font-bold text-gray-900 mb-6">Core Values</h2>
<div className="space-y-4 text-gray-600">
<p>
At Snigdha OS, we value openness, transparency, and the ability to create solutions that enable professionals to tackle real-world security issues. Our focus is on delivering a user-friendly yet powerful platform that enhances the security community's efforts globally.
</p>
<p>
Snigdha OS is committed to maintaining the highest standards of development, ensuring that the tools we provide are the most reliable, secure, and effective in the industry.
</p>
</div>
</div>
{/* History Section */}
<div className="bg-white rounded-lg shadow-lg p-8 mx-auto max-w-3xl">
<h2 className="text-2xl font-bold text-gray-900 mb-6">Our History</h2>
<div className="space-y-4 text-gray-600">
<p>
Snigdha OS was released in 2013 as a complete, top-to-bottom rebuild of BackTrack Linux. It adheres completely to Debian development standards and features a vast array of penetration testing tools from various security and forensics domains.
</p>
<p>
The distribution is developed and maintained by Offensive Security, a leading provider of information security training and penetration testing services.
</p>
</div>
</div>
</div>
</div>
);
}

View File

@@ -1,170 +0,0 @@
import { useEffect, useState } from 'react';
import { Code, GitBranch, Users, MessageSquare } from 'lucide-react';
// Define the type for a developer's GitHub data
type Developer = {
id: number;
login: string;
name: string | null;
avatar_url: string;
html_url: string;
bio: string | null; // Adding bio field
};
export default function Developers() {
const [developers, setDevelopers] = useState<Developer[]>([]);
useEffect(() => {
const fetchDevelopers = async () => {
const githubUsernames = ["eshanized", "iconized", "alokified", "utkrshift"]; // Replace with actual GitHub usernames
try {
const developerData = await Promise.all(
githubUsernames.map(async (username) => {
const response = await fetch(`https://api.github.com/users/${username}`);
if (!response.ok) {
throw new Error(`Failed to fetch data for ${username}`);
}
return response.json();
})
);
setDevelopers(developerData);
} catch (error) {
console.error("Error fetching developer data:", error);
}
};
fetchDevelopers();
}, []);
return (
<div className="py-16">
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
{/* Hero Section */}
<div className="text-center mb-16">
<h1 className="text-4xl font-bold text-gray-900 mb-4">Developers</h1>
<p className="text-xl text-gray-600 max-w-3xl mx-auto">
Join the Snigdha OS development community and contribute to the most advanced penetration testing distribution.
</p>
</div>
{/* Meet the Developers Section */}
<div className="bg-white rounded-lg shadow-lg p-8 mb-16">
<h2 className="text-2xl font-bold mb-6">Meet the Developers</h2>
<div className="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-6">
{developers.length > 0 ? (
developers.map((developer) => (
<div key={developer.id} className="p-4 border border-gray-200 rounded-lg text-center">
<img
src={developer.avatar_url}
alt={developer.login}
className="w-20 h-20 rounded-full mx-auto mb-4"
/>
<h3 className="text-lg font-semibold">{developer.name || developer.login}</h3>
<p className="text-gray-600">@{developer.login}</p>
<p className="text-gray-500 text-sm mt-2">{developer.bio || "No bio available."}</p>
<a
href={developer.html_url}
target="_blank"
rel="noopener noreferrer"
className="text-[#754ffe] font-medium mt-4 inline-block"
>
View Profile
</a>
</div>
))
) : (
<p className="text-gray-600">Loading developer information...</p>
)}
</div>
</div>
{/* Get Involved and Development Resources Section */}
<div className="grid grid-cols-1 md:grid-cols-2 gap-8 mb-16">
{/* Get Involved Section */}
<div className="bg-white p-8 rounded-lg shadow-lg">
<Code className="h-12 w-12 text-[#754ffe] mb-4" />
<h2 className="text-2xl font-bold mb-4">Get Involved</h2>
<p className="text-gray-600 mb-6">
There are many ways to contribute to Kali Linux. Whether you're a developer, security researcher, or documentation writer, your contributions are valuable.
</p>
<ul className="space-y-3 text-gray-600">
<li className="flex items-center">
<GitBranch className="h-5 w-5 mr-2 text-[#754ffe]" />
Submit pull requests
</li>
<li className="flex items-center">
<MessageSquare className="h-5 w-5 mr-2 text-[#754ffe]" />
Report bugs
</li>
<li className="flex items-center">
<Users className="h-5 w-5 mr-2 text-[#754ffe]" />
Join discussions
</li>
</ul>
</div>
{/* Development Resources Section */}
<div className="bg-white p-8 rounded-lg shadow-lg">
<h2 className="text-2xl font-bold mb-4">Development Resources</h2>
<div className="space-y-4">
<a href="https://github.com/kali-linux" className="block p-4 border border-gray-200 rounded-lg hover:border-[#754ffe] transition-colors">
<h3 className="font-semibold mb-2">GitHub Repository</h3>
<p className="text-gray-600">Access our source code and contribute to development</p>
</a>
<a href="/docs/development" className="block p-4 border border-gray-200 rounded-lg hover:border-[#754ffe] transition-colors">
<h3 className="font-semibold mb-2">Development Documentation</h3>
<p className="text-gray-600">Learn about our development process and guidelines</p>
</a>
<a href="/community" className="block p-4 border border-gray-200 rounded-lg hover:border-[#754ffe] transition-colors">
<h3 className="font-semibold mb-2">Community Forums</h3>
<p className="text-gray-600">Discuss development topics with other contributors</p>
</a>
</div>
</div>
</div>
{/* Current Projects */}
<div className="bg-white rounded-lg shadow-lg p-8 mb-16">
<h2 className="text-2xl font-bold mb-6">Current Projects</h2>
<div className="grid grid-cols-1 md:grid-cols-2 gap-6">
<div className="p-4 border border-gray-200 rounded-lg">
<h3 className="text-xl font-semibold mb-2">Tool Development</h3>
<p className="text-gray-600">Help improve existing tools or develop new security tools for Kali Linux.</p>
</div>
<div className="p-4 border border-gray-200 rounded-lg">
<h3 className="text-xl font-semibold mb-2">Documentation</h3>
<p className="text-gray-600">Contribute to our documentation and help make Kali more accessible.</p>
</div>
<div className="p-4 border border-gray-200 rounded-lg">
<h3 className="text-xl font-semibold mb-2">Testing</h3>
<p className="text-gray-600">Help test new features and tools before they're released.</p>
</div>
<div className="p-4 border border-gray-200 rounded-lg">
<h3 className="text-xl font-semibold mb-2">Localization</h3>
<p className="text-gray-600">Help translate Kali Linux tools and documentation.</p>
</div>
</div>
</div>
{/* Contact Section */}
<div className="bg-white rounded-lg shadow-lg p-8">
<h2 className="text-2xl font-bold mb-6">Get in Touch</h2>
<div className="grid grid-cols-1 md:grid-cols-3 gap-6">
<a href="/irc" className="p-4 text-center border border-gray-200 rounded-lg hover:border-[#754ffe] transition-colors">
<h3 className="font-semibold mb-2">IRC Channel</h3>
<p className="text-gray-600">Chat with developers in real-time</p>
</a>
<a href="/mailing-list" className="p-4 text-center border border-gray-200 rounded-lg hover:border-[#754ffe] transition-colors">
<h3 className="font-semibold mb-2">Mailing List</h3>
<p className="text-gray-600">Subscribe to development discussions</p>
</a>
<a href="/bug-tracker" className="p-4 text-center border border-gray-200 rounded-lg hover:border-[#754ffe] transition-colors">
<h3 className="font-semibold mb-2">Bug Tracker</h3>
<p className="text-gray-600">Report issues and track bugs</p>
</a>
</div>
</div>
</div>
</div>
);
}

View File

@@ -1,157 +0,0 @@
// import React from 'react';
import { Download, Laptop, HardDrive, Cloud, Archive, Server, Box } from 'lucide-react';
export default function DownloadPage() {
return (
<div className="py-16">
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
{/* Hero Section */}
<div className="text-center mb-16">
<h1 className="text-4xl font-bold text-gray-900 mb-4">Download Snigdha OS</h1>
<p className="text-xl text-gray-600 max-w-3xl mx-auto">
Choose the installation option that best suits your needs. We provide different formats and configurations to suit every environment.
</p>
</div>
{/* Download Options */}
<div className="grid grid-cols-1 md:grid-cols-3 gap-8 mb-16">
<div className="bg-white p-6 rounded-lg shadow-lg text-center">
<Laptop className="h-12 w-12 text-[#754ffe] mx-auto mb-4" />
<h3 className="text-xl font-semibold mb-2">Installer Images</h3>
<p className="text-gray-600 mb-4">
Full installation images for various architectures and desktop environments.
</p>
<button className="bg-[#754ffe] text-white px-6 py-2 rounded-lg font-semibold hover:bg-[#6344d5] transition-colors inline-flex items-center">
<Download className="h-5 w-5 mr-2" />
Download ISO
</button>
</div>
<div className="bg-white p-6 rounded-lg shadow-lg text-center">
<HardDrive className="h-12 w-12 text-[#754ffe] mx-auto mb-4" />
<h3 className="text-xl font-semibold mb-2">Virtual Machines</h3>
<p className="text-gray-600 mb-4">
Pre-configured VMs for VMware, VirtualBox, and Hyper-V.
</p>
<button className="bg-[#754ffe] text-white px-6 py-2 rounded-lg font-semibold hover:bg-[#6344d5] transition-colors inline-flex items-center">
<Download className="h-5 w-5 mr-2" />
Download VM
</button>
</div>
<div className="bg-white p-6 rounded-lg shadow-lg text-center">
<Cloud className="h-12 w-12 text-[#754ffe] mx-auto mb-4" />
<h3 className="text-xl font-semibold mb-2">ARM Images</h3>
<p className="text-gray-600 mb-4">
Images for Raspberry Pi, ARM-based boards, and other ARM devices.
</p>
<button className="bg-[#754ffe] text-white px-6 py-2 rounded-lg font-semibold hover:bg-[#6344d5] transition-colors inline-flex items-center">
<Download className="h-5 w-5 mr-2" />
Download ARM
</button>
</div>
</div>
{/* Additional Download Options */}
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8 mb-16">
<div className="bg-white p-6 rounded-lg shadow-lg text-center">
<Archive className="h-12 w-12 text-[#754ffe] mx-auto mb-4" />
<h3 className="text-xl font-semibold mb-2">Source Code</h3>
<p className="text-gray-600 mb-4">
Download the source code and contribute to the development of Snigdha OS.
</p>
<button className="bg-[#754ffe] text-white px-6 py-2 rounded-lg font-semibold hover:bg-[#6344d5] transition-colors inline-flex items-center">
<Download className="h-5 w-5 mr-2" />
Download Source
</button>
</div>
<div className="bg-white p-6 rounded-lg shadow-lg text-center">
<Server className="h-12 w-12 text-[#754ffe] mx-auto mb-4" />
<h3 className="text-xl font-semibold mb-2">Cloud Images</h3>
<p className="text-gray-600 mb-4">
Pre-configured cloud images for platforms like AWS, Azure, and Google Cloud.
</p>
<button className="bg-[#754ffe] text-white px-6 py-2 rounded-lg font-semibold hover:bg-[#6344d5] transition-colors inline-flex items-center">
<Download className="h-5 w-5 mr-2" />
Download Cloud Image
</button>
</div>
<div className="bg-white p-6 rounded-lg shadow-lg text-center">
<Box className="h-12 w-12 text-[#754ffe] mx-auto mb-4" />
<h3 className="text-xl font-semibold mb-2">Docker Images</h3>
<p className="text-gray-600 mb-4">
Snigdha OS available as Docker container images for lightweight testing.
</p>
<button className="bg-[#754ffe] text-white px-6 py-2 rounded-lg font-semibold hover:bg-[#6344d5] transition-colors inline-flex items-center">
<Download className="h-5 w-5 mr-2" />
Download Docker
</button>
</div>
</div>
{/* System Requirements */}
<div className="bg-white rounded-lg shadow-lg p-8 mb-16">
<h2 className="text-2xl font-bold text-gray-900 mb-6 text-center">System Requirements</h2>
<div className="grid grid-cols-1 md:grid-cols-2 gap-8">
<div>
<h3 className="text-lg font-semibold mb-3">Minimum Requirements</h3>
<ul className="space-y-2 text-gray-600">
<li> 2 GB RAM</li>
<li> 20 GB disk space</li>
<li> x64 or ARM processor</li>
<li> USB boot support</li>
<li> Graphics card with OpenGL support</li>
</ul>
</div>
<div>
<h3 className="text-lg font-semibold mb-3">Recommended</h3>
<ul className="space-y-2 text-gray-600">
<li> 4 GB RAM</li>
<li> 50 GB disk space</li>
<li> Multi-core processor</li>
<li> Graphics card (NVIDIA, AMD, or integrated)</li>
<li> SSD for faster boot and performance</li>
</ul>
</div>
</div>
</div>
{/* Installation Guide */}
<div className="bg-white rounded-lg shadow-lg p-8">
<h2 className="text-2xl font-bold text-gray-900 mb-6">Installation Guide</h2>
<div className="space-y-4">
<p className="text-gray-600">
Follow these steps to install Snigdha OS on your system:
</p>
<ol className="list-decimal list-inside space-y-2 text-gray-600">
<li>Download the appropriate image for your system</li>
<li>Create a bootable USB drive or DVD using tools like Rufus, balenaEtcher, or dd</li>
<li>Boot from the installation media</li>
<li>Follow the on-screen instructions to install Snigdha OS</li>
</ol>
<p className="text-gray-600 mt-4">
For detailed instructions and troubleshooting, refer to the full installation documentation available on our website.
</p>
</div>
</div>
{/* YouTube Video Section */}
<div className="mt-16 text-center">
<h2 className="text-2xl font-bold text-gray-900 mb-6">Watch the Installation Tutorial</h2>
<div className="relative pb-9/16 h-0 overflow-hidden">
<iframe
className="absolute inset-0 w-full h-full"
src="https://www.youtube.com/embed/your-video-id-here"
title="Installation Tutorial"
// frameBorder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowFullScreen
></iframe>
</div>
</div>
</div>
</div>
);
}

View File

@@ -1,150 +0,0 @@
// import React from 'react';
import { Terminal, Lock, Cpu, Cloud, Database, Shield, Wifi, Laptop } from 'lucide-react';
export default function Features() {
const features = [
{
icon: <Terminal className="h-8 w-8" />,
title: "600+ Security Tools",
description: "Pre-installed penetration testing and security tools covering various security domains."
},
{
icon: <Lock className="h-8 w-8" />,
title: "Multi-language Support",
description: "Tools and documentation available in multiple languages for global accessibility."
},
{
icon: <Cpu className="h-8 w-8" />,
title: "Wide Hardware Support",
description: "Supports ARM architecture (RPi), wireless interfaces, and GPU cracking."
},
{
icon: <Cloud className="h-8 w-8" />,
title: "Cloud Compatible",
description: "Can be run on various cloud platforms and virtual environments."
},
{
icon: <Database className="h-8 w-8" />,
title: "Customizable",
description: "Fully customizable environment with various desktop environments available."
},
{
icon: <Shield className="h-8 w-8" />,
title: "Enterprise Ready",
description: "Suitable for both individual and enterprise-level security testing."
},
{
icon: <Wifi className="h-8 w-8" />,
title: "Wireless Security",
description: "Equipped with tools for wireless network auditing and penetration testing."
},
{
icon: <Laptop className="h-8 w-8" />,
title: "Portable and Lightweight",
description: "Run Snigdha OS on a USB drive for portability without leaving traces on devices."
}
];
const toolCategories = [
{
title: "Information Gathering",
tools: [
"Network scanning and enumeration",
"OSINT tools",
"DNS analysis",
"Web reconnaissance",
"Social media analysis"
]
},
{
title: "Vulnerability Analysis",
tools: [
"Automated scanning tools",
"Database assessment",
"Cisco tools",
"Fuzzing tools",
"Web app vulnerability scanning"
]
},
{
title: "Exploitation Tools",
tools: [
"Metasploit Framework",
"Buffer Overflow exploitation",
"SQL injection tools",
"Social Engineering tools"
]
},
{
title: "Post-Exploitation",
tools: [
"Privilege escalation",
"Persistence",
"Data exfiltration",
"Forensics tools"
]
},
{
title: "Wireless Attacks",
tools: [
"WiFi cracking tools",
"Aircrack-ng suite",
"WEP/WPA/WPA2 attacks",
"Bluetooth hacking"
]
},
{
title: "Reverse Engineering",
tools: [
"Disassemblers",
"Debuggers",
"Binary analysis tools"
]
}
];
return (
<div className="py-16">
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
{/* Hero Section */}
<div className="text-center mb-16">
<h1 className="text-4xl font-bold text-gray-900 mb-4">Features</h1>
<p className="text-xl text-gray-600 max-w-3xl mx-auto">
Discover the powerful features that make Snigdha OS the premier platform for security testing.
</p>
</div>
{/* Features Grid */}
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8">
{features.map((feature, index) => (
<div key={index} className="bg-white p-6 rounded-lg shadow-lg hover:shadow-xl transition-shadow">
<div className="text-[#754ffe] mb-4">
{feature.icon}
</div>
<h3 className="text-xl font-semibold mb-2">{feature.title}</h3>
<p className="text-gray-600">{feature.description}</p>
</div>
))}
</div>
{/* Tool Categories Section */}
<div className="mt-20">
<h2 className="text-3xl font-bold text-center mb-12">Tool Categories</h2>
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8">
{toolCategories.map((category, index) => (
<div key={index} className="bg-white p-6 rounded-lg shadow-lg">
<h3 className="text-xl font-semibold mb-4 text-[#754ffe]">{category.title}</h3>
<ul className="space-y-2 text-gray-600">
{category.tools.map((tool, i) => (
<li key={i}> {tool}</li>
))}
</ul>
</div>
))}
</div>
</div>
</div>
</div>
);
}

View File

@@ -1,193 +0,0 @@
// import React from 'react';
import { ArrowRight, Shield, Settings, Activity, Cpu, Cloud, Code, Users } from 'lucide-react';
import ImageSlider from '../components/home/ImageSlider';
import PenTestTools from '../components/home/PenTestTools';
export default function Home() {
return (
<div>
{/* Hero Section with Slider */}
<ImageSlider />
{/* Penetration Testing Tools Section */}
<PenTestTools />
{/* Features Section */}
<section className="py-20 bg-white">
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<h2 className="text-3xl font-bold text-center mb-12">Why Choose Snigdha OS?</h2>
<div className="grid grid-cols-1 md:grid-cols-3 gap-8">
<div className="text-center">
<Shield className="mx-auto mb-4 h-20 w-20 text-[#754ffe]" />
<h3 className="text-xl font-semibold mb-2">Enhanced Security</h3>
<p className="text-gray-600">Built with advanced encryption and secure protocols to safeguard your data.</p>
</div>
<div className="text-center">
<Settings className="mx-auto mb-4 h-20 w-20 text-[#754ffe]" />
<h3 className="text-xl font-semibold mb-2">Fully Customizable</h3>
<p className="text-gray-600">Tailor the OS to meet your specific needs and workflows.</p>
</div>
<div className="text-center">
<Activity className="mx-auto mb-4 h-20 w-20 text-[#754ffe]" />
<h3 className="text-xl font-semibold mb-2">Lightweight Design</h3>
<p className="text-gray-600">Optimized for performance on both modern and older hardware.</p>
</div>
</div>
{/* New Reasons */}
<div className="grid grid-cols-1 md:grid-cols-3 gap-8 mt-16">
<div className="text-center">
<Cpu className="mx-auto mb-4 h-20 w-20 text-[#754ffe]" />
<h3 className="text-xl font-semibold mb-2">High Performance</h3>
<p className="text-gray-600">Snigdha OS delivers blazing-fast performance, even on low-end hardware.</p>
</div>
<div className="text-center">
<Cloud className="mx-auto mb-4 h-20 w-20 text-[#754ffe]" />
<h3 className="text-xl font-semibold mb-2">Cloud Integration</h3>
<p className="text-gray-600">Easily integrates with popular cloud services for streamlined workflows.</p>
</div>
<div className="text-center">
<Code className="mx-auto mb-4 h-20 w-20 text-[#754ffe]" />
<h3 className="text-xl font-semibold mb-2">Developer Friendly</h3>
<p className="text-gray-600">Packed with all the tools you need for development and penetration testing.</p>
</div>
</div>
{/* Additional Reasons */}
<div className="grid grid-cols-1 md:grid-cols-3 gap-8 mt-16">
<div className="text-center">
<Users className="mx-auto mb-4 h-20 w-20 text-[#754ffe]" />
<h3 className="text-xl font-semibold mb-2">Community Support</h3>
<p className="text-gray-600">Join a vibrant community of users, contributors, and experts.</p>
</div>
<div className="text-center">
<Shield className="mx-auto mb-4 h-20 w-20 text-[#754ffe]" />
<h3 className="text-xl font-semibold mb-2">Regular Updates</h3>
<p className="text-gray-600">Snigdha OS is frequently updated to ensure security and performance are up to date.</p>
</div>
<div className="text-center">
<Settings className="mx-auto mb-4 h-20 w-20 text-[#754ffe]" />
<h3 className="text-xl font-semibold mb-2">Open Source</h3>
<p className="text-gray-600">Freely available for modification and redistribution, with a strong open-source community backing.</p>
</div>
</div>
</div>
</section>
{/* Testimonials Section */}
<section className="py-20 bg-gray-50">
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 text-center">
<h2 className="text-3xl font-bold mb-12">What Our Users Say</h2>
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8">
{/* Testimonial 1 */}
<div className="bg-white shadow-lg rounded-lg p-6 text-center">
<div className="flex justify-center mb-4">
<img
className="w-16 h-16 rounded-full border-2 border-gray-300"
src="https://avatars.githubusercontent.com/u/118294498?v=4" // Example GitHub Profile Image
alt="akankshaadz"
/>
</div>
<p className="text-gray-600 italic mb-4">
"Snigdha OS has revolutionized how I approach cybersecurity tasks. The built-in tools are fantastic!"
</p>
<h4 className="font-semibold text-lg">- akankshaadz</h4>
</div>
{/* Testimonial 2 */}
<div className="bg-white shadow-lg rounded-lg p-6 text-center">
<div className="flex justify-center mb-4">
<img
className="w-16 h-16 rounded-full border-2 border-gray-300"
src="https://avatars.githubusercontent.com/u/7654321?v=4" // Example GitHub Profile Image
alt="Prajwal K."
/>
</div>
<p className="text-gray-600 italic mb-4">
"A game-changer for developers and penetration testers. Highly recommend!"
</p>
<h4 className="font-semibold text-lg">- Prajwal K.</h4>
</div>
{/* Testimonial 3 */}
<div className="bg-white shadow-lg rounded-lg p-6 text-center">
<div className="flex justify-center mb-4">
<img
className="w-16 h-16 rounded-full border-2 border-gray-300"
src="https://avatars.githubusercontent.com/u/1122334?v=4" // Example GitHub Profile Image
alt="Mark L."
/>
</div>
<p className="text-gray-600 italic mb-4">
"Runs seamlessly on my older laptop. The lightweight design is truly impressive."
</p>
<h4 className="font-semibold text-lg">- Mark L.</h4>
</div>
{/* Testimonial 4 */}
<div className="bg-white shadow-lg rounded-lg p-6 text-center">
<div className="flex justify-center mb-4">
<img
className="w-16 h-16 rounded-full border-2 border-gray-300"
src="https://avatars.githubusercontent.com/u/3412345?v=4" // Example GitHub Profile Image
alt="Samantha R."
/>
</div>
<p className="text-gray-600 italic mb-4">
"I love how Snigdha OS is always up-to-date with the latest tools. It's incredibly easy to use."
</p>
<h4 className="font-semibold text-lg">- Samantha R.</h4>
</div>
{/* Testimonial 5 */}
<div className="bg-white shadow-lg rounded-lg p-6 text-center">
<div className="flex justify-center mb-4">
<img
className="w-16 h-16 rounded-full border-2 border-gray-300"
src="https://avatars.githubusercontent.com/u/7892345?v=4" // Example GitHub Profile Image
alt="John D."
/>
</div>
<p className="text-gray-600 italic mb-4">
"Snigdha OS is an absolute powerhouse! Its exactly what I needed for my penetration testing tasks."
</p>
<h4 className="font-semibold text-lg">- John D.</h4>
</div>
</div>
</div>
</section>
{/* FAQ Section */}
<section className="py-20 bg-white">
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<h2 className="text-3xl font-bold text-center mb-12">Frequently Asked Questions</h2>
<div className="space-y-8">
<div>
<h3 className="text-xl font-semibold mb-2">Is Snigdha OS free to use?</h3>
<p className="text-gray-600">Yes, Snigdha OS is completely free and open-source.</p>
</div>
<div>
<h3 className="text-xl font-semibold mb-2">What hardware is supported?</h3>
<p className="text-gray-600">Snigdha OS is optimized to run on both modern and older hardware configurations.</p>
</div>
<div>
<h3 className="text-xl font-semibold mb-2">Can I customize Snigdha OS?</h3>
<p className="text-gray-600">Absolutely! Snigdha OS is highly customizable to meet your specific needs.</p>
</div>
</div>
</div>
</section>
{/* CTA Section */}
<section className="bg-gray-100 py-20">
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 text-center">
<h2 className="text-3xl font-bold mb-4">Ready to Experience Snigdha OS?</h2>
<p className="text-xl text-gray-600 mb-8">Join the next generation of secure computing</p>
<a
href="/download"
className="bg-[#754ffe] text-white px-8 py-3 rounded-lg font-semibold hover:bg-[#6344d5] transition-colors inline-flex items-center"
>
Download Snigdha OS
<ArrowRight className="ml-2 h-5 w-5" />
</a>
</div>
</section>
</div>
);
}

View File

@@ -1,65 +0,0 @@
// src/pages/PrivacyPolicy.tsx
import React from 'react';
const PrivacyPolicy: React.FC = () => {
return (
<div className="container mx-auto p-4">
<h1 className="text-3xl font-bold mb-4">Privacy Policy</h1>
<p className="text-lg mb-4">Last Updated: [Date]</p>
<h2 className="text-2xl font-semibold mt-4">1. Information We Collect</h2>
<p>We collect the following types of information when you use our website:</p>
<h3 className="text-xl font-semibold mt-4">Personal Information</h3>
<ul className="list-disc ml-6">
<li>Email Address</li>
<li>Account Information</li>
</ul>
<h3 className="text-xl font-semibold mt-4">Non-Personal Information</h3>
<ul className="list-disc ml-6">
<li>Usage Data</li>
<li>Cookies and Tracking Technologies</li>
</ul>
<h2 className="text-2xl font-semibold mt-4">2. How We Use Your Information</h2>
<ul className="list-disc ml-6">
<li>To provide, maintain, and improve our services.</li>
<li>To communicate with you.</li>
<li>To monitor and analyze the usage of our website.</li>
<li>To respond to customer service requests.</li>
</ul>
<h2 className="text-2xl font-semibold mt-4">3. How We Protect Your Information</h2>
<p>We implement a variety of security measures to maintain the safety of your personal information.</p>
<h2 className="text-2xl font-semibold mt-4">4. Sharing Your Information</h2>
<p>We do not sell or share your personal information without your consent, except for the reasons listed in this policy.</p>
<h2 className="text-2xl font-semibold mt-4">5. Third-Party Links</h2>
<p>Our website may contain links to third-party sites that are not controlled by us.</p>
<h2 className="text-2xl font-semibold mt-4">6. Your Rights and Choices</h2>
<ul className="list-disc ml-6">
<li>Access, update, or delete your information.</li>
<li>Opt-out of communications from us.</li>
<li>Control cookies and tracking technologies.</li>
</ul>
<h2 className="text-2xl font-semibold mt-4">7. Data Retention</h2>
<p>We retain your information only as long as necessary to provide you with our services.</p>
<h2 className="text-2xl font-semibold mt-4">8. Children's Privacy</h2>
<p>Our services are not intended for children under 13. We do not knowingly collect information from children under 13.</p>
<h2 className="text-2xl font-semibold mt-4">9. Changes to This Privacy Policy</h2>
<p>We may update our Privacy Policy. Any changes will be posted here with a revised "Last Updated" date.</p>
<h2 className="text-2xl font-semibold mt-4">10. Contact Us</h2>
<p>If you have any questions or concerns about this Privacy Policy, please contact us at:</p>
<p>Email: support@snigdhaos.com</p>
</div>
);
};
export default PrivacyPolicy;

1
src/vite-env.d.ts vendored
View File

@@ -1 +0,0 @@
/// <reference types="vite/client" />

View File

@@ -1,8 +0,0 @@
/** @type {import('tailwindcss').Config} */
export default {
content: ['./index.html', './src/**/*.{js,ts,jsx,tsx}'],
theme: {
extend: {},
},
plugins: [],
};

View File

@@ -1,28 +0,0 @@
{
"compilerOptions": {
"target": "ES2020",
"useDefineForClassFields": true,
"lib": ["ES2020", "DOM", "DOM.Iterable"],
"module": "ESNext",
"skipLibCheck": true,
/* Bundler mode */
"moduleResolution": "bundler",
"allowImportingTsExtensions": true,
"isolatedModules": true,
"moduleDetection": "force",
"noEmit": true,
"jsx": "react-jsx",
/* Linting */
"strict": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
"noFallthroughCasesInSwitch": true,
/* Other options */
"esModuleInterop": true, // Optional but recommended
"types": ["react", "react-dom"] // Ensure React types are included
},
"include": ["src"]
}

View File

@@ -1,7 +0,0 @@
{
"files": [],
"references": [
{ "path": "./tsconfig.app.json" },
{ "path": "./tsconfig.node.json" }
]
}

View File

@@ -1,28 +0,0 @@
{
"compilerOptions": {
"target": "ES2022",
"lib": ["ES2023"],
"module": "ESNext",
"skipLibCheck": true,
/* Module Resolution */
"moduleResolution": "bundler",
"allowImportingTsExtensions": true,
"isolatedModules": true,
"moduleDetection": "force",
"noEmit": true,
/* Type Checking */
"strict": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
"noFallthroughCasesInSwitch": true,
"forceConsistentCasingInFileNames": true,
/* Additional Options */
"esModuleInterop": true,
"resolveJsonModule": true
},
"include": ["vite.config.ts"],
"exclude": ["node_modules", "dist"]
}

View File

@@ -1,11 +0,0 @@
import { defineConfig } from 'vite';
import react from '@vitejs/plugin-react';
// https://vitejs.dev/config/
export default defineConfig({
plugins: [react()],
base: '/', // Replace with your repository name
optimizeDeps: {
exclude: ['lucide-react'],
},
});