Skip to content

Commit b8b8f1c

Browse files
committed
test new version
Signed-off-by: r3drun3 <simone.ragonesi@protonmail.com>
1 parent 570af9c commit b8b8f1c

File tree

9 files changed

+137
-29
lines changed

9 files changed

+137
-29
lines changed

.astro/settings.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"_variables": {
3+
"lastUpdateCheck": 1751381312529
4+
}
5+
}

.astro/types.d.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
/// <reference types="astro/client" />

public/drakvectr-logo-light.png

1.14 MB
Loading

src/components/Footer.astro

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1-
<footer class="border-t border-gray-700 text-center text-sm text-gray-500 py-6 mt-12">
2-
&copy; {new Date().getFullYear()} DarkVectr. All rights reserved.
3-
</footer>
1+
<footer class="bg-surface border-t border-border text-center text-sm text-subtext py-6 mt-12 space-y-2 animate-fadeIn">
2+
<div>
3+
<a href="#hero" class="text-foreground hover:text-accent transition animate-fadeIn">Back to top ↑</a>
4+
</div>
5+
<div class="space-x-4 animate-fadeIn">
6+
<a href="https://github.com/darkvectr" target="_blank" rel="noopener" class="hover:text-accent">GitHub</a>
7+
<a href="mailto:hello@darkvectr.io" class="hover:text-accent">Contact</a>
8+
</div>
9+
<div class="animate-fadeIn">&copy; {new Date().getFullYear()} DarkVectr. All rights reserved.</div>
10+
</footer>

src/components/Header.astro

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,23 @@
1-
<header class="border-b border-gray-700 py-6 text-center">
2-
<h1 class="text-3xl font-bold tracking-tight text-accent">DarkVectr</h1>
3-
<p class="text-gray-400 text-sm mt-1">Cybersecurity Consulting for the Bold</p>
1+
<header class="bg-surface border-b border-border">
2+
<nav class="flex items-center justify-between max-w-5xl mx-auto px-6 md:px-12 py-4 shadow-sm animate-slideInDown">
3+
<h1 class="flex items-center space-x-2">
4+
<img src="/drakvectr-logo-light.png" alt="DarkVectr logo" class="h-8 md:h-10" />
5+
<span class="text-2xl font-bold text-accent">DarkVectr</span>
6+
</h1>
7+
<ul class="hidden md:flex space-x-6">
8+
<li><a href="#about" class="text-foreground hover:text-accent transition">About</a></li>
9+
<li><a href="#services" class="text-foreground hover:text-accent transition">Services</a></li>
10+
<li><a href="#approach" class="text-foreground hover:text-accent transition">Approach</a></li>
11+
<li><a href="#contact" class="text-foreground hover:text-accent transition">Contact</a></li>
12+
</ul>
13+
<button id="theme-toggle" aria-label="Toggle color mode" class="p-2 bg-surface border border-border rounded-full hover:bg-surface transition ml-4 focus:outline-none focus:ring-2 focus:ring-accent">
14+
<svg id="theme-icon-light" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" class="hidden w-6 h-6 text-yellow-400">
15+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
16+
d="M12 3v1m0 16v1m8-9h1M4 12H3m15.364-6.364l.707.707M6.343 17.657l-.707.707m12.728 0l-.707-.707M6.343 6.343l-.707-.707M21 12a9 9 0 11-18 0 9 9 0 0118 0z" />
17+
</svg>
18+
<svg id="theme-icon-dark" xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20" class="hidden w-6 h-6 text-gray-400">
19+
<path d="M17.293 13.293A8 8 0 016.707 2.707a8.027 8.027 0 0010.586 10.586z" />
20+
</svg>
21+
</button>
22+
</nav>
423
</header>

src/env.d.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
/// <reference path="../.astro/types.d.ts" />

src/layouts/Base.astro

Lines changed: 43 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,59 @@ import Header from '../components/Header.astro';
33
import Footer from '../components/Footer.astro';
44
---
55

