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.kategori == "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.2.0.tar.gz (5.3 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: leesah_game-1.2.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.7

File hashes

Hashes for leesah_game-1.2.0.tar.gz
Algorithm Hash digest
SHA256 6da5410907ea74cf44e1afbac2bb6467700850e44313b74a861343a752b027b7
MD5 aaf1d76f4f0f481fce1655da65d2c618
BLAKE2b-256 650cf86ccbfb965016d16a25940d1c0e4b7828aa6829bf45a50af28fa74644e3

See more details on using hashes here.

Provenance

File details

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

File metadata

  • Download URL: leesah_game-1.2.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.7

File hashes

Hashes for leesah_game-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f3288a70b9b5d7ff5875be1cb6a7690680e87b8afb3c2fb7c843734c6157f546
MD5 5505fa7bced38d8e33f1b0f9392bbb29
BLAKE2b-256 caa02a860eb7f09f67d992e0a53b6eb37f33d58d66994669fa38ef4a6f2ddbcf

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