npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

furkanemre

v0.0.13

Published

Seed project for React apps using ES6 & webpack.

Readme

Yuzbir Okey in React

DEV DIARIES

Write a diary for each challenge you take

PLAN

  • 8.13 : 3 Login

  • 8.16 : 3 GamePlay

  • 8.19 : 3 UserProfile

  • 8.22 : 3 Tournaments

  • 8.25 : 3 Leaderboard

  • Login

    • [x] add loading states
    • [x] add localstorage
  • Juice

    • [ ] Add Color
    • [ ] tween/scale stones etc
    • [ ] table stones much smaller / stackable
    • [ ] sounds/ radio
    • [ ] add particles / smoke
    • [ ] confetti game end
    • [ ] stone stacks shown
  • GamePlay

    • [ ] Fix layout
      • [x] Improve stones
      • [+] Improve user cards
    • [x] Stone groups draggable
    • [x] stones not overlap
    • [x] stone groups count shown
    • [0] total count shown
    • [x] middle stone count
    • [ ] timer auto play
    • [ ] enable click play
    • [x] add fake okey
  • UserProfile

    • [x] add language switch
    • [ ] Game stakes are applied
    • [ ] User Profile dialog
    • [ ] Clickable user links
    • [ ]

BUGS

  • [ ] put the new added stone first empty place
  • [x] groups z index messed at bottom
  • [x] transition is on when withdrawn middle
  • [x] scoreboard shows nan values
  • [x] discard stones shows very first instead of last
  • [ ] transition glitch happens when drag last stone in stone group
  • [x] fix z index for open stones
  • [x] stone transition bug on open sequence
  • [x] throws on leave table
  • [x] custom drag layer throws when dragged non draggables
  • [x] draw left / open sequence / leave taken fail
  • [x] hover css style mess when dragging stones
  • [ ] pair opening stone is removed by duplicate when left is same
  • [ ] sometimes rooms don't get removed, probably caused by breakpoints
  • [x] drop on discard mini box area calculate wrong (row column)
  • [x] open sequence twice causes bug
  • [x] replace okey should replace higher order stone
  • [x] open sequence / open pairs / collect open rule and save bug
  • [x] open sequence / open pairs / can't open sequence again
  • [+] open sequence and pairs implement server side
  • [ ] two okeys doesn't make a group
  • [x] update max pair on player open seq/pair

TODO

  • Other

    • [ ] add version to the main menu
    • [ ] add online user counts
    • [ ] make player names as link
    • [ ] show toast for open seq cases
    • [x] add room name to room options
    • [ ] improve lobby
    • [x] make table sit randomly
    • [x] reset on round end
    • [+] improve user lighten colors and highlight current player
    • [ ] add useful error messages to chat
    • [ ] add this http://api.adorable.io/avatars/285/[email protected]
  • Refactor

    • [x] remove player logic from okeytablecenter
  • Functionality

    • [x] dnd pieces
    • [ ] dnd for stone group
    • [ ] add game end state and countdown
    • [x] add rules for can drag/drop can open sequence/pairs
    • [ ] add game state, options
    • [ ] add disconnected case handle errors
    • [ ] add dev tool component to iterate individual component
  • CSS

    • [x] add stone
    • [x] seperate okey-stone okey-stone-draggable components

ISSUES

  • [x] Add lobby games table
  • [ ] Add tests for PLAYER_ actions
  • [ ] Fix case When opened sequence and opened pairs on the same turn
  • [ ] Fix leave taken player

Discussion

What To Have In Game Toolbar

  1. [Room Name] [Round 1/3] [Stake] [IsFast]
  2. Current open state

How to open stones and process meanwhile

  1. User opens stones
  2. User process stones to self
  3. User process stones to others
  4. Collect open
  5. Discard with open stones

State is stones and sequence.

  1. Save stones and sequence and set them new values
  2. Each stone on sequence has dirty flag set to true if has self opened groups on the same turn and processed to a group with a group owner.
  3. Each group on sequence has a group owner, except self opened groups on the same turn
  4. Restore stones and sequence on collect open
  5. Add each dirty stone to prematureProcessStones, send the stones with no group owner as open groups

How to keep track of rules

State: canWithdraw, canDiscard, canOpenPairs, canOpenSequence, canProcessStone, canCollectOpen, canLeaveTaken Actions: withdrawLeft, withdrawMiddle, discardStone, processStone, openSequence, openPairs collectOpen, leaveTaken

withdrawLeft -> canWithdraw -> isMyTurn, hasWithdrawnThisTurn withdrawMiddle -> canWithdraw -> isMyTurn, hasWithdrawnThisTurn openSequence -> canOpenSequence -> isMyTurn, canWithdraw hasOpenedPairsThisTurn, hasOpenedPairsThisRound openPairs -> canOpenPairs -> isMyTurn, canWithdraw hasAnyoneOpenedPairsThisRound`` collectOpen->canCollectOpen->isMyTurn, hasOpenedPairsThisTurn, hasOpenedSequenceThisTurn leaveTaken->canLeaveTaken->isMyTurn, hasWithdrawnLeftThisTurn discardStone->canDiscard->isMyTurn, hasWithdrawnThisTurn, hasWithdrawnLeftThisTurn, hasOpenedSequenceThisTurn, hasOpenedPairsThisTurn, discardOpenSequence->canCommitOpenSequence -> canCommitOpenSequence(sequence) discardOpenPairs -> canCommitOpenPairs -> canCommitOpenPairs(pairs) processStone (stone) (group) -> hasOpenedPairsThisTurn, hasOpenedSequenceThisTurn, canProcessStone(stone, group)

  • GameRulesStore
    • Properties
      • currentTurn
      • hasWithdrawnThisTurn
      • hasWithdrawnLeftThisTurn
      • hasOpenedPairsThisTurn
      • hasOpenedSequenceThisTurn
      • hasOpenedPairsThisRound
      • hasOpenedSequenceThisRound
    • Computed Properties
      • isMyTurn
      • canWithdraw
      • canDiscard
      • canOpenPairs
      • canOpenSequence
      • canCollectOpen
      • canLeaveTaken

Undecided Concerns

  • Can a player open sequence and open pairs on the same turn?