wgames
v0.1.0
Published
De WGames module voor Server EN Client!
Maintainers
Readme
WGames
WGames is a flexible and easy-to-use real-time gaming server-client solution based on Socket.IO. With WGames, you can easily connect to a server to exchange game data in real-time and update it as needed.
Features
- Server-side: Easily create an Express server with Socket.IO integration.
- Client-side: Connect to the server using a simple client that supports reconnections, error handling, and data exchange.
- Live updates: Real-time updates of game data via Socket.IO and automatic updates when the game data file changes.
- Chalk Integration: All logs are color-coded for better readability in the terminal.
Installation
1. Installing the package
Install the package via npm:
npm install wgames2. Requirements
- Node.js 14.x or higher.
- Socket.IO for both client and server integration.
Usage
Server (Express + Socket.IO)
Create an Express server and connect it to a Socket.IO server to serve game data.
import WGames from "wgames/server";
import express from "express";
import { createServer } from "http";
const app = express();
const server = createServer(app);
app.use(WGames.createExpress());
// Initialize the Socket.IO server
const io = WGames.init(server);
// Set up the Socket.IO connection for game data
WGames.create(io, "./data/games.json");
server.listen(3000, () => {
console.log("WGames server running on http://localhost:3000");
});Client (Socket.IO-client)
Connect to the server and receive game data in real-time.
import WGames from "wgames/client";
const client = WGames.create("http://localhost:3000");
client.onReady(() => {
console.log("Connected to WGames server");
client.fetchGamesData();
});
client.onGamesData((data) => {
console.log("Game data:", data);
});
client.onError((err) => {
console.error("Error from server:", err);
});Client Functions
- onReady(callback): Called when the client successfully connects to the server.
- fetchGamesData(): Retrieves the latest game data from the server.
- onGamesData(callback): Listens for and receives game data from the server.
- onError(callback): Listens for errors from the server.
- disconnect(): Disconnects from the server.
- removeAllListeners(): Removes all registered event listeners.
License
See the LICENSE file for the license.
