Skip to content

diraneyya/resume

Repository files navigation

orwa.tech

Fork's documentation

This section is a WIP.

Bun vs. Node/pnpm

I am currently using bun v1.1.33 both as the Astro Javascript runtime and as the package manager.

This choice was originally driven by the desire to deploy the site automatically using Cloudflare Pages (in a manner similar to GitHub/GitLab pages where the deployment script is triggered via a push).

In practice, it was much easier and much more practical to use the wrangler cli tool from Cloudflare to deploy the site. This had many advantages:

  1. I no longer needed to login via a browser to see if the deployment failed/succeeded.
  2. I was more in control of the build environment and did not have to bother with a myriad of issues resulting from Cloudflare's CI/CD implementation, which was just painful to be honest (sometimes the build failed for no clear reason, with files missing that are not missing from the repository)
  3. Decouple deployments from commits, which I find really convenient and more suitable for a personal site of this nature.

Currently, to deploy the site I use the following command:

bun run deploy:cloudflare

Shine effect

I am still working on perfecting the shine effect, which is currently only visible in the title, the freelance/skill badges.

The challenge there is how to apply it to a replaced-element like an "img" tag without absolute positioning, I am still trying to figure this out.

An important part of perfecting the effect is also making it dark-theme-compatible, which it currently is not.

Geist-mono font

The mono font currently used on the site is modified. The space is 33% narrower than the space found in the woff2 fonts obtained through Google Fonts.

I used FontForge (which is free and open source) to edit the font on a Mac OS X, which was straitforward.

Employment duration

One important aspect of any resume is how it displays employment/education date ranges.

I have opted for encoding the exact dates in the HTML, but showing only the year as part of the range. In addition, I used the exact dates to display a duration of the eymployment, while opting for other simplifications to make that duration easier to understand.

Original documentation

Minimalist Resume/CV Layout for Web and PDF

JSON CV schema from jsonresume.org

Based on design by Bartosz Jarocki

Astro Badge GitHub stars GitHub issues GitHub forks GitHub PRs

🛠️ Tech Stack

  • Astro - The modern web framework
  • Typescript - Type syntax for JavaScript
  • Ninja Keys - Pure JavaScript keyboard shortcut dropdown

🚀 Getting Started

1. Use this repo as an Astro project template

  • I use pnpm as package manager
# Enable pnpm on MacOS, WSL & Linux:
corepack enable
corepack prepare pnpm@latest --activate

# Initialize project
pnpm create astro@latest -- --template midudev/minimalist-portfolio-json

2. Add your content:

Edit the cv.json file to create your printable Portfolio/CV

3. Start dev server:

# See the result
pnpm dev
  1. Open http://localhost:4321 in your browser to view 🚀

🧞 Commands

Command Action
⚙️ dev or start Starts local dev server at localhost:4321
⚙️ build Builds production bundle to ./dist/
⚙️ preview Local preview of production build

🔑 License

MIT - Created by midudev.

Releases

No releases published

Packages

No packages published

Contributors 23

Languages