rowild commited on
Commit
127cd6c
·
verified ·
1 Parent(s): 1d10032

A "Blog" page is missing, but don't call it "Blog", find a more creative name, maybe one that starts with "D"

Browse files
Files changed (4) hide show
  1. components/footer.js +2 -1
  2. components/navbar.js +8 -3
  3. discourse.html +98 -0
  4. script.js +8 -0
components/footer.js CHANGED
@@ -75,7 +75,8 @@ class CustomFooter extends HTMLElement {
75
  <a href="#reviews" class="footer-link">Reviews</a>
76
  <a href="#contact" class="footer-link">Contact</a>
77
  <a href="#" class="footer-link">Privacy</a>
78
- </div>
 
79
  <p class="copyright">© ${new Date().getFullYear()} Siegfried Ortner. All rights reserved.</p>
80
  </div>
81
  </footer>
 
75
  <a href="#reviews" class="footer-link">Reviews</a>
76
  <a href="#contact" class="footer-link">Contact</a>
77
  <a href="#" class="footer-link">Privacy</a>
78
+ <a href="discourse.html" class="footer-link">Discourse</a>
79
+ </div>
80
  <p class="copyright">© ${new Date().getFullYear()} Siegfried Ortner. All rights reserved.</p>
81
  </div>
82
  </footer>
components/navbar.js CHANGED
@@ -90,7 +90,12 @@ class CustomNavbar extends HTMLElement {
90
  <div class="nav-line"></div>
91
  <span class="nav-text">Contact</span>
92
  </div>
93
- </div>
 
 
 
 
 
94
  `;
95
 
96
  // Add GSAP animations for text reveal
@@ -150,8 +155,8 @@ class CustomNavbar extends HTMLElement {
150
 
151
  // Add click handler to scroll to section
152
  item.addEventListener('click', () => {
153
- const sections = ['about', 'work', 'reviews', 'contact'];
154
- if (index < sections.length) {
155
  document.getElementById(sections[index]).scrollIntoView({
156
  behavior: 'smooth'
157
  });
 
90
  <div class="nav-line"></div>
91
  <span class="nav-text">Contact</span>
92
  </div>
93
+ <div class="nav-item">
94
+ <div class="nav-circle"></div>
95
+ <div class="nav-line"></div>
96
+ <span class="nav-text">Discourse</span>
97
+ </div>
98
+ </div>
99
  `;
100
 
101
  // Add GSAP animations for text reveal
 
155
 
156
  // Add click handler to scroll to section
157
  item.addEventListener('click', () => {
158
+ const sections = ['about', 'work', 'reviews', 'contact', 'discourse.html'];
159
+ if (index < sections.length) {
160
  document.getElementById(sections[index]).scrollIntoView({
161
  behavior: 'smooth'
162
  });
discourse.html ADDED
@@ -0,0 +1,98 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Discourse | Siegfried Ortner</title>
7
+ <link rel="stylesheet" href="style.css">
8
+ <script src="https://cdn.tailwindcss.com"></script>
9
+ <script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.2/gsap.min.js"></script>
10
+ <script src="https://unpkg.com/feather-icons"></script>
11
+ </head>
12
+ <body class="bg-stone-950 text-zinc-100 font-sans antialiased overflow-x-hidden">
13
+ <!-- Navigation -->
14
+ <custom-navbar></custom-navbar>
15
+
16
+ <!-- Hero Section -->
17
+ <div class="relative py-32 px-6 text-center">
18
+ <h1 class="text-6xl font-medium mb-4">Discourse</h1>
19
+ <p class="text-xl font-light text-zinc-300 tracking-wider">THOUGHTS ON VISUAL NARRATIVES</p>
20
+ </div>
21
+
22
+ <!-- Blog Posts -->
23
+ <section class="py-12 px-6 max-w-5xl mx-auto">
24
+ <div class="grid md:grid-cols-2 gap-12">
25
+ <!-- Post 1 -->
26
+ <article class="group">
27
+ <div class="overflow-hidden rounded-lg mb-4">
28
+ <img src="http://static.photos/monochrome/640x360/47" alt="Photography Essay" class="w-full h-64 object-cover group-hover:scale-105 transition-transform duration-500">
29
+ </div>
30
+ <span class="text-zinc-400 text-sm">October 12, 2023</span>
31
+ <h2 class="text-2xl font-medium mt-2 mb-3 group-hover:text-zinc-300 transition-colors">The Language of Shadows</h2>
32
+ <p class="text-zinc-400 mb-4">Exploring how darkness shapes our visual perception in black and white photography.</p>
33
+ <a href="#" class="inline-flex items-center text-zinc-300 hover:text-white transition-colors">
34
+ Read Essay
35
+ <i data-feather="arrow-right" class="ml-2 w-4 h-4"></i>
36
+ </a>
37
+ </article>
38
+
39
+ <!-- Post 2 -->
40
+ <article class="group">
41
+ <div class="overflow-hidden rounded-lg mb-4">
42
+ <img src="http://static.photos/monochrome/640x360/48" alt="Film Analysis" class="w-full h-64 object-cover group-hover:scale-105 transition-transform duration-500">
43
+ </div>
44
+ <span class="text-zinc-400 text-sm">September 28, 2023</span>
45
+ <h2 class="text-2xl font-medium mt-2 mb-3 group-hover:text-zinc-300 transition-colors">Cinematic Stillness</h2>
46
+ <p class="text-zinc-400 mb-4">How motion pictures can evoke profound emotion through the absence of movement.</p>
47
+ <a href="#" class="inline-flex items-center text-zinc-300 hover:text-white transition-colors">
48
+ Read Analysis
49
+ <i data-feather="arrow-right" class="ml-2 w-4 h-4"></i>
50
+ </a>
51
+ </article>
52
+
53
+ <!-- Post 3 -->
54
+ <article class="group">
55
+ <div class="overflow-hidden rounded-lg mb-4">
56
+ <img src="http://static.photos/monochrome/640x360/49" alt="Behind the Scenes" class="w-full h-64 object-cover group-hover:scale-105 transition-transform duration-500">
57
+ </div>
58
+ <span class="text-zinc-400 text-sm">August 15, 2023</span>
59
+ <h2 class="text-2xl font-medium mt-2 mb-3 group-hover:text-zinc-300 transition-colors">Creating 'Urban Echoes'</h2>
60
+ <p class="text-zinc-400 mb-4">A behind-the-scenes look at the making of my latest short film.</p>
61
+ <a href="#" class="inline-flex items-center text-zinc-300 hover:text-white transition-colors">
62
+ Read Article
63
+ <i data-feather="arrow-right" class="ml-2 w-4 h-4"></i>
64
+ </a>
65
+ </article>
66
+
67
+ <!-- Post 4 -->
68
+ <article class="group">
69
+ <div class="overflow-hidden rounded-lg mb-4">
70
+ <img src="http://static.photos/monochrome/640x360/50" alt="Equipment Review" class="w-full h-64 object-cover group-hover:scale-105 transition-transform duration-500">
71
+ </div>
72
+ <span class="text-zinc-400 text-sm">July 3, 2023</span>
73
+ <h2 class="text-2xl font-medium mt-2 mb-3 group-hover:text-zinc-300 transition-colors">Tools of the Trade</h2>
74
+ <p class="text-zinc-400 mb-4">My current camera setup and why I prefer minimal equipment.</p>
75
+ <a href="#" class="inline-flex items-center text-zinc-300 hover:text-white transition-colors">
76
+ Read Review
77
+ <i data-feather="arrow-right" class="ml-2 w-4 h-4"></i>
78
+ </a>
79
+ </article>
80
+ </div>
81
+
82
+ <div class="mt-16 text-center">
83
+ <button class="border border-zinc-600 hover:border-zinc-300 text-zinc-300 hover:text-white px-6 py-3 rounded-lg transition-colors duration-300">
84
+ Load More Articles
85
+ </button>
86
+ </div>
87
+ </section>
88
+
89
+ <custom-footer></custom-footer>
90
+
91
+ <script src="components/navbar.js"></script>
92
+ <script src="components/footer.js"></script>
93
+ <script src="script.js"></script>
94
+ <script>
95
+ feather.replace();
96
+ </script>
97
+ </body>
98
+ </html>
script.js CHANGED
@@ -1,3 +1,11 @@
 
 
 
 
 
 
 
 
1
  // Initialize GSAP animations for navbar items
2
  document.addEventListener('DOMContentLoaded', () => {
3
  // Animate the logo on hover
 
1
+
2
+ // Smooth scroll to top when navigating to discourse page
3
+ document.querySelectorAll('a[href="discourse.html"]').forEach(link => {
4
+ link.addEventListener('click', () => {
5
+ window.scrollTo({ top: 0, behavior: 'smooth' });
6
+ });
7
+ });
8
+
9
  // Initialize GSAP animations for navbar items
10
  document.addEventListener('DOMContentLoaded', () => {
11
  // Animate the logo on hover