UK visa invitation letter generator 
Writes a UK Standard Visitor visa invitation letter for you.
Requirements
- Python 3 with pipx
- LaTeX with OpenType font support, e.g. XeLaTeX, and latexmk
Usage
- Create a
data.ymlconfig file. Generate a starting template with:
pipx run uk-invitation-letter gen > data.yml
Example:
inviter:
name: Kayleigh H Welch
address:
- 75 Hertingfordbury Road
- Newton NG13 8QY
phone: "07758888305"
email: noreply@temporary-mail.net
residence: share code # optional: `permit` / `share code` / `passport` / custom
proof_of_address: council tax bill # optional
employer:
name: Jstory UK Ltd
address:
- 89 Well Lane
- Patterdale CA11 0LQ
embassy:
name: British Consulate General New York
address:
- 885 2nd Ave
- New York
- NY 10017
- United States
invitee:
name: # <first name> [<other names>]+ <last name>, use `~` for a non-breaking space
- Joseph Brodsky
- Maria Sozzani
pronoun: they/them/their # optional, they/them/their by default
relationship: friends
trip:
arrival_date: 2026-01-01
departure_date: 2026-01-31
reason: a short trip # optional
return_reason: to circumnavigate the globe # optional
return_country: the US # optional
financial_support: false
docs: # optional extra documents
- table tennis match result sheet
- Render the letter:
pipx run uk-invitation-letter render --data data.yml --output invitation.pdf
The output will be saved to invitation.pdf. Pass --engine lualatex if you prefer LuaLaTeX (default is XeLaTeX).
For repeated use, install it once with pipx install uk-invitation-letter and then invoke uk-invitation-letter render ... directly.
Release files for uk-invitation-letter 1.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| uk_invitation_letter-1.0.1.tar.gz | 9.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| uk_invitation_letter-1.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 18.3 kB
Release files / uk_invitation_letter-1.0.1.tar.gz
| Download URL | uk_invitation_letter-1.0.1.tar.gz |
|---|---|
| Size | 9.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2e2b3b9a34a36ef2859acf03095169282cb4615c5992166fbec7bc7d570d0eee
|
|
BLAKE2b-256 checksum How to use checksums |
916c308abfa6104d27cc89db684cb2066eb5093988f66ec4c77e99e746c5dbba
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.29 {"installer":{"name":"uv","version":"0.9.29","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / uk_invitation_letter-1.0.1-py3-none-any.whl
| Download URL | uk_invitation_letter-1.0.1-py3-none-any.whl |
|---|---|
| Size | 9.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d22f571a0893c11e8b5add75224244985bbe96ea74aea39bbb4f9c04c7d82f3b
|
|
BLAKE2b-256 checksum How to use checksums |
cde8f9739586910f16f4218daa69bfc56fd63130fd3f6b3c3188019639c22b1c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.29 {"installer":{"name":"uv","version":"0.9.29","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|