'update'
[vchess.git] / TODO
diff --git a/TODO b/TODO
index efdd259..d1b50d4 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,24 +1,53 @@
-Finish rules translation in Spanish + improve existing ones
-Design: final touch (gain extra space on top, using space on the right)
-Crazyhouse: center reserves, grey if zero available, numbers superimposed
-Promotions: increase pieces sizes, better background.
-Code: use two spaces instead of tabs, everywhere.
-Increase code line length to 100 or more?
-(http://katafrakt.me/2017/09/16/80-characters-line-length-limit/)
-Chat button should be more apparent after game ends (color ?)
-Reinforce security for problems upload (how ?)
-The mode switch between human/computer/friend (+ problem) is a mess
-(example: finished computer game, ongoing friend game, reload, friend game is unreachable)
-
-Later:
-Let choice of time control, allow correspondance play, several games at the same time
-==> need to use indexedDB instead of localStorage. Maybe with Dexie https://dexie.org/
-Each user would have a unique identifier stored in the client DB.
-Allow to cancel games (if opponent doesn't connect again)
-Identity would be browser-based: different games on smartphone, home computer, work computer... (why not ?)
-Index might still look the same, and variant page would have another tab "Games"
-==> running, and finished (which can be deleted from local memory)
-(A true analysis mode could be implemented also, to navigate in completed games --> use a button)
-Allow challenging a specific player (by his chosen name)
-But keep the random pairings as main playing way + always playing in ZEN mode,
-except when accepting an individual challenge.
+Afficher les observers sur page Game ? Où ?
+
+au moins l'échange des coups en P2P ? et game chat ?
+surligner "hall" (menu) si nouveau défi perso (reçu) et pas affichage courant
+de même surligner "my games" si c'est à nous de jouer dans une partie (corr)
+
+Click elsewhere make modal disappear (for now: Esc key works...)
+
+Use better-sqlite3 instead of node-sqlite3:
+https://www.npmjs.com/package/better-sqlite3
+
+Canvas for hexagonal board Vue reactivity :
+https://stackoverflow.com/questions/40177493/drawing-onto-a-canvas-with-vue-js
+custom directives ?
+
+Desktop notifications:
+https://developer.mozilla.org/fr/docs/Web/API/notification
+
+Think about this:
+https://alligator.io/vuejs/component-communication/
+https://alligator.io/vuejs/global-event-bus/
+
+Dans variant page, "mes parties" peut toujours contenir corr + importées (deux onglets)
+En fin de partie (observée ou non), bouton "import game" en + de "download game" ==> directement dans indexedDB
+les parties par correspondance survivent 7 jours après la fin de partie
+
+mat en 2 échiqueté : brnkr3/pppp1p1p/4ps2/8/2P2P2/P1qP4/2c1s1PP/R1K5
+(Bb3+ Kb1 Ba2#)
+
+Importer des parties : nécessite de parser le PGN produit (possible, un peu pénible)
+
+espagnol : jugada ou movimiento ?
+fin de la partida au lieu de final de partida ?
+
+Mode new game contre un ami comme sur lichess ?
+
+Coordonnées sur échiquier: sur cases, à gauche (verticale) ou en bas (horizontale)
+
+Import game : en local dans indexedDb, affichage dans "Games --> Imported"
+
+Hexachess: McCooey et Shafran (deux tailles, randomisation OK)
+http://www.math.bas.bg/~iad/tyalie/shegra/shegrax.html
+http://www.quadibloc.com/chess/ch0401.htm
+
+Inspiration for refactor:
+https://github.com/triestpa/Vue-Chess/blob/master/src/components/chessboard/chessboard.js
+https://github.com/gustaYo/vue-chess
+
+Server:
+Later: use http2
+https://webapplog.com/http2-node/
+https://www.npmjs.com/package/spdy
+Express 5?