Files
owof-announcements/README.md
T
2026-06-21 19:44:33 +02:00

32 lines
1.1 KiB
Markdown

# 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: