diff --git a/.gitignore b/.gitignore
index bef67e7..07b9dd1 100644
--- a/.gitignore
+++ b/.gitignore
@@ -26,3 +26,6 @@ junit.xml
# generated
src/version.json
+
+# videos
+public/videos/
diff --git a/src/components/CountdownTimer.js b/src/components/CountdownTimer.js
index bf4d556..8c473db 100644
--- a/src/components/CountdownTimer.js
+++ b/src/components/CountdownTimer.js
@@ -14,7 +14,7 @@ class CountdownTimer extends Component {
};
static defaultProps = {
- targetDate: '2025-08-18T00:00:00',
+ targetDate: '2026-08-17T00:00:00',
};
state = {
diff --git a/src/components/HeroSection/index.js b/src/components/HeroSection/index.js
index 8d3444a..a7d74c3 100644
--- a/src/components/HeroSection/index.js
+++ b/src/components/HeroSection/index.js
@@ -3,35 +3,11 @@ import CountdownTimer from '../CountdownTimer';
import './styles.css';
const HeroSection = () => {
- const getNextFriday9amPT = () => {
- const now = new Date();
- const laNow = new Date(
- now.toLocaleString('en-US', {timeZone: 'America/Los_Angeles'})
- );
- const laTarget = new Date(laNow.getTime());
- const laDay = laNow.getDay();
- const daysUntilFriday = (5 - laDay + 7) % 7;
- laTarget.setDate(laNow.getDate() + daysUntilFriday);
- laTarget.setHours(9, 0, 0, 0);
- if (
- daysUntilFriday === 0 &&
- (laNow.getHours() > 9 ||
- (laNow.getHours() === 9 &&
- (laNow.getMinutes() > 0 ||
- laNow.getSeconds() > 0 ||
- laNow.getMilliseconds() > 0)))
- ) {
- laTarget.setDate(laTarget.getDate() + 7);
- }
- const offsetDeltaMs = now.getTime() - laNow.getTime();
- const targetInstantMs = laTarget.getTime() + offsetDeltaMs;
- return new Date(targetInstantMs);
- };
return (
-
Hackweek 2025
-
+
Hackweek 2026
+
until the hacking begins
diff --git a/src/components/MicroCountdownTimer/index.js b/src/components/MicroCountdownTimer/index.js
index a1c816d..844f31e 100644
--- a/src/components/MicroCountdownTimer/index.js
+++ b/src/components/MicroCountdownTimer/index.js
@@ -2,7 +2,7 @@ import React, {useState, useEffect} from 'react';
import './styles.css';
const calculateTimeLeft = () => {
- const hackweekDate = new Date('2025-08-18T00:00:00');
+ const hackweekDate = new Date('2026-08-17T00:00:00');
const difference = hackweekDate - new Date();
if (difference > 0) {
@@ -32,7 +32,7 @@ const MicroCountdownTimer = () => {
return
VOTE NOW!!
;
}
- return {timeLeft.days} days away
;
+ return {timeLeft.days} day till hackweek
;
};
export default MicroCountdownTimer;
diff --git a/src/pages/Login.js b/src/pages/Login.js
index e137deb..7039392 100644
--- a/src/pages/Login.js
+++ b/src/pages/Login.js
@@ -11,68 +11,24 @@ import InfoSection from '../components/InfoSection';
import './styles.css';
const Login = ({firebase, auth, profile, router}) => {
- // Compute if hackweek has started and countdown to Friday 9 AM PT
- const HACKWEEK_START_ISO = '2025-08-18T00:00:00';
+ // Compute if hackweek has started and countdown to August 17th 2026
+ const HACKWEEK_START_ISO = '2026-08-17T00:00:00';
- const getMsUntilFriday9PT = () => {
+ const getMsUntilHackweek = () => {
const now = new Date();
- const laNow = new Date(
- now.toLocaleString('en-US', {timeZone: 'America/Los_Angeles'})
- );
-
- // Determine upcoming Friday 9:00:00 in LA time
- const laTarget = new Date(laNow.getTime());
- const laDay = laNow.getDay(); // 0=Sun ... 5=Fri
- let daysUntilFriday = (5 - laDay + 7) % 7;
- // If it's Friday and past 9 AM, move to next Friday
- const isFriday = daysUntilFriday === 0;
- laTarget.setDate(laNow.getDate() + daysUntilFriday);
- laTarget.setHours(9, 0, 0, 0);
- if (
- isFriday &&
- (laNow.getHours() > 9 ||
- (laNow.getHours() === 9 && (laNow.getMinutes() > 0 || laNow.getSeconds() > 0)))
- ) {
- laTarget.setDate(laTarget.getDate() + 7);
- }
-
- // Convert LA wall time target to actual instant by adjusting with offset between local and LA now
- const offsetDeltaMs = now.getTime() - laNow.getTime();
- const targetInstantMs = laTarget.getTime() + offsetDeltaMs;
- const diff = targetInstantMs - now.getTime();
+ const hackweekStart = new Date(HACKWEEK_START_ISO);
+ const diff = hackweekStart.getTime() - now.getTime();
return diff > 0 ? diff : 0;
};
const getHasHackStarted = () => new Date() >= new Date(HACKWEEK_START_ISO);
- const [msUntilFridayPT, setMsUntilFridayPT] = useState(getMsUntilFriday9PT());
+ const [msUntilHackweek, setMsUntilHackweek] = useState(getMsUntilHackweek());
const [hasHackStarted, setHasHackStarted] = useState(getHasHackStarted());
- const getNextFriday9amPT = () => {
- const now = new Date();
- const laNow = new Date(
- now.toLocaleString('en-US', {timeZone: 'America/Los_Angeles'})
- );
- const laTarget = new Date(laNow.getTime());
- const laDay = laNow.getDay(); // 0=Sun ... 6=Sat
- const daysUntilFriday = (5 - laDay + 7) % 7; // 5 = Friday
- laTarget.setDate(laNow.getDate() + daysUntilFriday);
- laTarget.setHours(9, 0, 0, 0);
- if (
- daysUntilFriday === 0 &&
- (laNow.getHours() > 9 ||
- (laNow.getHours() === 9 && (laNow.getMinutes() > 0 || laNow.getSeconds() > 0)))
- ) {
- laTarget.setDate(laTarget.getDate() + 7);
- }
- const offsetDeltaMs = now.getTime() - laNow.getTime();
- const targetInstantMs = laTarget.getTime() + offsetDeltaMs;
- return new Date(targetInstantMs);
- };
-
useEffect(() => {
const interval = setInterval(() => {
- setMsUntilFridayPT(getMsUntilFriday9PT());
+ setMsUntilHackweek(getMsUntilHackweek());
setHasHackStarted(getHasHackStarted());
}, 1000);
return () => clearInterval(interval);
@@ -139,7 +95,7 @@ const Login = ({firebase, auth, profile, router}) => {
HACK TIME!!!
-
+
until video submission deadline
diff --git a/src/routes.js b/src/routes.js
index 53097c5..763aa54 100644
--- a/src/routes.js
+++ b/src/routes.js
@@ -22,7 +22,7 @@ import {loginRequired} from './auth';
export default (
-
+