commit 98cc2d19e52447f692ae73df069f50402599f73c Author: Muhammad Nauman Raza Date: Fri Jun 21 12:50:12 2024 +0100 backup: 2024-06-21 12:50 diff --git a/alta-typst.typ b/alta-typst.typ new file mode 100644 index 0000000..de55a79 --- /dev/null +++ b/alta-typst.typ @@ -0,0 +1,132 @@ +#let primary_colour = rgb("#ea2e2e") // vivid purple +#let link_colour = rgb("#78b9c4") // blue + +#let icon(name, shift: 1.5pt) = { + box( + baseline: shift, + height: 10pt, + image("icons/" + name + ".svg") + ) + h(3pt) +} + +#let findMe(services) = { + set text(8pt) + let icon = icon.with(shift: 2.5pt) + + services.map(service => { + icon(service.name) + + if "display" in service.keys() { + link(service.link)[#{service.display}] + } else { + link(service.link) + } + }).join(h(10pt)) + [ + + ] +} + +#let term(period, location) = { + text(9pt)[#icon("calendar") #period #h(1fr) #icon("location") #location] +} + +#let birth(date, age) = { + text(size: 9pt, weight: "bold")[#icon("calendar") #date #h(1fr) #age] +} + +#let date(period) = { + text(9pt)[#icon("calendar") #period] +} + +#let max_rating = 5 +#let skill(name, rating) = { + let done = false + let i = 1 + + name + + h(1fr) + + while (not done){ + let colour = rgb("#c0c0c0") // grey + + if (i <= rating){ + colour = primary_colour + } + + box(circle( + radius: 4pt, + fill: colour + )) + + if (max_rating == i){ + done = true + } else { + // no spacing on last + h(2pt) + } + + i += 1 + } + + [\ ] +} + +#let styled-link(dest, content) = emph(text( + fill: link_colour, + link(dest, content) + )) + +#let alta( + name: "", + links: (), + tagline: [], + first, + second, +) = { + set document( + title: name + "'s CV", + author: name, + ) + set text(11pt) + set page( + margin: (x: 40pt, y: 40pt), + ) + + show heading.where( + level: 2 + ): it => text( + fill: primary_colour, + [ + #{it.body} + #v(-7pt) + #line(length: 100%, stroke: 1pt + primary_colour) + ] + ) + + show heading.where( + level: 3 + ): it => text(it.body) + + show heading.where( + level: 4 + ): it => text( + fill: primary_colour, + it.body + ) + + [= #name] + + findMe(links) + + tagline + + grid( + columns: (1.1fr, 2fr), + gutter: 15pt, + first, + second, + ) +} diff --git a/cv.pdf b/cv.pdf new file mode 100644 index 0000000..bbb16cc Binary files /dev/null and b/cv.pdf differ diff --git a/cv.typ b/cv.typ new file mode 100644 index 0000000..ff27adc --- /dev/null +++ b/cv.typ @@ -0,0 +1,93 @@ +#import "alta-typst.typ": alta, term, skill, styled-link, date, birth + +#alta( + name: "Muhammad Nauman Raza", + links: ( + (name: "email", link: "mailto:razadev@proton.me"), + (name: "website", link: "https://devraza.giize.com/", display: "devraza.giize.com"), + (name: "github", link: "https://github.com/devraza", display: "@devraza"), + (name: "forgejo", link: "https://git.devraza.giize.com/devraza", display: "git.devraza.giize.com"), + ), + tagline: [Software Engineer & System Administrator.], + [ + == Profile + #set par(justify: true) + + I'm a software engineer with 7 years of experience developing programs serving a variety of functons and in several languages, recently focusing on Python and Rust. I have experience building command-line, graphical and web applications. + + #birth[11 Aug 2008][15 years old] + + == Education + + === Secondary \ + _King Edward VI Aston Grammar School_\ + #term[Sep 2019 --- June 2024][Birmingham, UK] + + == Certificates + + === Microsoft Technology Associate \ + _Software Development Fundamentals_\ + #date[Apr 2017] + + == Interests + + - Exercise + - Managing my home server + - Cybersecurity + + == Skills + + #skill("Python", 5) + #skill("Linux", 5) + #skill("Rust", 4) + #skill("Go", 3) + #skill("Git", 3) + #skill("Nix", 2) + ], + [ + == Projects + + ==== #link("https://git.devraza.giize.com/devraza/webchain")[Webchain] + + #date[June 2024] + + A minimalist web app for managing internet bookmarks, made using the Rocket Rust framework. Utilises an SQLite database and intends to be a very fast way of archiving links. A work in progress. + + ==== #link("https://git.devraza.giize.com/devraza/bunbun")[Bunbun] + + #date[Mar 2024] + + A simple and adorable system information utility made for the command-line and written in Rust. + + ==== #link("https://git.devraza.giize.com/devraza/vaporise")[Vaporise] + + #date[Mar 2024] + + Alternative to the `rm` command-line utility from the GNU coreutils, featuring enhanced functionality and a prettier interface. + + ==== #link("https://git.devraza.giize.com/devraza/rustboyadvance-ng")[rustboyadvance-ng] + + #date[Mar 2024] + + A Nintendo™ Game Boy Advance emulator (forked from `github.com/michelhe/rustboyadvance-ng`) with an improved user experience and a cleaner, simpler codebase. + + ==== #link("https://git.devraza.giize.com/devraza/ambition")[Ambition] + + #date[Jul 2023] + + A fast-paced 2D MMORPG written in Rust using the Bevy game engine, played from a top-down perspective and mixing vector art and pixel art. A work in progress. + + ==== #link("https://git.devraza.giize.com/devraza/dianciemacs")[DianciEmacs] + + #date[Nov 2022] + + Emacs configuration framework providing a solid and beautiful layer for users to build their own configurations on top of. + + + ==== #link("https://git.devraza.giize.com/devraza/catchtwo")[Catchtwo] + + #date[Dec 2021] + + A Discord userbot which interfaces with the Pokétwo Discord bot to automatically progress the user's account. + ], +) diff --git a/icons/calendar.svg b/icons/calendar.svg new file mode 100644 index 0000000..9be52a8 --- /dev/null +++ b/icons/calendar.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/email.svg b/icons/email.svg new file mode 100644 index 0000000..742f451 --- /dev/null +++ b/icons/email.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/forgejo.svg b/icons/forgejo.svg new file mode 100644 index 0000000..5c6119a --- /dev/null +++ b/icons/forgejo.svg @@ -0,0 +1 @@ +Forgejo \ No newline at end of file diff --git a/icons/github.svg b/icons/github.svg new file mode 100644 index 0000000..ed2cfac --- /dev/null +++ b/icons/github.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/location.svg b/icons/location.svg new file mode 100644 index 0000000..c02689b --- /dev/null +++ b/icons/location.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/website.svg b/icons/website.svg new file mode 100644 index 0000000..41d635c --- /dev/null +++ b/icons/website.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/justfile b/justfile new file mode 100644 index 0000000..ff3d91c --- /dev/null +++ b/justfile @@ -0,0 +1,8 @@ +#!/usr/bin/env just --justfile + +date := "$(date +'%Y-%m-%d %H:%M')" + +# Backup documents +backup: + git add -A + git commit -m "backup: {{date}}"