<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Julian Kominovic</title>
    <description>The latest articles on DEV Community by Julian Kominovic (@juliankominovic).</description>
    <link>https://dev.to/juliankominovic</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F687593%2F0aa0e427-1fc8-4c84-aa08-5b8868b1b12c.png</url>
      <title>DEV Community: Julian Kominovic</title>
      <link>https://dev.to/juliankominovic</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/juliankominovic"/>
    <language>en</language>
    <item>
      <title>Beatiful anime AI generated wallpapers up to 8K</title>
      <dc:creator>Julian Kominovic</dc:creator>
      <pubDate>Sun, 25 Aug 2024 19:15:34 +0000</pubDate>
      <link>https://dev.to/juliankominovic/beatiful-anime-ai-generated-wallpapers-up-to-8k-42nb</link>
      <guid>https://dev.to/juliankominovic/beatiful-anime-ai-generated-wallpapers-up-to-8k-42nb</guid>
      <description>&lt;p&gt;Website: &lt;a href="https://wallpis.jkominovic.dev" rel="noopener noreferrer"&gt;https://wallpis.jkominovic.dev&lt;/a&gt;&lt;br&gt;
Repo: &lt;a href="https://github.com/JulianKominovic/wallpis" rel="noopener noreferrer"&gt;https://github.com/JulianKominovic/wallpis&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Techs: Go, vanilla javascript, Mustache, Tailwind css, Sqlite&lt;/p&gt;




&lt;h2&gt;
  
  
  Low quality showcase
&lt;/h2&gt;

&lt;p&gt;Some examples of ~100 available wallpapers.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjzv6zvgjazckavx9m1ar.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjzv6zvgjazckavx9m1ar.png" alt="Low quality wallpapers demo" width="800" height="658"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Immerse yourself in a world of stunning 8K anime-inspired wallpapers, free for you to download and enjoy! Our collection features breathtaking, high-resolution artwork that will transform your screens into visual masterpieces.&lt;/p&gt;

&lt;p&gt;Each wallpaper is meticulously crafted using cutting-edge AI technology, then enhanced to crystal-clear 8K quality. The result? Impossibly detailed, vibrant, and imaginative scenes that bring the anime aesthetic to life like never before.&lt;/p&gt;

&lt;p&gt;Whether you're decorating your desktop, spicing up your smartphone, or looking for the perfect backdrop for your next video call, our free wallpapers offer something for every taste and device.&lt;/p&gt;

&lt;p&gt;Discover new favorites daily, and elevate your digital spaces with art that inspires. Don't settle for ordinary backgrounds—download our extraordinary 8K anime-style wallpapers now and transform your screens into windows to fantastical worlds!&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>go</category>
      <category>ai</category>
      <category>showdev</category>
    </item>
    <item>
      <title>Update: Live Feedback script</title>
      <dc:creator>Julian Kominovic</dc:creator>
      <pubDate>Mon, 10 Jun 2024 02:58:35 +0000</pubDate>
      <link>https://dev.to/juliankominovic/update-live-feedback-script-35oi</link>
      <guid>https://dev.to/juliankominovic/update-live-feedback-script-35oi</guid>
      <description>&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9s4tzohcwmguj8yqfs93.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9s4tzohcwmguj8yqfs93.png" alt="Live feedback banner" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Hi! A few weeks ago I wrote a blog post &lt;a href="https://dev.to/juliankominovic/introducing-live-feedback-2cg8"&gt;Introducing Live Feedback&lt;/a&gt; as a Google Chrome Extension.&lt;br&gt;
Live Feedback is a script that allows you to start getting feedback directly on your website in real time from your developers, designers and everyone with a Github account.&lt;/p&gt;

