ifs49f / poker Goto Github PK
View Code? Open in Web Editor NEW:spades: Vivid, registration-free, easy-to-use scrum poker. Aka Poker4Fun.
Home Page: https://poker4.fun
License: GNU General Public License v3.0
:spades: Vivid, registration-free, easy-to-use scrum poker. Aka Poker4Fun.
Home Page: https://poker4.fun
License: GNU General Public License v3.0
Now every player can show or hide the result, we didn't distinguish scrum owner and regular players according to our initial engineering.
However, sometimes the new users want to try it out, which will show the unfinished voting and block our normal process.
Actually we recorded every action for users in our server logs, but our users want to display who show or hide the result in the UI at least.
Need to confirm whether we can reproduce the issue via steps below.
I need a flag indicate which one I selected but if I click somewhere other than story point the highlight will disappear now.
Jest has been introduced with create-react-app together, I also found Jest has some advantages than Mocha, such as Jest has snapshot testing, and the execution performance for tests is better than Mocha.
So I'd like to create this issue here to note my investigation result, maybe some article links.
Display how many people are playing or observing and give a link to share for inviting more people.
Basically there is no need to use service worker to serve assets since the poker is a simple project.
However, as a side project which is just for fun, I'm happy to embrace such new things.
Thanks to create-react-app, there is registerServiceWorker.js, and it's easy to know whether there is new update.
Once there is any change to data structure, I'd like to notice client user there is new update in addition to ensure our code is backward compatible like IFS49F/poker-server@60347c2.
After show results, any new vote and new people will be shown.
No matter we show the result or not, it's better experience if we could know any player is re-voting.
To restart animation, we have several approaches.
setTimeout
to put the next state change into next tick of event loopthis.setState({ voted: false }, () => {
setTimeout(() => this.setState({ voted: true }), 0);
});
voted
out of <Card />
to destroy (voted=false
) then re-build the DOM (voted=true
){voted && <Card voted={voted} />}
webkitAnimationEnd
event. https://css-tricks.com/restart-css-animation/As for our poker, there are two kinds of cards.
We could easily pass down a prop me={true}
to <Card />
for indicating it's me, and check nextProps.score !== this.props.score
in componentWillReceiveProps
hook to indicate if I re-vote, then invoke one of the approaches above to restart animation.
To avoid knowing others' score before we show the result, poker server will return null
for other players' score, that means we could not use nextProps.score !== this.props.score
to indicate if other player re-vote. Without this if statement, other players' card will always re-animate even he/she doesn't re-vote but other actions trigger the whole state update.
Open this ticket here to discuss.
Dear friends,
As you know, currently there are more and more teams using this poker tool in their scrum meetings, some of them have already used this tool for a long time.
According to our original plan, this tool will always be free but happy to see any donation. The reason to create this ticket here is not saying that there are less donation in last months, but I'd like to share more thoughts on what we could get from this project.
Based on the experience in my another free open source side project (the React Native app), I got following benefits.
For the last item, we really got less feedback from our users, one of the reasons is that we didn't provide a way for users to give their feedbacks, we only have an Octocat banner at the top right.
For the RN app I created, I nearly received feedback from users every month, since I gave users entrance to provide their feedback (in app settings, and also created some posts in different forums to provide feedback way).
Do you think it will be useful if we give users a notification banner when they access a room? the behavior is similar like this package: https://fkhadra.github.io/react-toastify/ (we will create it by our own if you all agree with notification way).
Open to discussion.
Then we can know how many users are using our poker π .
Implement optimistic update for states to improve perceived speed.
The poker has been released last year. As far as I know, there are at least 3 teams in Active were using it.
As you know the poker is not stable sometimes, because the server is located out of China, so during last weeks, some managers asked me whether we could move the poker back to company. In this way I have no need to pay for the server and domain.
According to the license of poker, it's OK to fork it to other place, but to be honest, this is just side project which I can introduce any new tech stuff if I like, that said if one of our duties is to maintain the internal poker, seems like there is no fun.
I told the managers that feel free to fork the repo, but we will still maintain the one on GitHub. I'm also happy to be the sponsor for the server and domain, it's not big deal.
@hiveer - As project initiator
@hyjk2000 - As main maintainer
me - As sponsor
Just want to on the same page with you all.
When the organizer show the decks, voters still can change votes, which should be prevent. Someone might change his vote during discussion.
Currently I'm not sure whether it's a bug caused by race condition or misoperation in redux store, but the experience for such behaviour is not good.
Created this issue as bug for tracking.
In an event of Internet connection failure and WebSocket reconnection, indicate the user on the UI with a red banner describing the situation, like Slack does.
Steps to reproduce,
I can't unselect the story point when I click someone inadvertently.
Since a large portion of our user base is on mobile devices which would sleep and disconnect from WebSocket, we should handle disconnections gracefully when the user already has a vote on screen. Instead of removing disconnected user from the room and clear their vote, it's better to defer the cleanup until the votes are cleared so votes are kept on screen even after the user is disconnected.
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.