Giter Site home page Giter Site logo

pokemath's Issues

fix shiny bug

Nå kan man, ved å endre URLen, sørge for at man alltid får shiny pokemon.
Enkelt å fikse, må bare ordnes :)

Vanskelighetsgrader og pokemon

Sønnen min og klassen hans er ganske gira på det her, men noe som mange foreldre på trinnet ikke liker er at barna bare tar enkle regnestykker for å få så mange pokemon som mulig. Det er et par forskjellige muligheter.

  1. Kod inn heuristiske vanskelighetsgrader på regnestykkene. Vanskeligere regnestykker gir større sannsynlighet for mer eksotiske pokemon.

  2. Introduser en dynamisk vanskelighetsgrad. Det vil si at når deltakerne blir bedre så får de også vanskeligere regnestykker. Det er et par forskjellige måter å løse dette på. En mulighet er en adaptive staircase prosedyre som er veldig vanlig i psykofysikk. En annen metode er å bruke Elo rating slik som gjøres i sjakk (mange sjakksider implementerer dette for å gi riktig vanskelighetsgrad av sjakkoppgaver til deltakere). Fordelen med et slikt opplegg er at du kan gi økt sannsynlighet for mer eksotiske pokemon når deltakerne løser vanskelige oppgaver relativt til egen evne.

Vet ikke om du har tenkt på noen av disse mulighetene før. Si ifra om det er aktuelt så bidrar jeg gjerne. Har mye erfaring med programmering.

Refactor to SvelteKit for maintainability

Takk for arbeidet du legger inn i dette prosjektet 👏

Jeg kom over det da nevøene mine spiller det kjempemasse for tiden, og da jeg så det var open-source ble jeg nysgjerrig på å lese kildekoden.

Først og framst er jeg veldig imponert over at du har oppnått så mange features på egen hånd, og jeg må si at det som følger er kun ment for å gjøre ting enklere for deg over tid.

I nåværende form minner prosjektet meg veldig om min egen start på å bygge nettsider, og jeg kan ane meg at det begynner å bli litt uoversiktlig og vanskelig å gjøre endringer nå som det har fått litt størrelse. Det er typisk når man kun bruker vanlig html/css/js for å bygge en dynamisk nettside/web-app da du manuelt må ta deg av alt av endringer i DOM-en til nettleseren. Etterhvert som kompleksiteten øker blir dette naturlig vanskeligere og vanskeligere.

For å begrense kompleksiteten er det mange teknikker man kan ta i bruk, i dette tilfellet er templating, moduler, og reaktivitet verdifulle tillegg:

  • Templating for å unngå å duplisere html mellom alle sidene dine eg. top navigasjonen eller cookie modalen
  • Templating med reaktiv oppdatering for å unngå å skrive html i javascript
    • for eksempel det du gjør mye av i global.js: document.querySelector(...), element.classList.add(..) element.contains() document.createElement(), etc.
  • moduler for å unngå globalt scope, men samtidig kunne dele kode
  • moduler for å legge relatert js, css, og html sammen så endringer på samme ting skjer i nærheten av hverandre.

Basert på det jeg ser tror jeg rammeverket som blir nærmest det du allerede kan er "SvelteKit". Det er et rammeverk som ligner veldig på å skrive html. En av de nyttigste tingene det introduserer er "reaktiv templating", som betyr at DOMen oppdaterer seg selv om du oppdaterer en javascript verdi (for eksempel money i topp navigasjonen). Dette er ikke magisk, men skjer fordi svelte kode kompileres til noe annet før den leveres til nettleseren så det tar seg av ting som element.innerText = money for deg.
Test Svelte her
Les mer om SvelteKit her

For å vise og la deg teste det ut forskjellen har jeg gjort et raskt forsøk på å skrive om deler av appen i SvelteKit, du kan lese og sjekke ut koden her: https://github.com/sseppola/PokeMath/tree/feature/sveltekit det er instruksjoner i readme.md for å komme i gang.

Hovedsaklig er det calendar.html jeg har skrevet om, men den drar med seg mye andre ting som cookies, navigasjon, local storage, shop, player, toast, analytics, og layout. Så dette er ganske representativt for hvordan resten av appen kan se ut, se spesielt på:

Om dette er interessant kan jeg hjelpe deg ta dette videre, spesielt i form av veiledning og kode-reviews for å sørge for at du beveger deg i riktig rettning og unngår typiske feil. Jeg mottar notifikasjoner om du svarer meg her, så bare @ meg :)

Om det er uinteressant er det bare å lukke issuen så dropper jeg det, uansett er jeg en supporter av det du gjør her 👍

Dex visit metrics feiler

Først takk for en flott nettside!
Alle i 1. klasse på skolen til sønnen min får lov til å bruke PokéMath som belønning, når de er ferdige med oppgavene.
Virkelig bidratt til mye god trening av mattekunnskapene 😄

Ser at Dex visningen bruker lang tid på å laste. Kan se ut som det er metrics innsendingen til https://api.countapi.xyz/hit/pokemath.online/dexVisited?callback=cb som feiler.
dex_visit

Kanskje endre på den, eller endre slik at resten av javascript koden ikke må vente på at denne fullfører?
Jeg kan ev se om jeg kan få til en pull-request som fikser det.

Fortsett det gode arbeidet! 😎

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.