&lt;p&gt;I've been using it for a while and I realized that it would be much more useful if it was a standalone script.&lt;br&gt;
So I decided to rewrite it as a script and publish it on GitHub.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Try it out and let me know what you think!&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Link: &lt;a href="https://www.jkominovic.dev/live-feedback"&gt;Try Live Feedback&lt;/a&gt;&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;&lt;a href="https://github.com/JulianKominovic/live-feedback"&gt;Github repo&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>react</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Introducing Live Feedback</title>
      <dc:creator>Julian Kominovic</dc:creator>
      <pubDate>Mon, 27 May 2024 02:34:26 +0000</pubDate>
      <link>https://dev.to/juliankominovic/introducing-live-feedback-2cg8</link>
      <guid>https://dev.to/juliankominovic/introducing-live-feedback-2cg8</guid>
      <description>&lt;p&gt;Update: &lt;a href="https://dev.to/juliankominovic/update-live-feedback-script-35oi"&gt;https://dev.to/juliankominovic/update-live-feedback-script-35oi&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Take a look at the demo video &lt;a href="https://github.com/JulianKominovic/live-feedback?tab=readme-ov-file#demo" rel="noopener noreferrer"&gt;here&lt;/a&gt;.&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev.to%2Fassets%2Fgithub-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/JulianKominovic" rel="noopener noreferrer"&gt;
        JulianKominovic
      &lt;/a&gt; / &lt;a href="https://github.com/JulianKominovic/live-feedback" rel="noopener noreferrer"&gt;
        live-feedback
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Share development feedback with your team directly on the website.
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://private-user-images.githubusercontent.com/70329467/338013997-074b2b42-61a6-452e-8dbe-5b359cae46ec.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mjg0ODM2NzUsIm5iZiI6MTcyODQ4MzM3NSwicGF0aCI6Ii83MDMyOTQ2Ny8zMzgwMTM5OTctMDc0YjJiNDItNjFhNi00NTJlLThkYmUtNWIzNTljYWU0NmVjLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDEwMDklMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQxMDA5VDE0MTYxNVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTVhY2FhNmQzNzI1M2M2MjRlYjYzOTBiODc4ZGQ1MjNlZTI2ODNiNTk0OTM0MWIyN2VmZGQ2YzY4NjljMmM2MWMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.5i-J1KFGkCF9DiWFfhSXC8HY7OS9ZDeB5j4uL0w1X7g"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fprivate-user-images.githubusercontent.com%2F70329467%2F338013997-074b2b42-61a6-452e-8dbe-5b359cae46ec.png%3Fjwt%3DeyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mjg0ODM2NzUsIm5iZiI6MTcyODQ4MzM3NSwicGF0aCI6Ii83MDMyOTQ2Ny8zMzgwMTM5OTctMDc0YjJiNDItNjFhNi00NTJlLThkYmUtNWIzNTljYWU0NmVjLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDEwMDklMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQxMDA5VDE0MTYxNVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTVhY2FhNmQzNzI1M2M2MjRlYjYzOTBiODc4ZGQ1MjNlZTI2ODNiNTk0OTM0MWIyN2VmZGQ2YzY4NjljMmM2MWMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.5i-J1KFGkCF9DiWFfhSXC8HY7OS9ZDeB5j4uL0w1X7g" alt="Github frame (2)"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;Live feedback&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;Live feedback is a script you can inject on your site that allows you to get feedback on your website in real time from your developers, designers, and clients
It is a simple and easy-to-use tool that helps you to improve your website by getting feedback from your team
Integration is really simple.&lt;/p&gt;
&lt;p&gt;In a few steps you can get feedback on your website:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Add Live Feedback script in your website&lt;/li&gt;
&lt;li&gt;Pass some mandatory properties to the script such as &lt;code&gt;repo&lt;/code&gt; and &lt;code&gt;owner&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Live Feedback is now enable on your website.&lt;/li&gt;
&lt;li&gt;You will see the &lt;code&gt;Login&lt;/code&gt; button, click it.&lt;/li&gt;
&lt;li&gt;After giving Live Feedback access to your repositories you can start giving feedback.&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Demo&lt;/h2&gt;

&lt;/div&gt;

  
    
    

    &lt;span class="m-1"&gt;2024-05-26.22-08-24.mp4&lt;/span&gt;
    
  

  

  


&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Instructions&lt;/h2&gt;

&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;Add script tag&lt;/h3&gt;

&lt;/div&gt;
&lt;p&gt;Add this script at the end of &lt;code&gt;&amp;lt;body&amp;gt;&lt;/code&gt; tag.&lt;/p&gt;
&lt;div class="highlight highlight-text-html-basic notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;&lt;span class="pl-kos"&gt;&amp;lt;&lt;/span&gt;&lt;span class="pl-ent"&gt;script&lt;/span&gt;
  &lt;span class="pl-c1"&gt;repo&lt;/span&gt;="&lt;span class="pl-s"&gt;{your repo}&lt;/span&gt;"
  &lt;span class="pl-c1"&gt;owner&lt;/span&gt;="&lt;span class="pl-s"&gt;{repo owner}&lt;/span&gt;"
  &lt;span class="pl-c1"&gt;async&lt;/span&gt;
  &lt;span class="pl-c1"&gt;src&lt;/span&gt;="&lt;span class="pl-s"&gt;https://cdn.jsdelivr.net/gh/JulianKominovic/live-feedback@latest/build/bundle.js&lt;/span&gt;"
/&amp;gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;i.e:&lt;/p&gt;
&lt;div class="highlight highlight-text-html-basic notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;&lt;span class="pl-kos"&gt;&amp;lt;&lt;/span&gt;&lt;span class="pl-ent"&gt;script&lt;/span&gt;&lt;/pre&gt;…
&lt;/div&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/JulianKominovic/live-feedback" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;Today I'm going to introduce a new Google Extension that I've been working on the past few weeks.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;Live feedback&lt;/code&gt; is an extension made for Google Chrome browser that allows you to get feedback on your website in real time from your developers, designers, and clients. It is a simple and easy-to-use tool that helps you to improve your website by getting feedback right on the page.&lt;/p&gt;

&lt;p&gt;The extension is designed to be simple and intuitive, so you can start using it right away without any training by following &lt;a href="https://github.com/JulianKominovic/live-feedback?tab=readme-ov-file#instructions" rel="noopener noreferrer"&gt;these simple steps&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;It's very similar to &lt;a href="https://vercel.com/docs/workflow-collaboration/comments" rel="noopener noreferrer"&gt;Vercel Comments&lt;/a&gt;, but it's open source and it's not tied to any specific platform, so you can use it everywhere, even on your local development environment.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Disclaimer: The extension is under development and it's not ready for production yet. I'm still working on it and adding new features so you may encounter some bugs or issues while using it. Some major changes may happen in the future as well. If you have any feedback or suggestions, please let me know in the comments.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  What does it do?
&lt;/h2&gt;

&lt;p&gt;The extension allows you to select an element on the page and add a comment to it.&lt;br&gt;
When you submit the feedback, a screenshot is taken automatically, and the feedback is sent to whatever Github repository you have configured in the extension settings as an issue. You can then view the feedback on Github and discuss it with your team and you also can see the feedback directly on the page as a bubble.&lt;/p&gt;

&lt;p&gt;Anyone with access to the repository will see the feedback bubble and will be able to comment on it. This makes it easy to collaborate with your team and improve your website. Just make sure you both have the extension installed and configured with the same repository (since the extension uses Github Issues as a backend).&lt;/p&gt;

&lt;p&gt;In case you are reviewing a pull request, you can also link the issue to the pull request, so you can use this tool to review pull requests as well.&lt;/p&gt;

