# 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/\. 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 node ./src/server/main.ts ```