feat: support external runtime state for hosting

This commit is contained in:
TopherMayor
2026-04-29 22:19:10 -07:00
parent 8f31b80647
commit 516bcd0a44
2 changed files with 20 additions and 5 deletions

View File

@@ -11,8 +11,13 @@ const app = express();
const server = http.createServer(app);
const wss = new WebSocketServer({ server });
const DATA_DIR = path.join(__dirname, 'data');
const DATA_FILE = path.join(DATA_DIR, 'votes.json');
const DEFAULT_DATA_DIR = path.join(__dirname, 'data');
const DATA_DIR = process.env.DATA_DIR
? path.resolve(process.env.DATA_DIR)
: DEFAULT_DATA_DIR;
const DATA_FILE = process.env.DATA_FILE
? path.resolve(process.env.DATA_FILE)
: path.join(DATA_DIR, 'votes.json');
app.use(cors());
app.use(express.json());
@@ -354,6 +359,8 @@ wss.on('connection', (ws) => {
});
const PORT = process.env.PORT || 3001;
server.listen(PORT, '0.0.0.0', () => {
console.log(`🏄 Cabo Voting App → http://0.0.0.0:${PORT}`);
const HOST = process.env.HOST || '0.0.0.0';
server.listen(PORT, HOST, () => {
console.log(`🏄 Cabo Voting App → http://${HOST}:${PORT}`);
});