English | 日本語
A simple Votifier implementation in TypeScript. Including standalone server and client of Votifier v2 protocol.
npm install votifier-ximport { VotifierServer } from 'votifier-x';
const server = new VotifierServer({
port: 8192, // optional, default is 8192
tokenPath: 'path/to/tokens.json', // optional, default is 'tokens.json'
});
server.start();
server.on('vote', (vote) => {
console.log(`Received vote from ${vote.username} at ${vote.address}`);
});import { VotifierClient } from 'votifier-x';
const client = new VotifierClient({
host: '0.0.0.0',
port: 8192,
token: 'your-token',
serviceName: 'your-service-name',
});
await client.sendVote({
username: 'username',
address: 'address',
});The server uses a tokens.json file to authenticate incoming votes from different voting lists. It is a simple key-value JSON object where keys are the serviceName and values are the corresponding token strings.
{
"default": "auto-generated-token-string",
"your-service-name": "another-token-here"
}If the specified tokenPath file does not exist when the server starts, the server will automatically generate a new configuration file containing a single default token. You will need to provide this token when you register your server on a voting list.
- NuVotifier
- Votifier(original)
- votifier2-js Votifier v2 implementation in JavaScript