Skip to content

Project Build and Release

Semantic Versioning

Semantic versioning is a way to version software in a way that is easy to understand and use. It is a set of rules that dictate how to increment the version number of a software package. Semantic versioning is a way to communicate changes in a software package to users and developers. Example:

Learn more about semantic versioning at


Running the API in a docker container is the easiest way to get started. To build the docker image, run the following command:

Building the image

FROM python:3.11

WORKDIR /unipoll-api

COPY ./requirements.txt /unipoll-api/requirements.txt

RUN pip install --no-cache-dir --upgrade -r /unipoll-api/requirements.txt

COPY ./src /unipoll-api/src

CMD ["uvicorn", "", "--host", "", "--port", "80"]

Running the image

docker run unipoll/api -e MONGODB_URI=<your connection string>

Docker Compose


Building the Distribution

To build the python package, run the following command:

python build .