&lt;h2&gt;
  
  
  How does it work?
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;The extension injects a small script into the page you are viewing.&lt;/li&gt;
&lt;li&gt;A toolbar is displayed at the bottom of the page.&lt;/li&gt;
&lt;li&gt;Click on the toolbar &lt;code&gt;+&lt;/code&gt; button to start adding feedback.&lt;/li&gt;
&lt;li&gt;Select an element on the page.&lt;/li&gt;
&lt;li&gt;Leave a comment.&lt;/li&gt;
&lt;li&gt;Submit the feedback.&lt;/li&gt;
&lt;li&gt;2 screenshots are taken: one of the whole page and one of the selected element. They will be uploaded to your Github repository master branch inside &lt;code&gt;.github/feedback&lt;/code&gt; folder.&lt;/li&gt;
&lt;li&gt;A new issue is created in your Github repository with the feedback and the screenshots attached.&lt;/li&gt;
&lt;li&gt;In the issue, you can see the feedback, the screenshots, and the comments. You can discuss the feedback with your team in the issue comments.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Please DO NOT MODIFY the issue. The issue saves a lot of internal data that the extension uses to display the feedback. If you modify the issue, the extension will not be able to display the feedback correctly.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  How to install it?
&lt;/h2&gt;

&lt;p&gt;Follow &lt;a href="https://github.com/JulianKominovic/live-feedback?tab=readme-ov-file#install-extension" rel="noopener noreferrer"&gt;these simple steps&lt;/a&gt; to install and configure the extension.&lt;/p&gt;

&lt;h2&gt;
  
  
  Features
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Smart HTML Element tracking: Your feedback will be linked to the specific element on the page.&lt;/li&gt;
&lt;li&gt;Commenting: You can add comments to the feedback to provide more context.&lt;/li&gt;
&lt;li&gt;Screenshot: Screenshots are taken automatically when you submit feedback.&lt;/li&gt;
&lt;li&gt;No backend required: The extension uses Github Issues as a backend, so you don't need to set up a server.&lt;/li&gt;
&lt;li&gt;Open source: The extension is open source, so you can contribute to its development.&lt;/li&gt;
&lt;li&gt;Trusthworthy: The extension only requires the permissions it needs to work, and it doesn't collect any personal data. Any data collected is stored on your Github repository. You can see every request the extension makes in the network tab of the developer tools.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Checklist
&lt;/h2&gt;

&lt;p&gt;I'm still working on the extension, and I plan to add more features in the future.&lt;br&gt;
If you have any feedback or suggestions, please let me know in the comments.&lt;br&gt;
You may encounter some bugs or issues while using the extension. If you do, please report them on the &lt;a href="https://github.com/JulianKominovic/live-feedback" rel="noopener noreferrer"&gt;repository&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Soon I will be adding a roadmap to the repository so you can see what features are planned and what features are already implemented in detail.&lt;/p&gt;

&lt;p&gt;As of now, the extension has the following features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;[x] HTML Element tracking

&lt;ul&gt;
&lt;li&gt;[x] CSS Selector system: list of selectors to find the element and kind of consensus criteria to find the element.&lt;/li&gt;
&lt;li&gt;[x] Typical display attributes: display, visibility, opacity, and pointer-events.&lt;/li&gt;
&lt;li&gt;[x] Feedback coordinates: x and y coordinates of the element and viewport scroll position.&lt;/li&gt;
&lt;li&gt;[] Efficient tracking: stop using polling and use MutationObserver instead. Although it's not a big deal since the extension is not running all the time and didn't have any performance issues.&lt;/li&gt;
&lt;li&gt;[] Lax URL matching: stop making a === comparison and use a more scoped comparison.&lt;/li&gt;
&lt;li&gt;[] Width and height recovery: recover width and height of the viewport of whoever submitted the feedback.&lt;/li&gt;
&lt;li&gt;[] Scroll position recovery: recover scroll position of the viewport of whoever submitted the feedback.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;[x] Feedback on element: clicking on an element.&lt;/li&gt;

