mimopo / bgpg Goto Github PK
View Code? Open in Web Editor NEWweb-based online board game sandbox
Home Page: https://bgpg.herokuapp.com/
License: GNU Affero General Public License v3.0
web-based online board game sandbox
Home Page: https://bgpg.herokuapp.com/
License: GNU Affero General Public License v3.0
Actions:
...
It could be useful to implement a turn-based system.
The entire game will be locked for a particular player during his turn. The turn could finish when the time expires or clicking a button.
Write a schema to make easier to write a game config file and validate it later.
Use Selection.js or something similar.
It could be even better adding a category to the tokens so you can filter them before dragging.
Right now all the games are 1920x1080, the size should be on the game json.
Add game info and players info to the room menu
It could be great if the users could share a game from its own computer or server. Just to share a game while they are working on it or if they want to keep it private.
It could be very useful in games where the point of view of the board matters (like Chess)
Let the user choose a name
It could be useful to see the players mouse position while playing.
A cursor with the player's name for example.
If you try to reload the page and you are not on the index page you will get a 404 error.
Idea: An application to guide the creators through the game creation process with a wizard, including validation and assets bundling.
Basic video call with jitsi-meet during the game.
https://github.com/jitsi/jitsi-meet/blob/master/doc/api.md
Start using DTOs to hide unnecessary or sensitive information from the frontend side.
Use class-transformer to serialize & deserialize.
See: https://docs.nestjs.com/techniques/serialization
These DTOs should be interfaces placed in a shared package, something like @mimopo/bgpg-core.
Add game help & external links to the room menu.
Right now the backend is updating the database on any movement, this is quite expensive for the database and reduces the events speed.
The entire movement will be broadcasted to the room like now (on drag) but will be saved to the database only on token drop. It will make possible to store a movement log.
A filterable tokens list with SVG + Description on the room menu.
Add to new fields to any token entity:
Stop creating rooms on server initialization.
On the frontend:
On the backend:
All the rooms will be public for now.
Store movements on the database:
The page doesn't redirect to lobby when using a mobile phone with Chrome.
If you drag an element, the position is recalculated relative to the user pointer and not relative to the element.
Add server validations with class-validator for all existing gateway methods.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.