Open Source event scheduling software for conventions
  • TypeScript 55.7%
  • Vue 43%
  • CSS 0.5%
  • JavaScript 0.4%
  • Dockerfile 0.3%
  • Other 0.1%
Find a file
Hornwitser 690a9e4b3f
All checks were successful
/ build (push) Successful in 1m26s
/ deploy (push) Successful in 8s
Refactor to scopeless CSS
Adopt a style where the component name is used as the class name of the
top level element in the component, and where styles use the component
name to scope themselves to only match the component.

This has a number of advantages over scoped CSS rules
- There's a clear mapping between the HTML and CSS outputs and the Vue
  components in the source
- The HTML is not cluttered with opaque id attributes to scope the CSS
- The CSS is not cluttered with opaque id attributes to scope the HTML
- Poorly performing selectors like p[data-xyz] are not easily made
- Overriding selectors of child components is easier to understand and
  do, and does not involve non-standard CSS extensions

The main disadvantage is that one have to be vigilant when naming and
selecting classes in parent components so as to not select unintended
elements in child components.
2026-06-20 18:46:07 +02:00
.forgejo/workflows Update builder to r2026.4.4 2026-04-10 22:21:36 +02:00
.vscode Group .license files in VsCode explorer 2025-06-30 19:29:36 +02:00
app Refactor to scopeless CSS 2026-06-20 18:46:07 +02:00
docs Add insecure session cookie option for testing 2026-06-08 16:51:35 +02:00
LICENSES Add short-eared owl as the Owltide mascot and icon 2025-07-01 19:41:59 +02:00
public Add short-eared owl as the Owltide mascot and icon 2025-07-01 19:41:59 +02:00
server Migrate to Nuxt v4 2026-06-08 19:02:13 +02:00
shared Migrate to Nuxt v4 2026-06-08 19:02:13 +02:00
tools Fix AUTH variables missing PUBLIC prefix in docs 2025-07-09 19:26:38 +02:00
.dockerignore License under AGPL version 3 or later 2025-06-30 18:58:24 +02:00
.editorconfig Fix syntax error in .editorconfig 2025-07-07 22:51:15 +02:00
.gitattributes License under AGPL version 3 or later 2025-06-30 18:58:24 +02:00
.gitignore License under AGPL version 3 or later 2025-06-30 18:58:24 +02:00
Dockerfile Update to Node.js v24 in container image 2026-04-10 22:25:28 +02:00
generate-keys.mjs License under AGPL version 3 or later 2025-06-30 18:58:24 +02:00
nuxt.config.ts Add insecure session cookie option for testing 2026-06-08 16:51:35 +02:00
package.json Migrate to Nuxt v4 2026-06-08 19:02:13 +02:00
package.json.license License under AGPL version 3 or later 2025-06-30 18:58:24 +02:00
pnpm-lock.yaml Migrate to Nuxt v4 2026-06-08 19:02:13 +02:00
pnpm-lock.yaml.license License under AGPL version 3 or later 2025-06-30 18:58:24 +02:00
README.md Move the mascot above the title in README.md 2025-07-01 19:51:28 +02:00
tsconfig.json Migrate to Nuxt v4 2026-06-08 19:02:13 +02:00
vitest.config.ts License under AGPL version 3 or later 2025-06-30 18:58:24 +02:00

The face of a white short-eared owl staring at you and serving as the mascot for owltide.

Owltide

Owltide is a free open source event scheduling software for keeping the attendees at events informed about all the things going on. It's currently in early stages of development and not generallly useful.

Development setup

Use pnpm to install dependencies:

pnpm install

Run the development server on http://localhost:3000 with:

pnpm dev

Build and preview the production build with (rarely needed):

pnpm build
pnpm preview