fave77 / pbchess Goto Github PK
View Code? Open in Web Editor NEWAn open-sourced free online chess platform
Home Page: https://develop.pbchess.ml
License: GNU General Public License v3.0
An open-sourced free online chess platform
Home Page: https://develop.pbchess.ml
License: GNU General Public License v3.0
The site does not have a contact us section. So if a person if facing any issues then he cannot report it.
I would like to add the contact us section.
The learn Page is so static. Also, UI is not looking so good. I want to change the UI of learn page. Please assign this issue to me.
Is your feature request related to a problem? Please describe. ๐ก
Not necessarily.
Describe the solution you'd like โจ
A footer component that renders the following three items:
Describe alternatives you've considered ๐
NA
Additional context ๐
Make the bg color for the footer the same as the header.
Is your feature request related to a problem? Please describe. ๐ก
This article is for the learning section of pbchess.
Describe the solution you'd like โจ
Describe alternatives you've considered ๐
NA
Additional context ๐
NA
Is your feature request related to a problem? Please describe. ๐ก
No.
Describe the solution you'd like โจ
A profile page for the user's information. It should contain:
Profile page should look as below in additional context.
On pressing the edit profile button a popup fullscreen edit modal should appear for filling the new details that will replace the old ones. And it should be as below in additional context.
Describe alternatives you've considered ๐
N/A
Additional context ๐
Add any other context or screenshots about the feature request here.
Mockups
Is your feature request related to a problem? Please describe. ๐ก
It's always easier and faster to install all packages on the server and the client-side by running one script
Describe the solution you'd like โจ
I will add the "setup" script to the package.json in the root directory through which all packages on both sides will be installed simultaneously.
Describe alternatives you've considered ๐
There are not many alternatives to be discussed since this is more an improvement than a feature
Additional context ๐
This will be very helpful in the quick setup of the project
Describe the bug ๐
The Carousel arrow key is overlapping with the image of the chessboard.
The gradient colour which is used for the card is also too light according to the theme of the landing page
To Reproduce ๐
Steps to reproduce the behaviour:
Expected behaviour ๐
The arrow key and image of the chessboard should not overlap with each other.
The gradient colour should also be a dark colour
Desktop (please complete the following information): ๐ป
Is your feature request related to a problem? Please describe. ๐ก
The website lacks the feature of sending emails when a user registers himself/herself without using google.
Describe the solution you'd like โจ
I would like to use the nodemailer module to send emails to the client when a user registers without using google.
I want to add the contributor's section in the readme file. It is one of the best parts of every readme.
Is your feature request related to a problem? Please describe. ๐ก
Lichess now offers OAuth, which means a "Login with Lichess" button is within reach. And although it sounds ironic, it would be the epitome of foss+chess enthusiasm to include such a button.
Describe the solution you'd like โจ
Add the "Login with Lichess" button (under the google one). All sensitive variables will be stored in the .env file so that the maintainers can replicate the app in production.
Describe alternatives you've considered ๐
Not including the bu.... gosh, I can't even fathom such a thing ๐จ
Additional context ๐
โ๏ธ + โฎ๏ธ = โค๏ธ
[gsSoC '21]
Is your feature request related to a problem? Please describe. ๐ก
The puzzles page would allow a user to practice random puzzles with varying ELO ratings. The basic functionality including but not limited to:
next
random puzzle as well as to the previous
puzzleprevious
and next
consecutively shouldn't display a random puzzle but the one that has been visited beforeDescribe the solution you'd like โจ
The puzzles component will consist of the following elements:
react-chessground
for the UI, chess.js
for the logic and chessblunders for the APIDescribe alternatives you've considered ๐
Haven't considered any other alternatives but open to suggestions
Additional context ๐
For the API, create a new service class called PuzzleService and save it inside the client/src/services
folder named puzzle.service.js
. The class should contain a method called getPuzzle(<optional id argument>)
which calls the following endpoint - https://chessblunders.org/api/blunder/get
, method=POST and body includes -
{
"type": "explore"
}
For further references regarding the implementation, you could check game.js
and game.controller.js
except the logic would be handled on the client-side!
Hi I would like to create a file contributing.md and add the following -
Difference between GIT and GITHUB
How to clone,fork repository
How to create a branch and then use git push to push to repo
Create a PR
Squash commits in a single issue into one
Updating the forked and local repo as the updations are made in the upstream
Is your feature request related to a problem? Please describe. ๐ก
N/A
Describe the solution you'd like โจ
blue-marble
Describe alternatives you've considered ๐
N/A
Additional context ๐
N/A
Describe the bug ๐
The current dropdown in the navbar has the following issues:
To Reproduce ๐
Steps to reproduce the behavior:
/register
or /login
pageExpected behavior ๐
#1d1e22
rgba(255, 255, 255, 0.5)
Login
link must appear instead of 'username (dropdown)'Screenshots ๐ท
Desktop (please complete the following information): ๐ป
Smartphone (please complete the following information): ๐ฑ
Additional context ๐
NA
Describe the bug ๐
Currently, Navbar
, Profile
, Lobby
, and PrivateRoute
components are throwing error for the unit test - renders without crashing!
To Reproduce ๐
Steps to reproduce the behavior:
/client/src/test/App.test.js
npm test
inside the client folderExpected behavior ๐
To pass the test for all the components.
Desktop (please complete the following information): ๐ป
Smartphone (please complete the following information): ๐ฑ
NA
Additional context ๐
NA
ISSUE DETAILS
Currently, the video player extends the scope of the visible area which makes it difficult to see the entire board in one go.
Also, the player overlaps the vocabulary section on some small screen sizes.
We can display the player with a size corresponding to the screen sizes.
Hey @fave77, I am a GSSOC 2021 participant. I would like to work on the issue.
Could you please update the issue with relevant tags and assign the same (Aanchal#1668)?
Is your feature request related to a problem? Please describe. ๐ก
This is related to unit testing for the file keys.config.js
.
Describe the solution you'd like โจ
server/test/
named as keys.config.spec.js for one of the config files inside server/src/configs/
.Describe alternatives you've considered ๐
NA
Additional context ๐
NA
Is your feature request related to a problem? Please describe. ๐ก
An article on endgames for learning section of pbchess
Describe the solution you'd like โจ
A 3000-word article on different endgames like rook endgame, king and pawn end game etc with in depth analysis submitted as a markdown file
Describe alternatives you've considered ๐
NA
Additional context ๐
NA
Is your feature request related to a problem? Please describe. ๐ก
A timer can be added beside the player that would count-down for the player who has to make current move.
Describe the solution you'd like โจ
UI suggested by @fave77 :
Is your feature request related to a problem? Please describe. ๐ก
Not necessarily, but it does increase user experience.
Describe the solution you'd like โจ
Modify the login card to include a link to the /register page like so:
Describe alternatives you've considered ๐
NA
Additional context ๐
It would be more apt if we can get rid of the register link from the header since this is a one-time procedure. So, there should be only a Login link (due to frequent access) via which a new user can access the /register page.
Is your feature request related to a problem? Please describe. ๐ก
if you are working with mongoose, means you are working with promises. So, you need to handle promise. This is an easy fix but good for long term.
Describe the solution you'd like โจ
I suggest instead of this:
connect(mongoURI, {
useNewUrlParser: true,
useCreateIndex: true,
useFindAndModify: false,
useUnifiedTopology: true,
});
You should do this:
mongoose
.connect(mongoURI, {
useNewUrlParser: true,
useUnifiedTopology: true,
useCreateIndex: true,
useFindAndModify: false,
})
.then(() => {
console.log('Connected to mongo db');
})
.catch((err) => {
console.log("Couldn't connect to mongo db, err: ", err);
});
Is your feature request related to a problem? Please describe. ๐ก
Scroll to top of the page button is not present in "Learn" page.
Describe the solution you'd like โจ
A clear and concise description of what you want to happen.
I would like to add this and want to contribute as a part of GSSOC 2021.
Describe alternatives you've considered ๐
A clear and concise description of any alternative solutions or features you've considered.
Additional context ๐
Add any other context or screenshots about the feature request here.
Kindly assign me this issue.
Is your feature request related to a problem? Please describe. ๐ก
Any new contributor has to figure about project structure and has to spent quite some time figuring it out. It would be very helpful if there is a contributing guidelines for their help.
I am also new to this repo. Admins may look after it.
Describe the solution you'd like โจ
Add CONTRIBUTING.md file with steps
Add .env.sample file providing default environment variables (May I do this part?)
Is your feature request related to a problem? Please describe. ๐ก
There are few things missing in readme like how to get started for developers , features of projects etc
Describe the solution you'd like โจ
I would edit the readme file and make it better . It will be easy to understand for developers.
Please asssign this issue to me as part of gssoc'21.
My Discord Username : kyadav#6342
Original proposal
I will like to add a feature this will update contributor list in read me automatically !! Will start to work on this issue as soon as i get assigned !!
Counter Proposal
contributor list already exists on the repository's home page, it would be nice to create a page for the website though. /contributors would list all the contributors sorted by the number of commits and lines of code added.
The list would update automatically whenever a PR gets merged and it shouldn't contain bots as a contributor.
For the UI, on a 13-inch display, a row would contain 3 cards, and you can increase or decrease the number according to different form-factors, Each card would display the contributor's GitHub image, full name, username, and then clicking the card would redirect to their GitHub profile. Add animations for elevating the UX to a seamless experience.
Revised Proposal
I believe adding contributors in a website would require it to load dynamically from contributor website which might require us to run that in the server as a scrapper for the website.
But the question arises that is it legal to scrape github webpages and abide by the policies
Final Proposal
Let's say we compromise real-time update for getting rid of web scraping, then can you look into any GitHub APIs that exist for retrieving such data (even if it isn't real time). Maybe we could assign a scheduler to call the api once a day for updates. There is actually a github API for that, https://docs.github.com/en/rest/reference/repos#list-repository-contributors, found it through an answer on stackoverflow.
If you like the idea to show contributors at /contributors, you can have a look at it, there maybe more limitations but it also provides the number of contributions ๐ For this repo, it will be: https://api.github.com/repos/fave77/pbchess/contributors
Is your feature request related to a problem? Please describe. ๐ก
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Describe the solution you'd like โจ
A clear and concise description of what you want to happen.
Describe alternatives you've considered ๐
A clear and concise description of any alternative solutions or features you've considered.
Additional context ๐
Add any other context or screenshots about the feature request here.
Is your feature request related to a problem? Please describe. ๐ก
There are people who don't know the rules of chess pieces. It would be good if there is a written set of rules section of pieces like how a queen can move, how pawn can move and kill opponent etc
Describe the solution you'd like โจ
I would like to add tab of rules on navigation bar which would describe the rules of all the chess pieces.
Please assign this issue to me as part of gssoc'21.
My Discord Username : kyadav#6342
Describe the bug ๐
Learn page is not scaling accordingly when viewed on mobile screen. A lot of spacing on right side could be seen when you zoom out.
To Reproduce ๐
Steps to reproduce the behavior:
Expected behaviour ๐
The page should scale out properly occupying full width of screen size available
Desktop (please complete the following information): ๐ป
Smartphone (please complete the following information): ๐ฑ
Is your feature request related to a problem? Please describe. ๐ก
Assuming the following situation:
A user might have code for a room. He/she visited the play page, and clicked on create game
by mistake instead of join game
.
In such case, the user has to manually reload the page in order to click on join game again.
In order to prevent this, we can have a small link/button on the lobby code
dialog, clicking on which user can cancel new room action and join to a game instead
Similar situations might hapeen the other way. Someone had to create a game, but click on join by mistake.
Describe the solution you'd like โจ
A link/button to bottom-left of copy code dialog, similar to Login instead
we see on sign up pages. It would cancel the create room process and replace it with the join room dialog.
Similar link/button to replace join room dialog with create room dialog
Additionally, what is the extra comma that appears after copy code button?
It is there by mistake, we can remove that if it is so.
Is your feature request related to a problem? Please describe. ๐ก
Nope.
Describe the solution you'd like โจ
Add a kind of option panel, for timer, like allow players to choose how much time the want.
Give an option for who wants to play white
Describe alternatives you've considered ๐
No. I believe it will be an essential thing
Additional context ๐
Nope. Just a big thanks :)
Is your feature request related to a problem? Please describe. ๐ก
The user currently has no way to change his/her password.
Describe the solution you'd like โจ
I would build a component inside the drop down menu providing the user to change his/her password. The request would be sent to the client over a new route. The server then sends the user an email to change his/her password.
Is your feature request related to a problem? Please describe. ๐ก
This article is for the learning section of pbchess.
Describe the solution you'd like โจ
Provide an article under 1000 words that also fulfill 5 min read time. It should consist of plenty of images, elaborations wherever it needs. Simply put, it should be visually stunning and engaging, and must be submitted as a Markdown file named chess_engines.md
inside .github/lessons/
.
The title for the article is - Chess Engines 101: Looking through the Machineโs Lens
Stockfish
, talk about its success and ratings a bitDescribe alternatives you've considered ๐
NA
Additional context ๐
Do note that the issue is marked as moderate
for a reason, not so much on the requirements but on expectations. Feel free to reach out to discuss crafting it.
Is your feature request related to a problem? Please describe. ๐ก
The website lacks the feature of validating emails, when a user registers without using google.
Describe the solution you'd like โจ
I would like to add email validation to the website whenever a user registers using the npm deep-email-validator module on the client side.
Is your feature request related to a problem? Please describe. ๐ก
This is related to unit testing for the file chess.service.js
.
Describe the solution you'd like โจ
server/test/services
named chess.service.spec.js
for writing the unit tests.Describe alternatives you've considered ๐
NA
Additional context ๐
NA
ISSUE DETAILS
Currently, the learn section has some alphabet tabs that are clickable but do not redirect to the terms with that alphabet, as there are no terms starting with that letter.
This hampers user experience as the user might think of it as a flaw wherein the alphabet is not directing to the terms.
Also, the code structure has been created by statically defining and creating links for all the alphabets.
The alphabets should only be present for which the terms exist in vocabulary.
The code structure can be improved by creating the links dynamically (rather than static typing) on the basis of the terms for better code quality and readability.
Describe the bug ๐
The carousel seems to be non-responsive on smaller form factors and tends to overflow from the viewport. The quote isn't readable due to it being overlaid onto the image.
To Reproduce ๐
Steps to reproduce the behavior:
Expected behavior ๐
A responsive carousel card that consists of the image at the top and a quote at the bottom. The bg color for the card must be different than that of the bg color of the homepage as well as that from the quote's text color. The width of the card must be 70-80% of the viewport width depending on the device.
Screenshots ๐ท
Desktop (please complete the following information): ๐ป
Smartphone (please complete the following information): ๐ฑ
Additional context ๐
NA
Hi! I would like to add contributing.md to the repo which states on how to clone and fork the repo,how to add ,create and push a repo,squash commits,rebase your feature branch ,how to update forked repo as well as local repo to the changes made in upstream.
I would like to work on this under GSSOC'21.
Describe the bug ๐
A user with the same email can register using a different username.
To Reproduce ๐
Steps to reproduce the behavior:
Use a different username while registering. A new user is formed with the same email.
Is your feature request related to a problem? Please describe. ๐ก
This article is for the learning section of pbchess.
Describe the solution you'd like โจ
Provide an article under 1000 words that also fulfill 5 min read time. It should consist of plenty of images, elaborations wherever it needs. Simply put, it should be visually stunning and engaging, and must be submitted as a Markdown file named grokking_chess.md
inside .github/lessons/
.
The title for the articles is - Grokking Chess: Fundamentals, Principles, and Checkmate Patterns
Describe alternatives you've considered ๐
NA
Additional context ๐
Do note that the issue is marked as moderate
for a reason, not so much on the requirements but on expectations. Feel free to reach out to discuss crafting it.
Describe the bug ๐
Major security issue on the signin/google endpoint.
To Reproduce ๐
Steps to reproduce the behavior:
A person can provide any email and login by performing a post request on the signin/google endpoint. I would like to use a token instead of username for logging in the user via google
Is your feature request related to a problem? Please describe. ๐ก
No
Describe the solution you'd like โจ
Describe alternatives you've considered ๐
You can make use of this npm package: https://www.npmjs.com/package/getavataaars
demo: https://getavataaars.com/
Additional context ๐
These are some properties, which should be implemented.
Describe the bug ๐
Suppose a username is already taken, a new user with the name same as the username registers using OAuth, there would be two users, with the same username.
To Reproduce ๐
Steps to reproduce the behavior:
Register a user with a username say bob. Now if a second person with the email [email protected] is registering, there would be two users with the username bob.
Expected behaviour ๐
If the person with the email [email protected] is registering then :
I would like to add placeholder in login form.
I am gssoc participant please assign me this issue.
Is your feature request related to a problem? Please describe. ๐ก
There should be a Your/Opponent turn prompt or label on screen. It would be very helpful.
For example, user might take eyes off screen for couple of seconds and miss the opponent's movement. He/she would keep waiting for opponent and opponent would also have to wait. That is not at all good.
Describe the solution you'd like โจ
We can add a small text to bottom-right/left of screen showing either:
Your turn (Green) or
Opponent's turn (Gray)
Edit: We can add animation for Your turn also to catch attention
Can you assign this to me?
Is your feature request related to a problem? Please describe. ๐ก
Sometimes I burn the midnight oil and during my breaks crave nothing more than a short bullet game. But my friends seem really upset when I call them up and send them the pbchess game ID to my game. ๐ญ One of them even threatened to mute/block/unfollow me!
I have since decided that I shall make new friends, and the most strategic choice is to get chummy with our future overlords.
Describe the solution you'd like โจ
I'd like to be able to play against AI bots. Lichess offers a board API that I believe should let us challenge a bot account hosted on their site. This'll probably require some refactoring, but I think I'll be able to get it to work.
Describe alternatives you've considered ๐
Blackmail my friends into playing with me. At two in the morning. On a weekday. ๐
Additional context ๐
โ๏ธ - ๐งโ๐ฆฑ + ๐ค = โค๏ธ ?
I will like to add a feature this will update contributor list in README.md automatically !! Will start to work on this issue as soon as I get assigned !
Thank You
Is your feature request related to a problem? Please describe. ๐ก
The website is lacking Google and Facebook sign in feature
Describe the solution you'd like โจ
I would like to add sign in with google and sign in with Facebook features.
Please assign me this issue under GSSoC 2021
Is your feature request related to a problem? Please describe. ๐ก
The user is unable to update his/her password, when he/she forgets it. Moreover when he/she logs in using google, their password is a random one.
Describe the solution you'd like โจ
I would like to implement the feature wherein the user can update his/her password, when he/she forgets it.
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.