GithubHelp home page GithubHelp logo

suuudokuuu's Introduction

Stand With Ukraine

Suuudokuuu

Sudoku game to help Ukraine win the war against Russia.

Play now! Do not hesitate

Download on the App Store

TODO

Features

  • share puzzle/challenge with friends:
    • challenge mode - see target score and countdown timer based on shared data
  • add mistakes purchasing through in-app purchases
    • donate to ZSU, add BE logic for this
    • add donation branding and description on main screen
  • add gamification and percentage of completeness
  • add game pausing? timer should not run when app is in background
  • disable screenshots?
  • add unique check for generated field, sometimes puzzle can have multiple solutions
  • best stats is confusing and not clear, especially time:
    • add best time/score for each difficulty, when user selects difficulty show separate screen
  • score row completing row/col/group

Frontend

  • improve logic code coverage
  • add donation CTA on main screen and ukraine support
  • add animations
    • add number flying to its stop?
    • add more fun to winner page(ZSU, Ukraine, donation CTA)
    • add more fun to looser page(ZSU, Ukraine, donation CTA)
    • animation when finishing full row/col/group(score multiplies)
  • add successful run count and longest run count history on main screen?
  • add game logic:
    • timer
    • score and its calculation based on errors, timer, row/col/group finish
  • optimize rendering(why does it lag? =)

Web

  • fix mobile version padding and field size
  • add pages titles
  • fix font issue

Backend

  • setup backend, app should still support full offline mode support
  • add user creation and logic
  • store user solved puzzle, add time, score, rank for same puzzle
  • create leaderboards

CI/CD

  • create release notes and migrate to semantic-release
  • setup maestro e2e tests on CI pull request
  • android build for main branch should be published to play console
  • ios/android builds should be published as artifacts so team members can test them
  • setup conventional commits, automatic version management and changelog generation(ios, android also)
  • setup pull-request pipeline for linting, tests, etc
  • ios build for main branch should be published to testflight

E2E

  • Create separate flows for described items
  • Pass selectors from typescript selector files
  • Cannot select value if not empty cell selected
  • Deselect cell if value is completed
  • Leave cell selection if value is not completed
  • Animations:
    • Select cell animation
    • Complete row animation
    • Complete col animation
    • Complete group animation
    • Complete value animation
    • Win animation
  • Win scenario:
    • Win score and time
  • Loose scenario:
    • Win score and time
  • Pause scenario:
    • Return to game after pause
    • No pause on other screens(win, loose, home)
    • Reset app after pause
  • Score calculation
  • Best game on home page

Overall

  • add sentry for error reporting
  • migrate to monorepo
  • add e2e tests(maestro or wdio?)
  • add turbo
  • fix metro require cycles (store related as usual) =)
  • add unit tests for game logic, add code coverage(codecov?)
  • add ts-prune
  • add jscpd
  • add commit-lint
  • add husky
  • fix ts error on app.json import
  • refactor folder structure to modules(game, app-root, history)
  • setup eas
  • setup iphone deployment
  • add github actions

suuudokuuu's People

Contributors

github-actions[bot] avatar vitalyiegorov avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

macseem

suuudokuuu's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.