What's new
  • The default language of any content posted is English.
    Do not create multi-accounts, you will be blocked! For more information about rules, limits, and more, visit the Help page.
    Found a dead link? Use the report button!

REQUEST Zyvalle Casino – Open Source Casino Platform | React, Node.js, Express & MySQL 8

zyvalle

Member
Messages
1
Reactions
0

Introduction​

Zyvalle Casino is a full-stack casino-style game platform built with React, Vite, Node.js, Express, and MySQL.

The project features a modern casino lobby, account authentication, administrative access, wallet functionality, transaction history, game favorites, and integrations for supported HTML5 slot games.

Designed for developers and self-hosting enthusiasts, Zyvalle Casino provides a foundation for exploring casino platform architecture, game asset integration, and backend development.

Download : Here

View attachment 315567
View attachment 315572
View attachment 315573
View attachment 315574
View attachment 315575

Features​

  • React 18 and Vite 6 frontend.
  • Node.js and Express 4 REST API.
  • MySQL 8+ database integration.
  • User authentication and administrative access.
  • Game catalog and provider metadata.
  • Wallet functionality and transaction history.
  • Deposit and withdrawal request workflows.
  • Game favorites and gameplay history.
  • Database-backed slot game settings.
  • Local HTML5 game asset loading.
  • Server-side integrations for supported games:
    • Gates of Olympus
    • Starlight Princess
    • Starlight Christmas
    • Aztec Gems Deluxe
Note: Game availability depends on the required assets, initialization data, and compatible server-side implementation. A game appearing in the catalog does not necessarily mean it is playable.

Technology Stack​

ComponentTechnology
FrontendReact 18, Vite 6, JavaScript
BackendNode.js, Express 4
DatabaseMySQL 8+
Database Drivermysql2
AuthenticationJWT and bcrypt
SecurityHelmet, CORS, rate limiting

Installation Guide​

Requirements​

  • Node.js 22 LTS or a compatible modern Node.js release.
  • npm.
  • MySQL 8.0 or newer recommended.
  • Git.
  • A modern web browser.

1. Clone the Repository​

git clone https://github.com/Zyvelle44/zyvalle-casino.git
cd zyvalle-casino

2. Install Frontend Dependencies​

cd client
npm install
Create the frontend environment file.

Windows PowerShell:

Copy-Item .env.example .env
Linux/macOS:

cp .env.example .env
Configure client/.env:

VITE_API_URL=http://localhost:4000/api
VITE_GAME_ASSET_BASE_URL=http://localhost:5173

3. Install Backend Dependencies​

Open a separate terminal in the repository root.

cd server
npm install
Create the backend environment file.

Windows PowerShell:

Copy-Item .env.example .env
Linux/macOS:

cp .env.example .env
Configure server/.env:

NODE_ENV=development
PORT=4000
CLIENT_ORIGIN=http://localhost:5173

DATABASE_HOST=127.0.0.1
DATABASE_PORT=3306
DATABASE_NAME=zyvalle_bet
DATABASE_USER=root
DATABASE_PASSWORD=

SESSION_SECRET=replace-with-a-long-random-secret-at-least-32-characters

ADMIN_NAME=Administrator
ADMIN_EMAIL=[email protected]
ADMIN_PASSWORD=ChangeThisToA-Strong-Unique-Password
Update the database credentials to match your MySQL configuration. Use a strong, unique administrator password and a secure random session secret.

4. Create and Import the Database​

Start MySQL and import the SQL schema included in the repository.

The database schema is available at:

sql/Zyvalle'sBet.sql

You can import it using MySQL Workbench or phpMyAdmin. Alternatively, from a Bash-compatible terminal at the repository root:

mysql -u root -p < "sql/Zyvalle'sBet.sql"
The schema creates and selects the zyvalle_bet database.

5. Create the Administrator Account​

From the server directory:

npm run seed:admin
The command uses ADMIN_NAME, ADMIN_EMAIL, and ADMIN_PASSWORD from server/.env.

Ensure the password meets the project's minimum requirement of 12 characters.

6. Start the Backend​

From the server directory:

npm run dev
The API will normally be available at:


7. Start the Frontend​

Open another terminal in the client directory:

npm run dev
Open the Vite development URL:


Keep both frontend and backend processes running during local development.

8. Build for Production​

From the client directory:

npm run build
The production frontend build is generated in client/dist.

The backend API must be deployed separately, with the production frontend configured to use the correct API and game asset URLs.

Troubleshooting​

Database connection errors

  • Ensure MySQL is running.
  • Verify the credentials in server/.env.
  • Confirm the SQL schema has been imported.
Frontend cannot connect to the API

  • Ensure the backend is running on port 4000.
  • Verify VITE_API_URL and CLIENT_ORIGIN.
  • Restart Vite after changing environment variables.
Games fail to load

  • Verify the asset directory and file paths.
  • Check browser Developer Tools for missing files and JavaScript errors.
  • Confirm the game has a compatible server-side implementation.

Security Notes​

  • Never commit .env files or private credentials.
  • Change example administrator credentials before deployment.
  • Use HTTPS and secure production configuration.
  • Review authentication, wallet, payment, and game-round logic before using the platform with real users or funds.
 
Reacted by:
Top