Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .changeset/weak-apes-bow.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@quassel/website": patch
---

Improve website
5 changes: 5 additions & 0 deletions apps/website/.docker/nginx.conf
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,9 @@ server {

try_files $uri $uri/ /index.html =404;
}

location ~* \.(?:ico|css|js|gif|jpe?g|png|woff2?|eot|ttf|svg|otf|webp)$ {
expires 1y;
add_header Cache-Control "public";
}
}
Binary file added apps/website/public/android-chrome-192x192.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 0 additions & 3 deletions apps/website/public/assets/arrow.svg

This file was deleted.

Binary file removed apps/website/public/assets/poster.png
Binary file not shown.
Binary file added apps/website/public/favicon-16x16.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added apps/website/public/favicon-32x32.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added apps/website/public/favicon-48x48.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added apps/website/public/favicon-60x60.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added apps/website/public/favicon-64x64.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added apps/website/public/favicon-96x96.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added apps/website/public/favicon.ico
Binary file not shown.
Binary file added apps/website/public/opengraph.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added apps/website/src/assets/videos/poster.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
34 changes: 34 additions & 0 deletions apps/website/src/components/Head.astro
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
---
const { title } = Astro.props;
const ogImageUrl = "/opengraph.png";
---

<head>
<meta charset="utf-8" />
<link rel="icon" href="/favicon.ico" type="image/x-icon" sizes="any" />
<link rel="icon" href="/favicon-16x16.png" type="image/png" sizes="16x16" />
<link rel="icon" href="/favicon-32x32.png" type="image/png" sizes="32x32" />
<link rel="icon" href="/favicon-48x48.png" type="image/png" sizes="48x48" />
<link rel="icon" href="/favicon-64x64.png" type="image/png" sizes="64x64" />
<link rel="icon" href="/favicon-96x96.png" type="image/png" sizes="96x96" />
<link rel="icon" href="/android-chrome-192x192.png" type="image/png" sizes="192x192" />
<title>{title}</title>
<meta
name="description"
content="Quassel is a web-based application designed to aid researchers in collecting and analyzing data on children's language exposure."
/>
<meta property="og:locale" content="en_US" />
<meta property="og:type" content="website" />
<meta property="og:url" content="https://www.quassel.ch/" />
<meta property="og:title" content={title} />
<meta
property="og:description"
content="Quassel (previously Language Exposure Questionnaire) is a web-based application designed to aid researchers in collecting and analyzing data on children's language exposure. "
/>
<meta property="og:image" content={ogImageUrl} />
<meta property="og:image:alt" content="Quassel Application Display" />
<meta
name="keywords"
content="Quassel, children, calendar-like interface, language, langauge exposure, web application, periods of life, data entry personnel, UZH, openscript, open source"
/>
</head>
7 changes: 2 additions & 5 deletions apps/website/src/pages/index.astro
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
---
import Head from "../components/Head.astro";
import Site from "../layouts/Site.astro";
import Header from "../sections/Header.astro";
import Footer from "../sections/Footer.astro";
Expand All @@ -8,11 +9,7 @@ import Administration from "../sections/Administration.astro";
import About from "../sections/About.astro";
---

<head>
<meta charset="utf-8" />
<link rel="icon" type="image/svg+xml" href="/assets/quassel-icon.svg" />
<title>Quassel</title>
</head>
<Head title="Quassel" />
<Site>
<Header />
<main>
Expand Down
10 changes: 8 additions & 2 deletions apps/website/src/sections/Footer.astro
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
---
import { Image } from "astro:assets";
import UzhLogo from "../assets/logos/uzh-logo.svg";
import OpenscriptLogo from "../assets/logos/openscript-logo.svg";
---

