2026-06-22 08:54:00 +02:00
2026-06-20 14:28:11 +02:00
2026-06-21 19:44:33 +02:00
2026-06-20 17:43:53 +02:00
2026-06-20 16:16:12 +02:00
2026-06-20 14:29:53 +02:00
2026-06-21 16:51:35 +02:00
2026-06-21 19:41:32 +02:00
2026-06-21 19:44:33 +02:00
2026-06-21 16:51:35 +02:00
2026-06-20 16:16:12 +02:00
2026-06-21 19:41:32 +02:00

Owof announcements

This project serves the purpose of serving announcements to display in-game for owof games.

It includes:

  • a web interface to add, edit or remove notifications
  • notifications with a title, a text body, a publication date (notifications won't be served to games if the publication date is in the future) and an image

How it works

The web app is an express.js + vite / react app made with vite-express.

It provides a web interface to perform CRUD operations. These operations are performed via REST APIs (add/edit are performed directly via form post).

All the interface must be protected under authentication EXCEPT for the GET /api/announcements/from-game and GET /images/<filename>. This endpoint, and only this, is the one used by games to retrieve the list of notifications, and /images/* provides all the images for the announcements.

Compilation and deployment

Compile:

./node_modules/vite build

Run:

NODE_ENV=production HTTP_PORT=1234 DATABASE_PATH=/opt/owof-announcements/data.db UPLOADS_DIR=/opt/owof-announcements/uploads node /opt/owof-announcements/code/src/server/main.ts

Copy to server:

S
Description
No description provided
Readme 306 KiB
Languages
TypeScript 97.1%
Shell 1.6%
HTML 1.3%