6-
<html lang="en" class="dark">
6+
<html lang="en">
77
<head>
88
<meta charset="UTF-8" />
99
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
10+
<meta name="description" content="DarkVectr - Cybersecurity Consulting for the Bold" />
11+
<meta name="theme-color" content="#0d1117" />
1012
<title>DarkVectr | Cybersecurity Consulting</title>
11-
<link rel="icon" href="/favicon.svg" type="image/svg+xml" />
13+
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
14+
<link rel="preconnect" href="https://fonts.googleapis.com" />
15+
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
16+
<link
17+
href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;700&family=JetBrains+Mono:wght@400;700&display=swap"
18+
rel="stylesheet"
19+
/>
20+
<script>
21+
if (
22+
localStorage.theme === "dark" ||
23+
(!("theme" in localStorage) &&
24+
window.matchMedia("(prefers-color-scheme: dark)").matches)
25+
) {
26+
document.documentElement.classList.add("dark");
27+
} else {
28+
document.documentElement.classList.remove("dark");
29+
}
30+
</script>
31+
<style>html { scroll-behavior: smooth; }</style>
1232
</head>
1333
<body class="bg-background text-foreground font-sans">
1434
<Header />
1535
<main class="px-6 md:px-12 max-w-5xl mx-auto py-12">
1636
<slot />
1737
</main>
1838
<Footer />
39+
<script>
40+
const htmlEl = document.documentElement;
41+
const toggle = document.getElementById("theme-toggle");
42+
const iconLight = document.getElementById("theme-icon-light");
43+
const iconDark = document.getElementById("theme-icon-dark");
44+
function updateIcons() {
45+
if (htmlEl.classList.contains("dark")) {
46+
iconLight.classList.add("hidden");
47+
iconDark.classList.remove("hidden");
48+
} else {
49+
iconLight.classList.remove("hidden");
50+
iconDark.classList.add("hidden");
51+
}
52+
}
53+
toggle.addEventListener("click", () => {
54+
htmlEl.classList.toggle("dark");
55+
localStorage.theme = htmlEl.classList.contains("dark") ? "dark" : "light";
56+
updateIcons();
57+
});
58+
updateIcons();
59+
</script>
1960
</body>
2061
</html>

src/pages/index.astro

Lines changed: 22 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -3,44 +3,47 @@ import BaseLayout from '../layouts/Base.astro';
33
---
44

55
<BaseLayout>
6-
<section class="mb-16 text-center">
7-
<h2 class="text-4xl font-semibold text-accent mb-4">Redefining Offensive Security</h2>
8-
<p class="text-gray-400 max-w-xl mx-auto">
9-
We help organizations identify, understand, and eliminate risk through deep technical expertise and real-world adversary simulation.
10-
</p>
6+
<section id="hero" class="relative mb-16 text-center">
7+
<div class="absolute inset-0 bg-gradient-to-r from-accent/50 via-accent/30 to-accent/50 blur-3xl animate-gradient"></div>
8+
<div class="relative z-10 px-4 py-20 animate-slideInUp">
9+
<h2 class="text-4xl md:text-5xl font-semibold text-accent mb-4">Redefining Offensive Security</h2>
10+
<p class="text-gray-400 max-w-xl mx-auto">
11+
We help organizations identify, understand, and eliminate risk through deep technical expertise and real-world adversary simulation.
12+
</p>
13+
</div>
1114
</section>
1215

13-
<section class="mb-16">
16+
<section id="about" class="mb-16 animate-fadeIn">
1417
<h3 class="text-2xl font-semibold text-accent mb-4">About DarkVectr</h3>
15-
<p class="text-gray-400">
16-
DarkVectr is an elite cybersecurity consultancy specializing in offensive security operations, red teaming, and secure architecture reviews. Founded by seasoned hackers with real-world breach experience, we provide deeply technical assessments designed to mirror modern threats.
18+
<p class="text-gray-400 animate-fadeIn">
19+
Darkvectr is an elite cybersecurity consultancy specializing in offensive security operations, red teaming, and secure architecture reviews. Founded by seasoned hackers with real-world breach experience, we provide deeply technical assessments designed to mirror modern threats.
1720
</p>
1821
</section>
1922

