diff --git a/README.md b/README.md
index 4d76153..721b707 100644
--- a/README.md
+++ b/README.md
@@ -1,22 +1,24 @@
-
-
+Friday
- Privacy-first AI meeting assistant for local capture, live transcription, and meeting summaries. Friday is a native desktop app that records and summarizes meetings without shipping your raw audio or transcripts to the cloud. The product is built on a privacy-first local-first architecture with a Tauri desktop shell, Rust audio/transcription services, and a Next.js interface.
+ Privacy-first AI meeting assistant for local capture, live transcription, and meeting summaries. Friday is a native desktop app that records and summarizes meetings without shipping your raw audio or transcripts to the cloud. The product is built on a privacy-first local-first architecture with a Tauri desktop shell, Rust audio/transcription services, and a Next.js interface.
+
+ Website Link : [tinyurl.com/2nvsk8ek](https://tinyurl.com/2nvsk8ek)
+
+ Demo Link : [youtu.be/QXsBkFJ8ack](https://youtu.be/QXsBkFJ8ack)
+
-
-
-
-
+
---
## Table of Contents
+
- [What Friday is for](#what-friday-is-for)
- [Core capabilities](#core-capabilities)
- [Project structure](#project-structure)
diff --git a/app.js b/app.js
index 36c9b7a..14a2cc3 100644
--- a/app.js
+++ b/app.js
@@ -57,7 +57,7 @@ document.addEventListener('DOMContentLoaded', () => {
const triggerBox = document.getElementById('hero-video-trigger');
const navWatchBtn = document.getElementById('nav-watch-btn');
- const youtubeUrl = "https://www.youtube.com/embed/XqZsoesa55w?autoplay=1";
+ const youtubeUrl = "https://www.youtube.com/embed/QXsBkFJ8ack?autoplay=1";
function openModal() {
if(videoModal && youtubeIframe) {
diff --git a/assets/deepmind.png b/assets/deepmind.png
new file mode 100644
index 0000000..e0613f2
Binary files /dev/null and b/assets/deepmind.png differ
diff --git a/assets/langgraph.png b/assets/langgraph.png
new file mode 100644
index 0000000..9a62f2c
Binary files /dev/null and b/assets/langgraph.png differ
diff --git a/index.css b/index.css
index c422d2d..f14bc23 100644
--- a/index.css
+++ b/index.css
@@ -1,7 +1,7 @@
:root {
/* Simplistic Clean Creamy Palette */
- --bg-base: #fdfbf7; /* Very soft cream */
- --text-primary: #1f1f1f; /* Soft charcoal */
+ --bg-base: #FDFCFB; /* Warm off-white */
+ --text-primary: #333537; /* Dark charcoal - FRIDAY text & tagline */
--text-secondary: #6e6e6e;
--text-muted: #999999;
@@ -192,8 +192,10 @@ h1, h2, h3, h4 { font-family: var(--font-display); font-weight: 600; line-height
display: flex;
justify-content: center;
align-items: center;
- gap: 48px;
+ gap: 40px;
flex-wrap: wrap;
+ max-width: 1200px;
+ margin: 0 auto;
}
.tech-item {
display: flex;
@@ -202,15 +204,39 @@ h1, h2, h3, h4 { font-family: var(--font-display); font-weight: 600; line-height
gap: 16px;
opacity: 0.9;
transition: all 0.3s ease;
+ cursor: pointer;
+}
+.tech-item img {
+ transition: all 0.3s ease;
+ filter: grayscale(100%) opacity(0.7);
+ object-fit: contain;
+}
+.tech-item svg {
+ transition: all 0.3s ease;
+ opacity: 0.7;
+ color: var(--text-secondary);
}
.tech-item:hover {
opacity: 1;
transform: translateY(-4px);
}
+.tech-item:hover img {
+ filter: grayscale(0%) opacity(1);
+ transform: scale(1.1);
+}
+.tech-item:hover svg {
+ opacity: 1;
+ color: var(--text-primary);
+ transform: scale(1.1);
+}
.tech-item span {
font-size: 0.9rem;
font-weight: 600;
color: var(--text-secondary);
+ transition: color 0.3s ease;
+}
+.tech-item:hover span {
+ color: var(--text-primary);
}
/* Video Box Placeholder - Screenshot Match */
@@ -226,32 +252,58 @@ h1, h2, h3, h4 { font-family: var(--font-display); font-weight: 600; line-height
.hero-video-box {
width: 100%;
max-width: 480px;
- aspect-ratio: 16/10;
- background: #111111;
+ aspect-ratio: 16/9;
border-radius: 20px;
display: flex;
align-items: center;
justify-content: center;
margin: 0 auto 40px;
position: relative;
- box-shadow: 0 30px 60px -10px rgba(0,0,0,0.1), 0 0 80px 20px rgba(0,0,0,0.05); /* Soft outer glow */
+ border: 1px solid rgba(0,0,0,0.08);
+ box-shadow: 0 20px 50px -15px rgba(0,0,0,0.12), 0 0 0 1px rgba(0,0,0,0.03);
cursor: pointer;
- transition: transform 0.3s ease;
+ transition: transform 0.3s ease, box-shadow 0.3s ease;
+ overflow: hidden;
+}
+.hero-video-thumbnail {
+ position: absolute;
+ inset: 0;
+ width: 100%;
+ height: 100%;
+ object-fit: cover;
+ pointer-events: none;
+}
+.hero-video-overlay {
+ position: absolute;
+ inset: 0;
+ background: linear-gradient(to bottom, rgba(0,0,0,0.2) 0%, rgba(0,0,0,0.4) 100%);
+ pointer-events: none;
+}
+.hero-video-box:hover .hero-video-overlay {
+ background: linear-gradient(to bottom, rgba(0,0,0,0.15) 0%, rgba(0,0,0,0.35) 100%);
}
.hero-video-box:hover {
transform: translateY(-4px);
+ box-shadow: 0 30px 60px -15px rgba(0,0,0,0.12), inset 0 1px 0 rgba(255,255,255,0.6);
}
.video-btn-inner {
- background: #333333;
+ background: var(--text-primary);
color: white;
- padding: 12px 24px;
- border-radius: 8px;
+ padding: 14px 28px;
+ border-radius: 12px;
display: flex;
align-items: center;
- gap: 10px;
+ gap: 12px;
font-weight: 600;
font-size: 1rem;
- border: 1px solid rgba(255,255,255,0.1);
+ box-shadow: 0 4px 14px rgba(51,53,55,0.25);
+ position: relative;
+ z-index: 1;
+ transition: transform 0.2s ease, box-shadow 0.2s ease;
+}
+.hero-video-box:hover .video-btn-inner {
+ transform: scale(1.02);
+ box-shadow: 0 6px 20px rgba(51,53,55,0.3);
}
.hero-stacked-ctas {
diff --git a/index.html b/index.html
index 3486c68..8a86a1b 100644
--- a/index.html
+++ b/index.html
@@ -48,8 +48,10 @@
+
+
Watch video
@@ -77,7 +79,7 @@
An agent that works for you.
-
Rust Core
-
Next.js Frontend
-
-
+
+
+
+
+
+
+
LangGraph
+
+
+
+
+
+
+
+
+
+
Supermemory
+
+
+
+
+
+
Supabase
+
+
+
+
+
+
+
+
+
Google Workspace CLI
+
+
+
+
+
+
+
+
+
+
Heartbeat Loop
+
+
+
+
+
+
+
+
+
Rust Core
+
+
+
+
Next.js Frontend
+
+
+
+
DeepMind Core
+
+
+
+
+
+
+
+
Tauri Desktop
+
diff --git a/website/app.js b/website/app.js
index 36c9b7a..14a2cc3 100644
--- a/website/app.js
+++ b/website/app.js
@@ -57,7 +57,7 @@ document.addEventListener('DOMContentLoaded', () => {
const triggerBox = document.getElementById('hero-video-trigger');
const navWatchBtn = document.getElementById('nav-watch-btn');
- const youtubeUrl = "https://www.youtube.com/embed/XqZsoesa55w?autoplay=1";
+ const youtubeUrl = "https://www.youtube.com/embed/QXsBkFJ8ack?autoplay=1";
function openModal() {
if(videoModal && youtubeIframe) {
diff --git a/website/assets/deepmind.png b/website/assets/deepmind.png
new file mode 100644
index 0000000..e0613f2
Binary files /dev/null and b/website/assets/deepmind.png differ
diff --git a/website/assets/langgraph.png b/website/assets/langgraph.png
new file mode 100644
index 0000000..9a62f2c
Binary files /dev/null and b/website/assets/langgraph.png differ
diff --git a/website/index.css b/website/index.css
index c422d2d..ecbfb6d 100644
--- a/website/index.css
+++ b/website/index.css
@@ -1,7 +1,7 @@
:root {
/* Simplistic Clean Creamy Palette */
- --bg-base: #fdfbf7; /* Very soft cream */
- --text-primary: #1f1f1f; /* Soft charcoal */
+ --bg-base: #FDFCFB; /* Warm off-white */
+ --text-primary: #333537; /* Dark charcoal - FRIDAY text & tagline */
--text-secondary: #6e6e6e;
--text-muted: #999999;
@@ -202,11 +202,21 @@ h1, h2, h3, h4 { font-family: var(--font-display); font-weight: 600; line-height
gap: 16px;
opacity: 0.9;
transition: all 0.3s ease;
+ cursor: pointer;
+}
+.tech-item img {
+ transition: all 0.3s ease;
+ filter: grayscale(100%) opacity(0.7);
+ object-fit: contain;
}
.tech-item:hover {
opacity: 1;
transform: translateY(-4px);
}
+.tech-item:hover img {
+ filter: grayscale(0%) opacity(1);
+ transform: scale(1.1);
+}
.tech-item span {
font-size: 0.9rem;
font-weight: 600;
@@ -226,32 +236,58 @@ h1, h2, h3, h4 { font-family: var(--font-display); font-weight: 600; line-height
.hero-video-box {
width: 100%;
max-width: 480px;
- aspect-ratio: 16/10;
- background: #111111;
+ aspect-ratio: 16/9;
border-radius: 20px;
display: flex;
align-items: center;
justify-content: center;
margin: 0 auto 40px;
position: relative;
- box-shadow: 0 30px 60px -10px rgba(0,0,0,0.1), 0 0 80px 20px rgba(0,0,0,0.05); /* Soft outer glow */
+ border: 1px solid rgba(0,0,0,0.08);
+ box-shadow: 0 20px 50px -15px rgba(0,0,0,0.12), 0 0 0 1px rgba(0,0,0,0.03);
cursor: pointer;
- transition: transform 0.3s ease;
+ transition: transform 0.3s ease, box-shadow 0.3s ease;
+ overflow: hidden;
+}
+.hero-video-thumbnail {
+ position: absolute;
+ inset: 0;
+ width: 100%;
+ height: 100%;
+ object-fit: cover;
+ pointer-events: none;
+}
+.hero-video-overlay {
+ position: absolute;
+ inset: 0;
+ background: linear-gradient(to bottom, rgba(0,0,0,0.2) 0%, rgba(0,0,0,0.4) 100%);
+ pointer-events: none;
+}
+.hero-video-box:hover .hero-video-overlay {
+ background: linear-gradient(to bottom, rgba(0,0,0,0.15) 0%, rgba(0,0,0,0.35) 100%);
}
.hero-video-box:hover {
transform: translateY(-4px);
+ box-shadow: 0 30px 60px -15px rgba(0,0,0,0.12), inset 0 1px 0 rgba(255,255,255,0.6);
}
.video-btn-inner {
- background: #333333;
+ background: var(--text-primary);
color: white;
- padding: 12px 24px;
- border-radius: 8px;
+ padding: 14px 28px;
+ border-radius: 12px;
display: flex;
align-items: center;
- gap: 10px;
+ gap: 12px;
font-weight: 600;
font-size: 1rem;
- border: 1px solid rgba(255,255,255,0.1);
+ box-shadow: 0 4px 14px rgba(51,53,55,0.25);
+ position: relative;
+ z-index: 1;
+ transition: transform 0.2s ease, box-shadow 0.2s ease;
+}
+.hero-video-box:hover .video-btn-inner {
+ transform: scale(1.02);
+ box-shadow: 0 6px 20px rgba(51,53,55,0.3);
}
.hero-stacked-ctas {
diff --git a/website/index.html b/website/index.html
index 3486c68..23017e0 100644
--- a/website/index.html
+++ b/website/index.html
@@ -48,8 +48,10 @@
+
+
Watch video
@@ -77,7 +79,7 @@
An agent that works for you.