<style>
footer {
display: grid;
Expand Down Expand Up @@ -43,14 +49,14 @@
<footer>
<h2>Interested in Using Quassel?</h2>
<div class="contact">
<img src="../assets/uzh-logo.svg" alt="University of Zurich logo" />
<Image src={UzhLogo} alt="University of Zurich logo" />
<h3>Research collaboration</h3>
<a href="https://www.psychology.uzh.ch/en/areas/dev/devpsy/Weltentdecker/Research-area-Multilingualism-and-Communication.html">
Reach out to <strong>Stephanie</strong> from University of Zurich
</a>
</div>
<div class="contact">
<img src="../assets/openscript-logo.svg" alt="openscript Ltd. logo" />
<Image src={OpenscriptLogo} alt="openscript Ltd. logo" />
<h3>Tech collaboration</h3>
<a href="https://openscript.ch/en/">Contact <strong>Robin</strong> from openscript Ltd.</a>
</div>
Expand Down
8 changes: 5 additions & 3 deletions apps/website/src/sections/Header.astro
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
---
import { Image } from "astro:assets";
import QuasselLogo from "../assets/logos/quassel-icon.svg";
import IconChevronRight from "~icons/tabler/chevron-right";
---

Expand All @@ -12,7 +14,7 @@ import IconChevronRight from "~icons/tabler/chevron-right";

.brand {
display: flex;
gap: var(--spacing-md);
gap: var(--spacing-sm);
color: var(--color-highlight);
align-items: baseline;
}
Expand Down Expand Up @@ -41,15 +43,15 @@ import IconChevronRight from "~icons/tabler/chevron-right";
stroke-width: 3;
}

img {
.brand img {
height: 4rem;
}
</style>

<header>
<div class="brand">
<h1>Quassel</h1>
<img src="../assets/quassel-icon.svg" alt="Quassel logo" />
<Image src={QuasselLogo} alt="Quassel logo" />
</div>
<nav>
<ul>
Expand Down
32 changes: 22 additions & 10 deletions apps/website/src/sections/Spotlight.astro
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
---
import videoUrl from "../assets/video/quassel.mp4";
import { Image } from "astro:assets";
import UzhLogo from "../assets/logos/uzh-logo.svg";
import videoUrl from "../assets/videos/quassel.mp4";
import Poster from "../assets/videos/poster.png";
import PlayButton from "../assets/videos/play-button.svg";
---

<style>
Expand All @@ -19,9 +23,10 @@ import videoUrl from "../assets/video/quassel.mp4";
}

.intro {
width: 36rem;
text-align: center;
margin-bottom: var(--spacing-lg);
padding: var(--spacing-xl);
max-width: 37rem;
}

.quassel-video {
Expand Down Expand Up @@ -52,18 +57,25 @@ import videoUrl from "../assets/video/quassel.mp4";
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
cursor: pointer;
}

.playButton :hover {
transform: scale(1.1);
}

.playButton img {
width: clamp(3rem, 10vw, 6rem);
}

.used-by {
margin-top: var(--spacing-xl);
display: grid;
grid-template-columns: 1fr 2fr;
gap: var(--spacing-sm);
display: flex;
gap: var(--spacing-lg);

@media (max-width: 640px) {
flex-direction: column;
gap: 0;
}
}

.used-by h2 {
Expand All @@ -73,7 +85,7 @@ import videoUrl from "../assets/video/quassel.mp4";
}

.used-by img {
height: calc(2 * var(--spacing-lg));
max-height: 4rem;
}

.used-by a :hover {
Expand Down Expand Up @@ -103,15 +115,15 @@ import videoUrl from "../assets/video/quassel.mp4";
<p>Efficient documenting <strong>children's</strong> language exposure by carer giver and time.</p>
</div>
<div class="quassel-video">
<video controls poster="./assets/poster.png" muted playsinline>
<video controls poster={Poster.src} muted playsinline>
<source src={videoUrl} type="video/mp4" />
</video>
<button class="playButton">
<img src="../assets/play-button.svg" alt="Play button" />
<Image src={PlayButton} alt="Play button" />
</button>
</div>
<div class="used-by">
<h2>Used by</h2>
<a href="https://www.uzh.ch/en.html"><img src="../assets/uzh-logo.svg" alt="University of Zurich" /></a>
<a href="https://www.uzh.ch/en.html"><Image src={UzhLogo} alt="University of Zurich" /></a>
</div>
</section>