Skip to main content

Leesah er et Pythonbibliotek for å spille det hendelsedrevet applikasjonsutviklingspillet Leesah Game

Project description

LEESAH Python

Leesah-game er et hendelsedrevet applikasjonsutviklingspill som utfordrer spillerne til å bygge en hendelsedrevet applikasjon. Applikasjonen håndterer forskjellige typer oppgaver som den mottar som hendelser på en Kafka-basert hendelsestrøm. Oppgavene varierer fra veldig enkle til mer komplekse.

Python-bibliotek for å spille LEESAH!

Kom i gang

Det finnes to versjoner av Leesah-game! En hvor man lager en applikasjon som kjører på Nais, og en hvor man spiller lokalt direkte fra terminalen. Dette biblioteket kan brukes i begge versjoner, men denne dokumentasjonen dekker kun lokal spilling.

Sett opp lokalt miljø

Vi anbefaler at du bruker et virtuelt miljø for å kjøre koden din, som for eksempel Venv.

Start med å opprette en katalog leesah-game.

For macOS/Linux

cd leesah-game
python3 -m venv venv
source ./venv/bin/activate

For Windows

cd leesah-game
python3 -m venv venv
.\venv\Scripts\activate

Installer biblioteket

Det er kun en avhengighet du trenger, og det er biblioteket leesah-game.

python3 -m pip install leesah-game

Hent Kafkasertifikat

Sertifikater for å koble seg på Kafka ligger tilgjengelig på leesah-certs.ekstern.dev.nav.no, passord får du utdelt.

Du kan også bruke kommandoen nedenfor:

wget --user leesah-game --password <password> -O leesah-certs.zip https://leesah-certs.ekstern.dev.nav.no && unzip leesah-certs.zip 

Du vil nå ende opp med filen leesah-certs.yaml i leesah-game-katalogen du lagde tidligere.

Eksempelkode

For å gjøre det enklere å komme i gang har vi et fungerende eksempel som svarer på spørsmålet om lagregistrering med et navn og en farge (hexkode). Opprett filen main.py og lim inn koden nedenfor.

"""Spill Leesah-game

1. Hent ned sertifikater, og sikre deg at de ligger i filen leesah-certs.yaml
2. Sett 'LAGNAVN' til ditt valgte lagnavn
3. Sett 'HEXKODE' til din valgte farge
"""
import leesah

LAGNAVN = "BYTT MEG"
HEXKODE = "BYTT MEG"


class Rapid(leesah.QuizRapid):
    """Klassen som svarer på spørsmålene."""

    def kjør(self):
        """Start quizen!

        Vi anbefaler at du bruker funksjoner til å svare på spørsmålene.
        """
        while True:
            melding = self.hent_spørsmål()
            if melding.kategorinavn == "team-registration":
                self.behandle_lagregistrering(melding.spørsmål)

    def behandle_lagregistrering(self, spørsmål):
        self.publiser_svar(HEXKODE)


if __name__ == "__main__":
    rapid = Rapid(LAGNAVN, ignorerte_kategorier=[
        # "team-registration",
    ])

    try:
        rapid.kjør()
    except (KeyboardInterrupt, SystemExit):
        rapid.avslutt()

Kjør koden

Kjør koden din med:

python3 main.py

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

leesah_game-1.1.0.tar.gz (5.3 kB view details)

Uploaded Source

Built Distribution

leesah_game-1.1.0-py3-none-any.whl (6.4 kB view details)

Uploaded Python 3

File details

Details for the file leesah_game-1.1.0.tar.gz.

File metadata

  • Download URL: leesah_game-1.1.0.tar.gz
  • Upload date:
  • Size: 5.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for leesah_game-1.1.0.tar.gz
Algorithm Hash digest
SHA256 10f6f0411b60d07e2e39ffa7269d33b979875115432b2c3e83d06dc7371d4550
MD5 d47bba94191e83f30cc46b7f55e00224
BLAKE2b-256 6ecc4a0da5a2d41020e8c6ec815c5d5f58333131834b01dbcb881cdabae7323e

See more details on using hashes here.

Provenance

File details

Details for the file leesah_game-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: leesah_game-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for leesah_game-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 79e9158c3dea3fc17a687fac50b4b38fa7c21807a9f9bbc9ff9f8f71912531a0
MD5 580d03f49a66034c25903d1b17c5b0d0
BLAKE2b-256 94d186a995271653c4bc402579f29fe7f54661593fdb2f1c9cdd3010c2f916f7

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page