20-
<section class="mb-16">
23+
<section id="services" class="mb-16 animate-fadeIn">
2124
<h3 class="text-2xl font-semibold text-accent mb-4">Services</h3>
2225
<ul class="list-disc pl-6 text-gray-300">
23-
<li>Red Team Engagements</li>
24-
<li>Penetration Testing (Web, API, Infra, Mobile)</li>
25-
<li>Threat Modeling & Secure Architecture</li>
26-
<li>Code & Config Review</li>
27-
<li>Cloud Security Assessments</li>
26+
<li class="mb-2 transform hover:translate-x-1 transition animate-fadeIn">Red Team Engagements</li>
27+
<li class="mb-2 transform hover:translate-x-1 transition animate-fadeIn">Penetration Testing (Web, API, Infra, Mobile)</li>
28+
<li class="mb-2 transform hover:translate-x-1 transition animate-fadeIn">Threat Modeling & Secure Architecture</li>
29+
<li class="mb-2 transform hover:translate-x-1 transition animate-fadeIn">Code & Config Review</li>
30+
<li class="mb-2 transform hover:translate-x-1 transition animate-fadeIn">Cloud Security Assessments</li>
2831
</ul>
2932
</section>
3033

31-
<section class="mb-16">
34+
<section id="approach" class="mb-16 animate-fadeIn">
3235
<h3 class="text-2xl font-semibold text-accent mb-4">Our Approach</h3>
33-
<p class="text-gray-400">
36+
<p class="text-gray-400 animate-fadeIn">
3437
We combine deep domain knowledge, attacker mindset, and custom tooling to deliver assessments that go beyond compliance. Every engagement is bespoke, threat-informed, and actionable.
3538
</p>
3639
</section>
3740

38-
<section class="mb-16 text-center">
41+
<section id="contact" class="mb-16 text-center animate-fadeIn">
3942
<h3 class="text-2xl font-semibold text-accent mb-4">Ready to Test Your Defenses?</h3>
40-
<p class="text-gray-400 mb-4">
43+
<p class="text-gray-400 mb-4 animate-fadeIn">
4144
Book a free discovery call or reach out securely.
4245
</p>
43-
<a href="mailto:contact@darkvectr.io" class="inline-block px-6 py-3 bg-accent text-background font-medium rounded hover:opacity-90">
46+
<a href="mailto:contact@darkvectr.io" class="inline-block px-6 py-3 bg-accent text-background font-medium rounded hover:opacity-90 hover:scale-105 transition-transform">
4447
Contact Us
4548
</a>
4649
</section>

tailwind.config.cjs

Lines changed: 33 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,43 @@
11
module.exports = {
2-
content: ["./src/**/*.{astro,html,js}"],
2+
content: ["./src/**/*.{astro,html,js,ts}"],
33
darkMode: "class",
44
theme: {
55
extend: {
66
colors: {
77
background: "#0d1117",
8+
surface: "#161b22",
89
foreground: "#c9d1d9",
9-
accent: "#58a6ff"
10+
subtext: "#8b949e",
11+
accent: "#58a6ff",
12+
border: "#30363d"
13+
},
14+
fontFamily: {
15+
sans: ["Inter", "sans-serif"],
16+
mono: ["JetBrains Mono", "monospace"]
17+
},
18+
keyframes: {
19+
fadeIn: {
20+
'0%': { opacity: '0' },
21+
'100%': { opacity: '1' }
22+
},
23+
slideInUp: {
24+
'0%': { opacity: '0', transform: 'translateY(20px)' },
25+
'100%': { opacity: '1', transform: 'translateY(0)' }
26+
},
27+
slideInDown: {
28+
'0%': { opacity: '0', transform: 'translateY(-20px)' },
29+
'100%': { opacity: '1', transform: 'translateY(0)' }
30+
},
31+
gradient: {
32+
'0%, 100%': { 'background-position': '0% 50%' },
33+
'50%': { 'background-position': '100% 50%' }
34+
}
35+
},
36+
animation: {
37+
fadeIn: 'fadeIn 0.8s ease-out forwards',
38+
slideInUp: 'slideInUp 0.8s ease-out forwards',
39+
slideInDown: 'slideInDown 0.8s ease-out forwards',
40+
gradient: 'gradient 8s ease infinite'
1041
}
1142
}
1243
},

0 commit comments

Comments
 (0)