&lt;li&gt;[x] Feedback on text selection: selecting text.&lt;/li&gt;

&lt;li&gt;[x] Toolbar

&lt;ul&gt;
&lt;li&gt;[x] Toolbar position: bottom of the page.&lt;/li&gt;
&lt;li&gt;[x] Toolbar styles: simple and clean.&lt;/li&gt;
&lt;li&gt;[x] Draggable toolbar: drag the toolbar to any position on the page.&lt;/li&gt;
&lt;li&gt;[x] Toolbar features:&lt;/li&gt;
&lt;li&gt;[x] Add feedback button: add feedback on an element.&lt;/li&gt;
&lt;li&gt;[x] Add feedback on text selection button: add feedback on text selection.&lt;/li&gt;
&lt;li&gt;[x] Show async tasks semaphores: show the status of the async tasks.&lt;/li&gt;
&lt;li&gt;[] Close toolbar button: close the toolbar.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;[x] Async tasks status: show the status of the async tasks the extension is running.

&lt;ul&gt;
&lt;li&gt;[x] Loading: when the extension is loading.&lt;/li&gt;
&lt;li&gt;[x] Success: when the extension has finished successfully.&lt;/li&gt;
&lt;li&gt;[x] Error: when the extension has finished with an error.&lt;/li&gt;
&lt;li&gt;[] Improve the status messages.&lt;/li&gt;
&lt;li&gt;[] Add a timeout to the async tasks.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;[] Add settings page&lt;/li&gt;

&lt;li&gt;[] Mentions

&lt;ul&gt;
&lt;li&gt;[] When people mentioned me in the comments.&lt;/li&gt;
&lt;li&gt;[] When people mentioned me in the issue.&lt;/li&gt;
&lt;li&gt;[] Issues related to me.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;[] Threads

&lt;ul&gt;
&lt;li&gt;[] Resolve threads.&lt;/li&gt;
&lt;li&gt;[] List all threads.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;[x] Commenting&lt;/li&gt;

&lt;li&gt;[x] Automatic screenshots&lt;/li&gt;

&lt;li&gt;[x] No backend required&lt;/li&gt;

&lt;li&gt;[x] Github integration

&lt;ul&gt;
&lt;li&gt;[x] Create issue&lt;/li&gt;
&lt;li&gt;[x] Upload screenshots&lt;/li&gt;
&lt;li&gt;[x] Link issue to pull request&lt;/li&gt;
&lt;li&gt;[x] Get issue comments&lt;/li&gt;
&lt;li&gt;[x] Get repository visibility&lt;/li&gt;
&lt;li&gt;[] Mentions&lt;/li&gt;
&lt;li&gt;[] Get user mentions&lt;/li&gt;
&lt;li&gt;[] Get unread notifications&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>react</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Portfolio rebuilt. </title>
      <dc:creator>Julian Kominovic</dc:creator>
      <pubDate>Wed, 10 Nov 2021 23:02:01 +0000</pubDate>
      <link>https://dev.to/juliankominovic/portfolio-rebuilt-2h23</link>
      <guid>https://dev.to/juliankominovic/portfolio-rebuilt-2h23</guid>
      <description>&lt;h2&gt;
  
  
  Hi, this is my new portfolio.
&lt;/h2&gt;

&lt;p&gt;Built with picoCSS and Vite in vanilla JS, CSS and html.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Also my first blog.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  Live demo:
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://jkportfolio.web.app/"&gt;https://jkportfolio.web.app/&lt;/a&gt;&lt;/p&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--i3JOwpme--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev.to/assets/github-logo-ba8488d21cd8ee1fee097b8410db9deaa41d0ca30b004c0c63de0a479114156f.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/JulianKominovic"&gt;
        JulianKominovic
      &lt;/a&gt; / &lt;a href="https://github.com/JulianKominovic/picocss-vanilla-portfolio"&gt;
        picocss-vanilla-portfolio
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Personal portfolio.
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;h1&gt;
⭐Personal Portfolio&lt;/h1&gt;
&lt;h2&gt;
💥 My personal portfolio built with PicoCSS, vanilla JS, CSS and HTML5.&lt;/h2&gt;

