2026-07-09 08:54:56 -07:00
2026-07-09 08:54:56 -07:00

Squiggleverse

Squiggleverse is a whimsical, game-based learning project focused on grammar, usage, and style. This repository contains the public landing page for the project: a fast, static SvelteKit site with brand artwork, a demo video, introductory copy, and production metadata.

The page is built to present Squiggleverse clearly as a polished education-through-play experience while keeping the implementation small, accessible, and easy to deploy.

Squiggleverse landing page screenshot

What Is Included

  • Static SvelteKit landing page at /
  • Responsive hero logo, demo video, and project introduction
  • SEO, Open Graph, Twitter card, and JSON-LD metadata
  • Web manifest, icons, favicon, robots file, sitemap, and social preview image
  • Self-hosted video and image assets
  • Static adapter configuration for prerendered output
  • Docker and CapRover deployment files

Tech Stack

  • SvelteKit
  • Svelte 5
  • TypeScript
  • Vite
  • @sveltejs/adapter-static
  • @fontsource/nunito
  • Docker with nginx for containerized static hosting

Project Structure

src/
  lib/
    assets/        Static media imported by Svelte components
    components/    Hero logo, video, and intro sections
  routes/          SvelteKit routes, layout, page metadata, and error page
  app.css          Global styling
  app.html         HTML shell
static/            Public assets copied directly into the build
Dockerfile         Static production image
captain-definition CapRover deployment definition

Getting Started

Install dependencies:

npm install

Start the local development server:

npm run dev

Run Svelte and TypeScript checks:

npm run check

Create a production build:

npm run build

Preview the production build locally:

npm run preview

Deployment

The site is configured for static generation through @sveltejs/adapter-static. Production output is written to build/.

For container deployments, the included Dockerfile builds the SvelteKit site with Node.js and serves the generated static files from nginx. The captain-definition file points CapRover at that Dockerfile.

Content And Assets

Core landing page content lives in:

  • src/routes/+page.svelte
  • src/lib/components/HeroLogo.svelte
  • src/lib/components/VideoCard.svelte
  • src/lib/components/IntroText.svelte

Public metadata assets live in static/. Imported page media lives in src/lib/assets/.

Large source design files and rendered brand assets are kept at the repository root for project continuity.

S
Description
No description provided
Readme
16 MiB
Languages
CSS 64.3%
Svelte 29.1%
JavaScript 1.9%
HTML 1.9%
TypeScript 1.6%
Other 1.2%