Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tyom/tyom.semonov.com
My CV
https://github.com/tyom/tyom.semonov.com
gh-pages github-actions javascript storybook sveltekit
Last synced: 2 days ago
JSON representation
My CV
- Host: GitHub
- URL: https://github.com/tyom/tyom.semonov.com
- Owner: tyom
- License: mit
- Created: 2017-11-16T22:43:19.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2024-08-09T10:06:38.000Z (3 months ago)
- Last Synced: 2024-08-09T11:31:54.163Z (3 months ago)
- Topics: gh-pages, github-actions, javascript, storybook, sveltekit
- Language: Svelte
- Homepage: https://tyom.semonov.com
- Size: 28.9 MB
- Stars: 1
- Watchers: 2
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Tyom Semonov’s CV
The repo contains the data of the CV in YAML format with Markdown flavours. The
data is used to generate a static website, along with the print-friendly PDF
version of the CV.The project is built with [Svelte](https://svelte.dev) and [Svelte Kit](https://kit.svelte.dev/).
It uses [Playwright](https://playwright.dev/) to generate PDF from site and deploys to
GH Pages with [gh-pages](https://github.com/tschaub/gh-pages) package.The site is automatically built and deployed with GitHub workflow on commit to `master` branch.
[![GH Workflow Status](https://github.com/tyom/tyom.semonov.com/workflows/Deployer/badge.svg)](https://github.com/tyom/tyom.semonov.com/actions?query=workflow%3ADeployer)
## Result
- Published site: https://tyom.github.io/tyom.semonov.com
- Published Storybook: https://tyom.github.io/tyom.semonov.com/storybook## How it works
The data is stored in separate YAML files in [data](/data) directory. This data is transformed to JSON on the server
and is [loaded](https://kit.svelte.dev/docs#loading) with Svelte Kit. The UI is composed of various components which take
this data and break it up into individual reusable pieces. Some of these can be seen in Storybook [stories](/stories).The result is built and uploaded to GitHub Pages.
During the build stage the PDF file is generated using Playwright. This PDF is built from the print preview
version of the site and is located in static directory, available for download.## Developing
To start development server run:
pnpm dev
To generate static site run:
pnpm build
To create PDF run:
pnpm create-pdf
To serve the static build run:
pnpm start
To start Storybook run:
pnpm storybook
## Deployment
The deployment consists of the CV app and Storybook stories under `stories/` directory bundled as a static site.
To prepare the distribution (build and collate the files) run:
pnpm predeploy
The static site is deployed to GH Pages. To deploy manually (this also runs predeploy script) run:
pnpm deploy
## Environment variables
| Variable | Description |
| :----------------------------- | :------------------------------------- |
| GIT_USER_EMAIL | Git user email for pushing to GH pages |
| GIT_USER_NAME | Git user name for pushing to GH pages |
| PUBLIC_POSTHOG_PROJECT_API_KEY | Project ID key for PostHog |