&lt;h2&gt;
Take a look!&lt;/h2&gt;
&lt;h3&gt;
💻 Click the image below to live demo&lt;/h3&gt;
&lt;a width="100px" href="https://jkportfolio.web.app/" rel="nofollow"&gt;
&lt;img src="https://camo.githubusercontent.com/8b8a3571b2bff7d4243fbb1ab70a89b5aed8671e9b98692096052a4e5ac22107/68747470733a2f2f6a6b706f7274666f6c696f2e7765622e6170702f6173736574732f6f672d696d6167652d666f722d706f7274666f6c696f2e6a7067"&gt;
&lt;/a&gt;

&lt;h3&gt;
🔎 Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Minimalist design.&lt;/li&gt;
&lt;li&gt;Responsive design.&lt;/li&gt;
&lt;li&gt;First Mobile.&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;Dark/Light themes.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
🔨 Tech stack.&lt;/h3&gt;
&lt;h4&gt;
Frontend&lt;/h4&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://camo.githubusercontent.com/d63d473e728e20a286d22bb2226a7bf45a2b9ac6c72c59c0e61e9730bfe4168c/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f48544d4c352d4533344632363f7374796c653d666f722d7468652d6261646765266c6f676f3d68746d6c35266c6f676f436f6c6f723d7768697465"&gt;&lt;img src="https://camo.githubusercontent.com/d63d473e728e20a286d22bb2226a7bf45a2b9ac6c72c59c0e61e9730bfe4168c/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f48544d4c352d4533344632363f7374796c653d666f722d7468652d6261646765266c6f676f3d68746d6c35266c6f676f436f6c6f723d7768697465" alt="html badge"&gt;&lt;/a&gt;
&lt;a rel="noopener noreferrer" href="https://camo.githubusercontent.com/9d07c04bdd98c662d5df9d4e1cc1de8446ffeaebca330feb161f1fb8e1188204/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4a6176615363726970742d4637444631453f7374796c653d666f722d7468652d6261646765266c6f676f3d6a617661736372697074266c6f676f436f6c6f723d626c61636b"&gt;&lt;img src="https://camo.githubusercontent.com/9d07c04bdd98c662d5df9d4e1cc1de8446ffeaebca330feb161f1fb8e1188204/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4a6176615363726970742d4637444631453f7374796c653d666f722d7468652d6261646765266c6f676f3d6a617661736372697074266c6f676f436f6c6f723d626c61636b" alt="js badge"&gt;&lt;/a&gt;
&lt;a rel="noopener noreferrer" href="https://camo.githubusercontent.com/e66fec495abde2fdb5af5253c10c5cdd928e1f1233c07d9bf1f1a2e6729251ca/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5069636f4353532d3135373242363f7374796c653d666f722d7468652d6261646765266c6f676f3d63737333266c6f676f436f6c6f723d7768697465"&gt;&lt;img src="https://camo.githubusercontent.com/e66fec495abde2fdb5af5253c10c5cdd928e1f1233c07d9bf1f1a2e6729251ca/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5069636f4353532d3135373242363f7374796c653d666f722d7468652d6261646765266c6f676f3d63737333266c6f676f436f6c6f723d7768697465" alt="css badge"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
Working Tools&lt;/h4&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://camo.githubusercontent.com/2bb584b470ece3c2151bb230add57e6db730e19bfb9138037f8777e1d91730ed/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f2d4769742d4646423734303f7374796c653d666f722d7468652d6261646765266c6f676f3d476974266c6162656c436f6c6f723d303030"&gt;&lt;img src="https://camo.githubusercontent.com/2bb584b470ece3c2151bb230add57e6db730e19bfb9138037f8777e1d91730ed/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f2d4769742d4646423734303f7374796c653d666f722d7468652d6261646765266c6f676f3d476974266c6162656c436f6c6f723d303030" alt="Git"&gt;&lt;/a&gt;
&lt;a rel="noopener noreferrer" href="https://camo.githubusercontent.com/dcfd104bd0654062279d1afa325218b21bb541da5625a84293be5df03b194910/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f2d4769744875622d4646423734303f7374796c653d666f722d7468652d6261646765266c6f676f3d476974687562266c6162656c436f6c6f723d303030"&gt;&lt;img src="https://camo.githubusercontent.com/dcfd104bd0654062279d1afa325218b21bb541da5625a84293be5df03b194910/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f2d4769744875622d4646423734303f7374796c653d666f722d7468652d6261646765266c6f676f3d476974687562266c6162656c436f6c6f723d303030" alt="GitHub"&gt;&lt;/a&gt;
&lt;a rel="noopener noreferrer" href="https://camo.githubusercontent.com/22eb0dae34db7f30db049ed4dcc1feb9634b3e38fc353a30a8a9ff2398b6351b/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f2d4d61726b646f776e2d4646423734303f7374796c653d666f722d7468652d6261646765266c6f676f3d4d61726b646f776e266c6162656c436f6c6f723d303030"&gt;&lt;img src="https://camo.githubusercontent.com/22eb0dae34db7f30db049ed4dcc1feb9634b3e38fc353a30a8a9ff2398b6351b/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f2d4d61726b646f776e2d4646423734303f7374796c653d666f722d7468652d6261646765266c6f676f3d4d61726b646f776e266c6162656c436f6c6f723d303030" alt="Markdown"&gt;&lt;/a&gt;
&lt;a rel="noopener noreferrer" href="https://camo.githubusercontent.com/b2bebcc4eaf851ff43a0def57ddd1b7fd60f8e6d12216a13aad956f7f911b3d9/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f2d56697375616c25323053747564696f253230436f64652d4646423734303f7374796c653d666f722d7468652d6261646765266c6f676f3d76697375616c2d73747564696f2d636f6465266c6162656c436f6c6f723d303030"&gt;&lt;img src="https://camo.githubusercontent.com/b2bebcc4eaf851ff43a0def57ddd1b7fd60f8e6d12216a13aad956f7f911b3d9/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f2d56697375616c25323053747564696f253230436f64652d4646423734303f7374796c653d666f722d7468652d6261646765266c6f676f3d76697375616c2d73747564696f2d636f6465266c6162656c436f6c6f723d303030" alt="Visual Studio Code"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
Libraries&lt;/h4&gt;

