Compare commits

...

16 Commits

Author SHA1 Message Date
8a0b002a03 Tracking added
All checks were successful
Build and Deploy Zola Website / build_and_deploy (push) Successful in 12s
2024-11-16 20:28:38 +01:00
5623e8ab00 Zola workflow updated
All checks were successful
Build and Deploy Zola Website / build_and_deploy (push) Successful in 16s
2024-10-14 17:03:56 +02:00
0e034f3382 Merge branch 'fr/analytics' 2024-09-11 20:07:51 +02:00
29ccd54013 Added: analytics script
All checks were successful
Build Zola Website / build (pull_request) Successful in 20s
2024-09-11 19:55:36 +02:00
cc4a827331 Fix: source link - target blank
All checks were successful
Build and Deploy Zola Website / build_and_deploy (push) Successful in 27s
2024-05-22 19:21:40 +02:00
e8ce3f9b75 Fix padding
All checks were successful
Build and Deploy Zola Website / build_and_deploy (push) Successful in 17s
2024-03-25 17:17:18 +01:00
b022a4ae37 Changes for master
All checks were successful
Build and Deploy Zola Website / build_and_deploy (push) Successful in 16s
2024-03-24 11:57:34 +01:00
736f17c442 Email address encoded
All checks were successful
Build and Deploy Zola Website / build_and_deploy (push) Successful in 20s
Build Zola Website / build (pull_request) Successful in 15s
2024-03-23 17:11:13 +01:00
90ee057637 Disable minify html
All checks were successful
Build and Deploy Zola Website / build_and_deploy (push) Successful in 20s
Build Zola Website / build (pull_request) Successful in 16s
2024-02-23 12:20:47 +01:00
77bc97087b Fix: url changed to dev from prod, readme updated
All checks were successful
Build and Deploy Zola Website / build_and_deploy (push) Successful in 17s
Build Zola Website / build (pull_request) Successful in 15s
2024-02-23 03:14:06 +01:00
9c4bfc84ff Texts edited, projects redesigned, posts temporarily removed, pkmples project added and more
All checks were successful
Build and Deploy Zola Website / build_and_deploy (push) Successful in 19s
Build Zola Website / build (pull_request) Successful in 15s
2024-02-23 03:06:08 +01:00
2e25a00637 Fixes: #2 changed gpg key
All checks were successful
Build and Deploy Zola Website / build_and_deploy (push) Successful in 18s
Build Zola Website / build (pull_request) Successful in 15s
2024-02-08 09:36:14 +01:00
63d4122322 Added: posts page
All checks were successful
Build and Deploy Zola Website / build_and_deploy (push) Successful in 17s
Build Zola Website / build (pull_request) Successful in 16s
2024-02-08 09:13:08 +01:00
5090214128 Fixes: #5 body padding 2024-02-08 09:12:18 +01:00
1e9475e806 Fixed: console on mobile
All checks were successful
Build and Deploy Zola Website / build_and_deploy (push) Successful in 28s
2023-12-18 19:03:05 +01:00
47f26c96f6 console (#1)
All checks were successful
Build and Deploy Zola Website / build_and_deploy (push) Successful in 18s
Reviewed-on: #1
2023-12-18 03:33:05 +01:00
21 changed files with 175 additions and 242 deletions

View File

@ -6,22 +6,28 @@ on:
- master - master
- dev - dev
env:
ZOLA_VERSION: "0.19.2"
HOST: ${{ secrets.SERVER_IP }}
SSH_USERNAME: ${{ secrets.USERNAME }}
SSH_PRIVATE_KEY: ${{ secrets.DEPLOY_KEY }}
jobs: jobs:
build_and_deploy: build_and_deploy:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout Repository - name: Checkout Repository
uses: actions/checkout@v2 uses: actions/checkout@v4
- name: Set up Zola - name: Set up Zola
uses: taiki-e/install-action@v2 run: |
with: wget https://github.com/getzola/zola/releases/download/v${ZOLA_VERSION}/zola-v${ZOLA_VERSION}-x86_64-unknown-linux-gnu.tar.gz
tool: zola@0.17.2 tar -xvzf *.tar.gz
- name: Build Zola Website - name: Build Zola Website
run: | run: |
zola build ./zola build
- name: Set Destination Folder if MASTER - name: Set Destination Folder if MASTER
if: ${{ github.ref == 'refs/heads/master' }} if: ${{ github.ref == 'refs/heads/master' }}
@ -31,14 +37,12 @@ jobs:
if: ${{ github.ref == 'refs/heads/dev' }} if: ${{ github.ref == 'refs/heads/dev' }}
run: echo "DEST_FOLDER=/srv/www/cz/filiprojek/dev" >> $GITHUB_ENV run: echo "DEST_FOLDER=/srv/www/cz/filiprojek/dev" >> $GITHUB_ENV
- name: Deploy to server - name: Deploy
uses: AEnterprise/rsync-deploy@v1.0.2 run: |
env: apt update -y && apt-get install -y --no-install-recommends rsync
DEPLOY_KEY: ${{ secrets.DEPLOY_KEY }} eval "$(ssh-agent -s)"
ARGS: "-e -c -r --delete" ssh-add - <<< "${SSH_PRIVATE_KEY}"
SERVER_PORT: 22 mkdir -p ~/.ssh/
FOLDER: "./public/" ssh-keyscan -H ${HOST} >> ~/.ssh/known_hosts
SERVER_IP: ${{ secrets.SERVER_IP }} rsync -r --delete-after public/* "${SSH_USERNAME}@${HOST}:${{ env.DEST_FOLDER }}"
USERNAME: ${{ secrets.USERNAME }}
SERVER_DESTINATION: ${{ env.DEST_FOLDER }}

View File

@ -8,15 +8,9 @@
## To Do ## To Do
- [ ] Docker? - [ ] Docker?
- [ ] kopirovani PGP na click opravit
- [ ] projekty page css
- [ ] contact page odesilani mailu
- [ ] contact page pridat odkazy na dalsi soc site (github atd)
- [ ] fixnout resize hr v projektu
- [ ] redesign contact - [ ] redesign contact
- [ ] redesign about - [ ] redesign about
- [ ] check about text content - [ ] check about text content
- [ ] add some more projects
- [ ] responsibility - [ ] responsibility
# Projects # Projects

View File

@ -3,11 +3,12 @@ base_url = "https://www.filiprojek.cz"
title = "Filip Rojek" title = "Filip Rojek"
compile_sass = true compile_sass = true
minify_html = true minify_html = false
build_search_index = false build_search_index = false
[markdown] [markdown]
highlight_code = true highlight_code = true
external_links_target_blank = true
external_links_no_follow = true external_links_no_follow = true
external_links_no_referrer = true external_links_no_referrer = true
smart_punctuation = true smart_punctuation = true
@ -16,7 +17,8 @@ smart_punctuation = true
git = "https://git.filiprojek.cz/fr/website" git = "https://git.filiprojek.cz/fr/website"
nav_items = [ nav_items = [
{name="Home", path="/"}, {name="Home", path="/"},
{name="About", path="/about"}, #{name="About", path="/about"},
{name="Projects", path="/projects/"}, #{name="Projects", path="/projects/"},
#{name="Posts", path="/posts"}
] ]

View File

@ -1,10 +0,0 @@
+++
title = "About"
template = "about.html"
+++
I am 20 years old and I study in Prague. My journey into the world of coding started at IT high school. Now I am studying IT at Charles University.
My coding adventure took me from student collaboration on projects like Fofrweb, where we created applications like FofrMess or FofrTasks - realtime web applications built using `Node.js` and `Vue.js`.
I now work as a Linux engineer at IS Media. Most of my work involves Debian-based systems - desktops and servers. I have a lot of experience with other distributions as well. For example, I use `Void Linux` or `Gentoo` on my personal workstations. At Fofrweb we used `RHEL` based distributions like `Cent OS` or later `Rocky Linux`.

View File

@ -1,7 +0,0 @@
+++
title = "Projects"
template = "project_list.html"
page_template = "project.html"
sort_by = "date"
+++

View File

@ -1,18 +0,0 @@
+++
title = "Debrepo"
date = 2023-05-01
description = "A Debian repository management tool"
[extra]
state = "stable"
+++
# Debrepo
- A Debian repository management tool.
## About
- `Debrepo` is a software tool designed for creating and managing Debian repositories for `*.deb` packages, providing a lightweight and user-friendly alternative to more complex tools like `reprepo` or `aptly`. While these alternatives may offer more advanced features, Debrepo focuses on providing essential functionality and ease of use for repository management, allowing users to easily add, remove, and update packages within their repositories. With Debrepo, users can efficiently manage their Debian repositories without the unnecessary complexity of more advanced tools.
## Links
- [Git](https://git.filiprojek.cz/fr/debrepo)

View File

@ -1,16 +0,0 @@
+++
title = "Dotfiles"
date = 2019-01-01
description = "Collection of my configuration dotfiles"
[extra]
state = "active"
+++
# Dotfiles
## About
- Collection of my configuration dotfiles.
## Links
- [Git](https://git.filiprojek.cz/fr/dotfiles)

View File

@ -1,34 +0,0 @@
+++
title = "Fofrweb"
date = 2019-11-27
description = "Custom websites and student projects"
[extra]
state = "active"
+++
# About
- Lorem ipsum dolor sit amet, officia excepteur ex fugiat reprehenderit enim labore culpa sint ad nisi Lorem pariatur mollit ex esse exercitation amet. Nisi anim cupidatat excepteur officia. Reprehenderit nostrud nostrud ipsum Lorem est aliquip amet voluptate voluptate dolor minim nulla est proident. Nostrud officia pariatur ut officia. Sit irure elit esse ea nulla sunt ex occaecat reprehenderit commodo officia dolor Lorem duis laboris cupidatat officia voluptate. Culpa proident adipisicing id nulla nisi laboris ex in Lorem sunt duis officia eiusmod. Aliqua reprehenderit commodo ex non excepteur duis sunt velit enim. Voluptate laboris sint cupidatat ullamco ut ea consectetur et est culpa et culpa duis.
# Projects
## Websites
### date
### links
## FofrMess
### date
## FofrTasks
### date
## Fofrbazar
- Internetová bazarová platforma
### 04/2021
- Technologie
- PHP
- Laravel
- MySQL
- Linux
- Apache

View File

@ -1,19 +0,0 @@
+++
title = "Gitlab auto upgrade script"
date = 2023-07-17
description = "Gitlab CE auto minor upgrade script"
[extra]
state = "done"
+++
# gitlab-ce auto minor upgrade script
## About
- This lightweight Bash script automates minor upgrades via crontab, ensuring your GitLab CE stays up to date with minimal effort. Designed for efficiency, it uses `apt` to identify and implement upgrades, while logging any issues for your peace of mind.
## Get Started and Contribute
- Download the script, set up your crontab. GitLab-CE-Auto-Minor-Upgrade-Script is open source, meaning you can get involved, provide feedback, or contribute enhancements.
## Links
- [Git](https://git.filiprojek.cz/fr/gitlab-ce-auto-minor-upgrade)

View File

@ -1,15 +0,0 @@
+++
title = "Nork"
date = 2021-08-13
description = "Simple node.js tool that extends express projects"
[extra]
state = "done"
+++
# Nork
## About
- Simple node.js tool that extends express projects.
## Links
- [Git](https://github.com/filiprojek/nork)

View File

@ -1,16 +0,0 @@
+++
title = "Website"
date = 2023-08-29
description = "My personal website"
[extra]
state = "in development"
+++
# Website
## About
- This website is built using the Zola static site generator.
## Links
- [Git](https://git.filiprojek.cz/fr/website)

View File

@ -1,18 +0,0 @@
+++
title = "wpa_tui"
date = 2023-06-21
description = "WPA Supplicant Terminal User Interface"
[extra]
state = "in development"
+++
# wpa_tui
## About
- WPA Supplicant Terminal User Interface
- Collection of `dmenu` scripts for interacting with WPA Supplicant
- Terminal User Interface app for interacting with WPA Supplicant
- Main goal of this tool is comfort of sending commands to WPA-Supplicant from terminal over remembering explicit wpa commands as well as having to click in the wpa_gui (abandoned graphical interface)
## Links
- [Git](https://git.microlab.space/fr/wpa_tui)

View File

@ -1,7 +1,7 @@
.content { .content {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
margin: 2rem 8rem; margin: 2rem 20%;
} }
.content { .content {

View File

@ -4,6 +4,7 @@
.home { .home {
margin-top: 5rem; margin-top: 5rem;
font-size: 1.2rem; font-size: 1.2rem;
padding: 0 5%;
section { section {
text-align: center; text-align: center;

View File

@ -1,17 +1,23 @@
//.project-wrapper {
// justify-content: start;
// align-items: start;
//}
//
//.left-bar {
// width: 15rem;
// justify-content: start;
// align-items: start;
// border-right: thin solid var(--c-blue);
// margin-right: 2.5rem;
// padding: 0 2.5rem;
//
// h2 {
// padding-bottom: 2.5rem;
// }
//}
.project-wrapper { .project-wrapper {
justify-content: start; display: flex;
align-items: start; gap: 2.5rem;
}
.left-bar {
width: 15rem;
justify-content: start;
align-items: start;
border-right: thin solid var(--c-blue);
margin-right: 2.5rem;
padding: 0 2.5rem;
h2 {
padding-bottom: 2.5rem;
}
} }

107
static/js/console.js Normal file
View File

@ -0,0 +1,107 @@
const c = document.querySelector(".console")
const ps1 = "[fr@website ~]$ "
const motd = "Welcome to my website!<br>You can use `help` for more informations :)"
let line = "";
function exec(command) {
switch (command[0]) {
case "help":
line = "help<br>author<br>contact<br>clear<br>echo"
break;
case "author":
line = "Filip Rojek, 2023"
break
case "contact":
line = "Filip Rojek &lt<a href='mailto: &#102;&#105;&#108;&#105;&#112;&#064;&#102;&#105;&#108;&#105;&#112;&#114;&#111;&#106;&#101;&#107;&#046;&#099;&#122;'>&#102;&#105;&#108;&#105;&#112;&#064;&#102;&#105;&#108;&#105;&#112;&#114;&#111;&#106;&#101;&#107;&#046;&#099;&#122;</a>&gt<br>web: <a href='https://filiprojek.cz' target='_blank'>www.filiprojek.cz</a><br>telegram: <a href='https://t.me/filiprojek' target='_blank'>@filiprojek</a>"
break
case "clear":
write("000ctrll")
return false
case "echo":
line = ""
command.forEach((cmd, i) => {
if (i === 0) return
line += cmd + " "
});
line = line.substring(0, line.length - 1) // remove last space
break
default:
line = "frsh: " + command[0] + ": command not found"
break;
}
return line
}
function write(key, payload) {
switch(key) {
case "Enter":
command = c.lastChild.textContent.replace(ps1, "")
command = command.split(" ");
let out = exec(command)
if(out !== false) {
line = document.createElement("p")
line.innerHTML += out
line.innerHTML += "<br>"
c.appendChild(line)
line = document.createElement("p")
line.innerHTML += ps1
c.appendChild(line)
}
command = ""
break
case "000ctrll":
c.innerHTML = ""
if(payload == motd) c.innerHTML = motd
line = document.createElement("p")
line.innerHTML += ps1
c.appendChild(line)
break
case "000backspace":
if(c.lastChild.textContent.slice(0, -1) !== ps1.slice(0, -1)) {
c.lastChild.innerHTML = c.lastChild.textContent.slice(0, -1)
}
break
default:
c.lastChild.innerHTML += key
}
}
function customCtrlShortcuts(plusKey) {
document.addEventListener("keydown", e => {
if(e.ctrlKey && e.key == plusKey) {
e.preventDefault()
write("000ctrl"+plusKey)
}
})
}
// On load init the terminal
window.addEventListener("load", () => {
write("000ctrll", motd)
if (navigator.userAgent.toLowerCase().includes("mobile")) {
const mi = document.querySelector(".mobile-input")
mi.style="opacity: 0; width: 0; height: 0"
c.addEventListener("click", e => {
mi.focus()
})
}
})
// Capture the keypress
window.addEventListener("keypress", e => {
e.preventDefault()
write(e.key)
})
window.addEventListener("keydown", e => {
if(e.key == "Backspace") {
e.preventDefault()
write("000backspace")
}
})
// Register custom ctrl shortcuts
customCtrlShortcuts("l") // ctrl + l
customCtrlShortcuts("c") // ctrl + c

View File

@ -6,18 +6,6 @@
{% block content %} {% block content %}
<section class="about content"> <section class="about content">
<h2>About me</h2>
{{ page.content | safe }} {{ page.content | safe }}
</section> </section>
<section class="contact content">
<h1>Contact me</h1>
<div class="contact-list">
<p>email: <a href="mailto:hello@filiprojek.cz">hello@filiprojek.cz</a></p>
<p>telegram: <a href="https://t.me/filiprojek">@filiprojek</a></p>
<p>git: <a href="https://git.filiprojek.cz">Personal git</a></p>
<p>github: <a href="https://github.com/filiprojek">GitHub</a></p>
<p>PGP: <a href="#" class="pgpwrap">fc37b989787acf8cbce7c0c2a56a345efe321161</a></p>
</div>
</section>
{% endblock content %} {% endblock content %}

View File

@ -23,8 +23,10 @@
<link rel="stylesheet" href="/content.css"> <link rel="stylesheet" href="/content.css">
<link rel="stylesheet" href="/style.css"> <link rel="stylesheet" href="/style.css">
<link rel="stylesheet" href="/home.css"> <link rel="stylesheet" href="/home.css">
<script defer src="https://analytics.fofrweb.com/script.js" data-website-id="2b326fdd-6c87-4627-b1f1-d0afb40aeef6"></script>
{% block styles %} {% block styles %}
{% endblock styles %} {% endblock styles %}
<script defer data-domain="filiprojek.cz" src="https://analytics.fofrweb.com/js/script.js"></script>
</head> </head>
<body> <body>
<header> <header>
@ -32,7 +34,7 @@
<a href="/" class="logo"> <a href="/" class="logo">
<img src="/img/fr_logo.webp" alt="logo"> <img src="/img/fr_logo.webp" alt="logo">
</a> </a>
<div class="links"> <!--<div class="links">
{% for item in config.extra.nav_items %} {% for item in config.extra.nav_items %}
<a href="{{ item.path }}" <a href="{{ item.path }}"
{% if item.path == current_path and item.path != "/" %} {% if item.path == current_path and item.path != "/" %}
@ -40,7 +42,7 @@
{% endif %} {% endif %}
>{{ item.name }}</a> >{{ item.name }}</a>
{% endfor %} {% endfor %}
</div> </div>-->
</nav> </nav>
</header> </header>
@ -56,16 +58,12 @@
{% endblock content %} {% endblock content %}
</main> </main>
<footer> <footer>
<p>Build time: {{ now() | date(format="%Y-%m-%d %H:%M") }},
{% if config.extra.git %} {% if config.extra.git %}
<a href="{{ config.extra.git }}">Source</a> <a href="{{ config.extra.git }}" target="_blank">Source</a>
{% endif %}</p> {% endif %}</p>
<p>&copy; filiprojek.cz 2022 - {{ now() | date(format="%Y")}}</p> <p>&copy; filiprojek.cz 2022 - {{ now() | date(format="%Y")}}</p>
</footer> </footer>
<script>
console.log("pls don't judge me by the source code you can see here, I'm just an ordinary backend developer trying to make a frontend:))")
console.log("but I heard that a cool frontend developer works for https://fofrweb.com")
</script>
</body> </body>
</html> </html>

View File

@ -1,22 +1,13 @@
{% extends "base.html" %} {% extends "base.html" %}
{% block styles %}
<style>
.at {
height: 1rem;
}
</style>
{% endblock styles %}
{% block content %} {% block content %}
<section class="home"> <section class="home">
<section> <section>
<p>Filip Rojek &ltfilip<img src="/img/at.svg" alt=" (at) " class="at">filiprojek.cz&gt</p> <p>Filip Rojek &lt&#102;&#105;&#108;&#105;&#112;&#064;&#102;&#105;&#108;&#105;&#112;&#114;&#111;&#106;&#101;&#107;&#046;&#099;&#122;&gt</p>
<br> <br>
<p>Backend node.js & php developer <a href="https://www.fofrweb.com/" target="_blank">@fofrweb</a>,<br> GNU/Linux <a href="http://voidlinux.org" target="_blank">Void</a> user, student and coffee enthusiast<span class="underscore">_</span><p> <p>Linux sysadmin, backend node.js & php developer <a href="https://www.fofrweb.com/" target="_blank">@fofrweb</a>,<br> GNU/Linux <a href="http://voidlinux.org" target="_blank">Void</a> user, student and coffee enthusiast<span class="underscore">_</span><p>
<br> <br>
<p id="pgp" title="copy pgp to clipboard">PGP: fc37b989787acf8cbce7c0c2a56a345efe321161</p> <p>PGP: <a href="https://keys.openpgp.org/vks/v1/by-fingerprint/CA3D9BE28315B49164130CD97E65EA58C6075F09" target="_blank">0x7E65EA58C6075F09</a></p>
<br> <br>
<p><a href="https://git.filiprojek.cz/fr" target="_blank">Git</a> <a href="https://t.me/filiprojek" target="_blank">Telegram</a> <a href="#" id="pgpmobile" title="copy pgp to clipboard">PGP</a></p> <p><a href="https://git.filiprojek.cz/fr" target="_blank">Git</a> <a href="https://t.me/filiprojek" target="_blank">Telegram</a> <a href="#" id="pgpmobile" title="copy pgp to clipboard">PGP</a></p>
</section> </section>
@ -28,18 +19,8 @@
b ? _.style.visibility = "visible" : _.style.visibility = "hidden" b ? _.style.visibility = "visible" : _.style.visibility = "hidden"
b = !b b = !b
}, 500) }, 500)
const pgp = document.querySelector("#pgp")
const pgpmobile = document.querySelector("#pgpmobile")
const pgpcp = (e) => {
console.log(e)
navigator.clipboard.writeText("fc37b989787acf8cbce7c0c2a56a345efe321161")
alert("pgp has been copied to the clipboard")
}
pgp.addEventListener("click", pgpcp)
pgpmobile.addEventListener("click", pgpcp)
</script> </script>
</section> </section>
{% endblock content %} {% endblock content %}

View File

@ -5,7 +5,8 @@
{% endblock styles %} {% endblock styles %}
{% block content %} {% block content %}
<section class="project-wrapper flex-row"> <section class="project-wrapper flex-col">
<!--
<section class="left-bar flex-col"> <section class="left-bar flex-col">
<h2>Projects</h2> <h2>Projects</h2>
{% set section = get_section(path=page.ancestors | last) %} {% set section = get_section(path=page.ancestors | last) %}
@ -13,9 +14,13 @@
<a href="{{ project.permalink }}">{{project.title}}</a> <a href="{{ project.permalink }}">{{project.title}}</a>
{% endfor %} {% endfor %}
</section> </section>
-->
<section class="project-full"> <h2>{{ page.title }}</h2>
<div>
{{ page.content | safe }} {{ page.content | safe }}
</section> </div>
<a href="/projects">Back to list of projects</a>
</section> </section>
{% endblock content %} {% endblock content %}

View File

@ -4,7 +4,6 @@
<link rel="stylesheet" href="/project_list.css"> <link rel="stylesheet" href="/project_list.css">
{% endblock styles %} {% endblock styles %}
{% block content %} {% block content %}
<section class="project-list content"> <section class="project-list content">
<h1>My Projects</h1> <h1>My Projects</h1>
@ -26,3 +25,4 @@
{% endfor %} {% endfor %}
</section> </section>
{% endblock content %} {% endblock content %}