Welcome to the Cairo-Auth project! Before diving deep into the code and execution, it's pivotal to have the right environment and prerequisites in place. This comprehensive guide is designed to facilitate a smooth setup and execution process, ensuring you face minimal roadblocks.
For a broader overview of the Cairo language, refer to the official documentation: CairoZero Documentation.
- It's strongly recommended to utilize
pyenv
for managing multiple Python versions. When usingpyenv
, the Python version dictated by the.python-version
file will be automatically selected. - If you choose not to use
pyenv
, ensure that your system hasPython 3.9.17
installed.
python -m venv .venv
For Unix or MacOS systems:
source .venv/bin/activate
For Windows systems:
.venv\Scripts\activate
pip install -r requirements.txt
./scripts/1-compile.sh
./scripts/2-run.sh
./scripts/3-prove.sh
./scripts/4-verify.sh
Ensure that the Minikube DNS environment is set up on your machine to expose ingress hostnames. For detailed steps, consult the official documentation: Minikube Ingress DNS Guide.
Update the systemd-resolved
configuration to point to 127.0.0.1
as your primary DNS server. This can be done by editing the resolved.conf
file.
DNS=127.0.0.1
minikube start --addons ingress,ingress-dns
kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.12.4/cert-manager.yaml
skaffold run
Launch your preferred browser and navigate to the domain specified in the ingress. An example could be:
https://cairo.test/