&lt;h3&gt;
📌 Contact&lt;/h3&gt;
&lt;a href="https://www.linkedin.com/in/jkominovic/" rel="nofollow"&gt;
&lt;img src="https://camo.githubusercontent.com/a80d00f23720d0bc9f55481cfcd77ab79e141606829cf16ec43f8cacc7741e46/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c696e6b6564496e2d3030373742353f7374796c653d666f722d7468652d6261646765266c6f676f3d6c696e6b6564696e266c6f676f436f6c6f723d7768697465"&gt;
&lt;/a&gt;
&lt;a href="https://github.com/JulianKominovic/picocss-vanilla-portfoliomailto:juliankominovic@gmail.com"&gt;
&lt;img src="https://camo.githubusercontent.com/571384769c09e0c66b45e39b5be70f68f552db3e2b2311bc2064f0d4a9f5983b/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f476d61696c2d4431343833363f7374796c653d666f722d7468652d6261646765266c6f676f3d676d61696c266c6f676f436f6c6f723d7768697465"&gt;
&lt;/a&gt;
&lt;p&gt;&lt;a href="https://jkportfolio.web.app/" rel="nofollow"&gt;&lt;img alt="Portfolio" src="https://camo.githubusercontent.com/b8bd919197fdd8b63fbd81e71bd426e0fd40c4c2fccd1e1ad02db362ca1f3282/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f506f7274666f6c696f2d6a6b706f7274666f6c696f2e7765622e6170702d4646423734303f7374796c653d666f722d7468652d6261646765266c6f676f3d676f6f676c652d6368726f6d65266c6162656c436f6c6f723d303030"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
👌 Made by Julian Ezequiel Kominovic.&lt;/h3&gt;
&lt;/div&gt;



&lt;/div&gt;
&lt;br&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/JulianKominovic/picocss-vanilla-portfolio"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;br&gt;


&lt;h2&gt;
  
  
  HTML Structure:
&lt;/h2&gt;

&lt;p&gt;Basically I didn't write so much CSS. The main reason for writing CSS with this framework is for aesthetic purposes.&lt;/p&gt;

&lt;h3&gt;
  
  
  The portfolio's structure is simple:
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;The landing page&lt;/strong&gt;: which is simple and contains my face and branding.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The projects&lt;/strong&gt;: section with the most recent projects.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Skills section&lt;/strong&gt;: for obvious reasons.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Blog&lt;/strong&gt;: coming soon...&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Contact&lt;/strong&gt;: just my email and GitHub profile.&lt;/li&gt;
&lt;/ol&gt;

&lt;h4&gt;
  
  
  Header HTML code:
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--KakgYdWS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kligheaijgzgb4s9twiu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--KakgYdWS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kligheaijgzgb4s9twiu.png" alt="Header section snippet" width="880" height="777"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Aside menu:
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--h3eBfila--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qjf2xwken89c5mgb079j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--h3eBfila--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qjf2xwken89c5mgb079j.png" alt="Aside menu snippet" width="880" height="2055"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Projects HTML code:
&lt;/h4&gt;

&lt;p&gt;For each one of the projects.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--JREgbLo8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9yeqw9ze57o4iygzaica.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--JREgbLo8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9yeqw9ze57o4iygzaica.png" alt="Projects html snippet" width="880" height="1636"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Skills HTML code:
&lt;/h4&gt;

&lt;p&gt;For each one of the tech stacks.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s---IeN_6o4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9dl569vglhd78fjskkge.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s---IeN_6o4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9dl569vglhd78fjskkge.png" alt="Skills html snippet" width="880" height="723"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  📌 Contact
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://www.linkedin.com/in/jkominovic/"&gt;&lt;br&gt;
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--imBRhTaX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://img.shields.io/badge/LinkedIn-0077B5%3Fstyle%3Dfor-the-badge%26logo%3Dlinkedin%26logoColor%3Dwhite" width="107" height="28"&gt;&lt;br&gt;
&lt;/a&gt;&lt;br&gt;
&lt;a href="mailto:juliankominovic@gmail.com"&gt;&lt;br&gt;
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--C75QF96b--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://img.shields.io/badge/Gmail-D14836%3Fstyle%3Dfor-the-badge%26logo%3Dgmail%26logoColor%3Dwhite" width="83" height="28"&gt;&lt;br&gt;
&lt;/a&gt;&lt;br&gt;
&lt;a href="https://jkportfolio.web.app/"&gt;&lt;img alt="Portfolio" src="https://res.cloudinary.com/practicaldev/image/fetch/s--FaCQ672B--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://img.shields.io/badge/Portfolio-jkportfolio.web.app-FFB740%3Fstyle%3Dfor-the-badge%26logo%3Dgoogle-chrome%26labelColor%3D000" width="292" height="28"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  👌 Made by Julian Ezequiel Kominovic.
&lt;/h3&gt;

</description>
      <category>javascript</category>
      <category>html</category>
      <category>css</category>
      <category>portfolio</category>
    </item>
  </channel>
</rss>
