<?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: Szikszai Gusztáv</title>
    <description>The latest articles on DEV Community by Szikszai Gusztáv (@gdotdesign).</description>
    <link>https://dev.to/gdotdesign</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%2F83798%2Ffd8a6641-27d5-442f-9abc-9e1ce9db48f4.png</url>
      <title>DEV Community: Szikszai Gusztáv</title>
      <link>https://dev.to/gdotdesign</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/gdotdesign"/>
    <language>en</language>
    <item>
      <title>7GUIs in Mint</title>
      <dc:creator>Szikszai Gusztáv</dc:creator>
      <pubDate>Fri, 11 Jul 2025 09:16:00 +0000</pubDate>
      <link>https://dev.to/gdotdesign/7guis-in-mint-3544</link>
      <guid>https://dev.to/gdotdesign/7guis-in-mint-3544</guid>
      <description>&lt;p&gt;Since I learned about &lt;a href="https://7guis.github.io/7guis/" rel="noopener noreferrer"&gt;7GUIs&lt;/a&gt; I wanted to implement them in Mint. I've tried a few times but always stopped at some point and there were changes in Mint, so I started again and then stopped again.&lt;/p&gt;

&lt;p&gt;When recently I've added &lt;a href="https://mint-lang.com/examples" rel="noopener noreferrer"&gt;examples&lt;/a&gt; to the website, it presented a good opportunity to finally implement and showcase them on the website.&lt;/p&gt;

&lt;p&gt;I'm not going to explain all the tasks, but instead what was easy and what was hard to do in Mint.&lt;/p&gt;

&lt;h2&gt;
  
  
  Counter
&lt;/h2&gt;

&lt;p&gt;The counter task is a pretty easy one, not much to tell here. It's almost the same as the plain JavaScript version would be.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzl2hhn3yfdw99pip2jmd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzl2hhn3yfdw99pip2jmd.png" alt="Counter" width="800" height="259"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Temperature Converter
&lt;/h2&gt;

&lt;p&gt;This was also easy. The tricky part was handling the invalid states, but having a type for it (Field) with variants describing them makes it simple.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1kh33hkpwlc6bjwrxzpg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1kh33hkpwlc6bjwrxzpg.png" alt="Temperature Converter" width="800" height="410"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Flight Booker
&lt;/h2&gt;

&lt;p&gt;Tasks start getting interesting with this one.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;there was a need for parsing a date in a specific format - a regexp was a good solution here&lt;/li&gt;
&lt;li&gt;the buttons need to be disabled in multiple conditions - matching on a three element tuple makes this a breeze&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3mw7y277dy7jg57y6wp1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3mw7y277dy7jg57y6wp1.png" alt="Flight Booker" width="800" height="498"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Timer
&lt;/h2&gt;

&lt;p&gt;This wasn't that difficult in Mint since we have some built in entities that does the heavy lifting.&lt;/p&gt;

&lt;p&gt;We have the &lt;a href="https://mint-lang.com/api/Provider.AnimationFrame" rel="noopener noreferrer"&gt;animation frame provider&lt;/a&gt;, which calls a function on every animation frame. This allows us to track the elapsed time. Having the duration wired up was easy with the range slider.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5dhv5c63lq75y5j95mfd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5dhv5c63lq75y5j95mfd.png" alt="Timer" width="800" height="498"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  CRUD
&lt;/h2&gt;

&lt;p&gt;This wasn't particularly difficult either, since we have some functions for updating and deleting entities at a specific index in an array. It's basically pretty straight forward.&lt;/p&gt;

&lt;p&gt;A nice side effect of implementing this resulted in a detecting a subtle bug which needs fixing.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0ahhide1p70hm3ih5uhu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0ahhide1p70hm3ih5uhu.png" alt="CRUD" width="800" height="506"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Circle Drawer
&lt;/h2&gt;

&lt;p&gt;This task is the second-hardest one. I needed to create more components (the previous ones only needed the one) and an extra module to handle history - &lt;code&gt;Undoable(a)&lt;/code&gt; - fortunately I was able to port an Elm module I used to use.&lt;/p&gt;

&lt;p&gt;The built-in &lt;a href=""&gt;outside click provider&lt;/a&gt; was used to close the panels that show up when a circle is clicked. Also, alternative patterns in case branches provided useful in many cases here.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjly83ijpi2umpv5mks8l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjly83ijpi2umpv5mks8l.png" alt="Circle Drawer" width="800" height="603"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Cells
&lt;/h2&gt;

&lt;p&gt;Now this one was the hardest one because you basically need to write a very simple spreadsheets clone. Implementing this one has taken me three sessions at least (the other tasks I was able to do in a single session).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp9ur9squxurwbrc28cx2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp9ur9squxurwbrc28cx2.png" alt="Cells" width="800" height="725"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Formula
&lt;/h3&gt;

&lt;p&gt;Cells in spreadsheets are either texts or formulas. A formula is basically starts with an equal sign and have multiple variants. I needed to write a &lt;strong&gt;parser&lt;/strong&gt; for it and then an &lt;strong&gt;evaluator&lt;/strong&gt; which calculates the numeric values of the cells.&lt;/p&gt;

&lt;p&gt;To make a little optimization in the parser, I needed to use inline JavaScript, which I didn't need to do in the previous tasks. Other than that it was fun to write a parser in Mint - a thing I didn't do before. ADTs were very useful in this task.&lt;br&gt;
Evaluator&lt;/p&gt;

&lt;p&gt;The evaluator is a combination of recursive reduce functions. If a cell depends on another cell, we need to evaluate that cell first and so on for its dependencies.&lt;/p&gt;

&lt;p&gt;This gets especially complicated for the functions (&lt;code&gt;sum&lt;/code&gt;, &lt;code&gt;prod&lt;/code&gt;) which can take many arguments, where any of which can be a range (which also needs to be evaluated). I went with the naive approach, but it also caches values, and I'm sure that there are other algorithms which are better.&lt;br&gt;
UI&lt;/p&gt;

&lt;p&gt;The actual UI was the least time-consuming part of this task. Mint makes it easy and very enjoyable.&lt;/p&gt;

&lt;p&gt;I enjoyed working on these tasks, and finally showcasing the Mint implementations feels great! If you find ways to improve them, drop me a pull request on the &lt;a href="https://github.com/mint-lang/mint-website" rel="noopener noreferrer"&gt;mint-website&lt;/a&gt; repository.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;P.S. Writing this blog post uncovered a bug in the website code which is now fixed and prompted a change in the example component to maximize the editor height since the examples are so big and a limit wasn't set.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>frontend</category>
      <category>ui</category>
      <category>mint</category>
    </item>
    <item>
      <title>Front End Language Feature Matrix</title>
      <dc:creator>Szikszai Gusztáv</dc:creator>
      <pubDate>Tue, 08 Jul 2025 13:55:32 +0000</pubDate>
      <link>https://dev.to/gdotdesign/front-end-language-feature-matrix-n4b</link>
      <guid>https://dev.to/gdotdesign/front-end-language-feature-matrix-n4b</guid>
      <description>&lt;p&gt;Hi! I've created a page to showcase the features of Mint (a programming language for single page applications) and their corresponding versions in other languages which can be used for single page applications. I hope it can help you choose a programming language for your next project!&lt;/p&gt;

&lt;p&gt;It took some time to track down the features for each language. I'll keep expanding this with other languages in the space, so if you have any that you would like to see, let me know.&lt;/p&gt;

&lt;p&gt;Anyhow, here is the link: &lt;a href="https://mint-lang.com/feature-matrix" rel="noopener noreferrer"&gt;https://mint-lang.com/feature-matrix&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>frontend</category>
      <category>discuss</category>
      <category>news</category>
    </item>
    <item>
      <title>🍃 Mint Reborn</title>
      <dc:creator>Szikszai Gusztáv</dc:creator>
      <pubDate>Tue, 03 Dec 2024 12:26:28 +0000</pubDate>
      <link>https://dev.to/gdotdesign/mint-reborn-4m0f</link>
      <guid>https://dev.to/gdotdesign/mint-reborn-4m0f</guid>
      <description>&lt;p&gt;Howdy folks 👋, long time no see!&lt;/p&gt;

&lt;p&gt;Today, I'd like to reintroduce you to the &lt;a href="https://mint-lang.com/" rel="noopener noreferrer"&gt;Mint&lt;/a&gt;, which is a programming language for specifically writing single page applications.&lt;/p&gt;

&lt;p&gt;I've introduced Mint 6 years ago 🤯 in &lt;a href="https://dev.to/gdotdesign/mint---a-refreshing-programming-language-for-the-front-end-web-347m"&gt;this post&lt;/a&gt; and a lot of things happened since then, but I feel like that the described day is still something that a lot of developers don't experience. The state of frontend development is still messy and complex. Mint is here to help with that.&lt;/p&gt;

&lt;p&gt;To be frank, I'm not that versed in what folks are using now to build webpages. I lost track a while ago (specifically 2 kids ago 👶 yes, I'm a dad). Then, React was the primary way of building single page apps. Svelte and Next.js was pretty new, and we believed that Elm will save us (&lt;em&gt;that&lt;/em&gt; didn't happen). What I see nowadays seems overly complex and still carries the same warts that plagued the previous technologies (constant rewrites, projects don't work after running &lt;code&gt;npm install&lt;/code&gt; a year later, etc...).&lt;/p&gt;

&lt;p&gt;In the last year having found some inspiration I worked more on Mint than in the previous years. I rewrote a lot of its internal code (which I'll detail briefly at the end of this post), the website and I think it's in a state where it can be used for some production use cases. I wouldn't call it 1.0 – we are still a bit from that, but the language won't change drastically going forward.&lt;/p&gt;

&lt;h2&gt;
  
  
  So what is Mint, and how can it help me?
&lt;/h2&gt;

&lt;p&gt;Think of Mint as a thing that has &lt;strong&gt;everything&lt;/strong&gt; that you need to build frontend heavy websites (if I forgot something, let me know 😉):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/reference/components/introduction" rel="noopener noreferrer"&gt;Components&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/reference/html" rel="noopener noreferrer"&gt;HTML&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/reference/styling/introduction" rel="noopener noreferrer"&gt;CSS&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/reference/types/custom-types" rel="noopener noreferrer"&gt;Sum Types&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/api/" rel="noopener noreferrer"&gt;Standard Library&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/reference/state-management" rel="noopener noreferrer"&gt;State Management&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/reference/locale" rel="noopener noreferrer"&gt;Localization&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/reference/routes" rel="noopener noreferrer"&gt;Routing&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/reference/here-documents" rel="noopener noreferrer"&gt;Here Documents&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/reference/here-documents#markdown" rel="noopener noreferrer"&gt;Markdown Rendering&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/reference/control-flow/defer" rel="noopener noreferrer"&gt;Code Splitting&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/reference/testing" rel="noopener noreferrer"&gt;Testing&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/reference/javascript/inlining" rel="noopener noreferrer"&gt;JavaScript Interop&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/reference/directives/asset" rel="noopener noreferrer"&gt;Assets Handling&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/guides/cli/build" rel="noopener noreferrer"&gt;Bundler&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/guides/cli/format" rel="noopener noreferrer"&gt;Formatter&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/guides/cli/tool-loc" rel="noopener noreferrer"&gt;Language Server&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/guides/cli/start" rel="noopener noreferrer"&gt;Development Server&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/guides/cli/install" rel="noopener noreferrer"&gt;Package Manager&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/guides/cli/docs" rel="noopener noreferrer"&gt;API Documentation Generator&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://github.com/mint-lang/mint/blob/master/spec/compilers/dce_remove_module_function" rel="noopener noreferrer"&gt;Dead Code Elimination&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://github.com/mint-lang/mint/tree/master/spec/errors" rel="noopener noreferrer"&gt;Nice Error Messages&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/reference/debugging" rel="noopener noreferrer"&gt;Debugging Tools&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/reference/debugging#source-maps" rel="noopener noreferrer"&gt;Source Maps&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/tutorial/" rel="noopener noreferrer"&gt;️Online Tutorial&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/sandbox/try" rel="noopener noreferrer"&gt;Online Try Page&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;☑️ &lt;a href="https://mint-lang.com/sandbox/" rel="noopener noreferrer"&gt;Online Sandbox&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;After reading through that list, just as an optional exercise, try to check off every item on it with your current stack 😉&lt;/p&gt;

&lt;p&gt;Mint has everything (well, except the online stuff) on that list &lt;strong&gt;built in the language&lt;/strong&gt;. One language, one command to rule them all, and one place for the documentation.&lt;/p&gt;

&lt;h2&gt;
  
  
  It sounds nice, but what it looks like? I might not like it!
&lt;/h2&gt;

&lt;p&gt;Here is the famous counter example, which showcases a tiny portion of the features:&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;h2&gt;
  
  
  Not that bad, can it actually help me in my current situation, though?
&lt;/h2&gt;

&lt;p&gt;I can't answer that. Mint is a fairly new language with a small community. There are people who write things in it and seem to like it.&lt;/p&gt;

&lt;p&gt;At this stage, it is mostly good for greenfield projects or hobby projects, but &lt;strong&gt;it is capable&lt;/strong&gt; - enterprise software can be built with it now. I built (and keep building) more than 100K LOC desktop / SaaS application in it (I will not name it here, but you can easily find out what it is), with many pages and it supports different languages.&lt;/p&gt;

&lt;p&gt;Also, there is the &lt;a href="https://github.com/mint-lang/mint-website" rel="noopener noreferrer"&gt;Mint website&lt;/a&gt; which is also a bigger project (more than a hundred pages) loading each page's content (mostly &lt;a href="https://github.com/mint-lang/mint-website/blob/master/source/Reference/06-Here-Documents.mint" rel="noopener noreferrer"&gt;markdown&lt;/a&gt;) asynchronously, so it can be used to build documentation websites or landing pages. It also has the sandbox, which is a small CRUD app and the tutorial which is another small app. All of these are in a single codebase using a single language.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why are you telling me this now?
&lt;/h2&gt;

&lt;p&gt;As I mentioned in the beginning, I rewrote / refactored a lot of the code. &lt;/p&gt;

&lt;p&gt;For example, in &lt;code&gt;0.19.0&lt;/code&gt; the components were compiled to &lt;a href="https://preactjs.com/guide/v10/components#class-components" rel="noopener noreferrer"&gt;class components&lt;/a&gt;, after the rewrite they are now compiling to &lt;a href="https://preactjs.com/guide/v10/components#functional-components" rel="noopener noreferrer"&gt;functional components&lt;/a&gt;. Stores were using a hand made system now they are using signals. But the beauty of it is that it's all internal, it doesn't affect the way you write code.&lt;/p&gt;

&lt;p&gt;Previously the outputs were a single JavaScript file, now it will output different files depending on the use of &lt;code&gt;defer&lt;/code&gt; and &lt;code&gt;async&lt;/code&gt; components. It outputs now JavaScript modules, so it's easier to integrate with.&lt;/p&gt;

&lt;p&gt;The website was rebuilt from scratch to include the documentation, tutorial and the sandbox and to showcase Mint usage in the wild.&lt;/p&gt;

&lt;p&gt;Mint has better documentation, performance and features than ever, and it won't change much syntax wise in the future.&lt;/p&gt;

&lt;h2&gt;
  
  
  OK, so where can I try it out?
&lt;/h2&gt;

&lt;p&gt;I suggest that you start with the &lt;a href="https://mint-lang.com/tutorial/" rel="noopener noreferrer"&gt;online tutorial&lt;/a&gt;. It shows all the features in an interactive way, without having to install anything.&lt;/p&gt;

&lt;p&gt;After that, installing Mint is just downloading a binary file, but we have &lt;a href="https://mint-lang.com/install" rel="noopener noreferrer"&gt;other ways&lt;/a&gt;. If you have questions or just want to chat, you can join the &lt;a href="https://discord.gg/NXFUJs2" rel="noopener noreferrer"&gt;Discord server&lt;/a&gt;.&lt;/p&gt;




&lt;p&gt;Thank you for reading 🙏 and stick around for more Mint posts.&lt;/p&gt;

</description>
      <category>programming</category>
      <category>opensource</category>
      <category>news</category>
      <category>frontend</category>
    </item>
    <item>
      <title>DevBox Showcase: CSS Shadow Generator</title>
      <dc:creator>Szikszai Gusztáv</dc:creator>
      <pubDate>Tue, 28 Jun 2022 14:44:39 +0000</pubDate>
      <link>https://dev.to/gdotdesign/devbox-showcase-css-shadow-generator-4je1</link>
      <guid>https://dev.to/gdotdesign/devbox-showcase-css-shadow-generator-4je1</guid>
      <description>&lt;p&gt;Hi 👋,&lt;/p&gt;

&lt;p&gt;&lt;em&gt;This is the next post in the series showcasing tools from &lt;a href="https://www.dev-box.app" rel="noopener noreferrer"&gt;DevBox&lt;/a&gt; 🎉, an application (desktop, browser extension or web) that contains many useful tools and cheat-sheets.&lt;/em&gt;&lt;/p&gt;




&lt;p&gt;Have you ever needed a nice looking CSS shadow? DevBox has a tool to generate one! Here is a short video to about it:&lt;/p&gt;

&lt;p&gt;&lt;iframe src="https://player.vimeo.com/video/724904024" width="710" height="399"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;It has some handy gizmos to tweak the shadow:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Light position using a 2D interactive field.&lt;/li&gt;
&lt;li&gt;Color picker for the background.&lt;/li&gt;
&lt;li&gt;A toggle to so the shadow matches the background.&lt;/li&gt;
&lt;li&gt;Sliders for opacity, elevation and resolution.&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;More DevBox showcases are coming, so follow me here if you want to be notified! &lt;/p&gt;

</description>
      <category>productivity</category>
      <category>css</category>
      <category>tutorial</category>
      <category>tooling</category>
    </item>
    <item>
      <title>DevBox Showcase: JSON Explorer</title>
      <dc:creator>Szikszai Gusztáv</dc:creator>
      <pubDate>Mon, 13 Jun 2022 15:14:59 +0000</pubDate>
      <link>https://dev.to/gdotdesign/devbox-showcase-json-explorer-3g9p</link>
      <guid>https://dev.to/gdotdesign/devbox-showcase-json-explorer-3g9p</guid>
      <description>&lt;p&gt;Hi 👋,&lt;/p&gt;

&lt;p&gt;&lt;em&gt;This is the next post in the series showcasing tools from &lt;a href="https://www.dev-box.app" rel="noopener noreferrer"&gt;DevBox&lt;/a&gt; 🎉, an application (desktop, browser extension or web) that contains many useful tools and cheat-sheets.&lt;/em&gt;&lt;/p&gt;




&lt;p&gt;Did you ever had to dive deep into a JSON file? DevBox has a tool for that: you can check a JSON object interactively using a column based UI.&lt;/p&gt;

&lt;p&gt;Here is a short video about it:&lt;/p&gt;

&lt;p&gt;&lt;iframe src="https://player.vimeo.com/video/719897274" width="710" height="399"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Some notable features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Clicking on a field will open up a column on the right side with its information or it's child fields in the case of an object or array.&lt;/li&gt;
&lt;li&gt;It can detect non-standard fields such as colors and URLs.&lt;/li&gt;
&lt;li&gt;Show statistics for strings (words, lines, bytes).&lt;/li&gt;
&lt;li&gt;Show different formats of the color (RGBA, HSLA).&lt;/li&gt;
&lt;li&gt;Show parts of the URL (origin, host, path, etc...).&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;More DevBox showcases are coming, so follow me here if you want to be notified! &lt;/p&gt;

</description>
      <category>productivity</category>
      <category>tutorial</category>
      <category>tooling</category>
    </item>
    <item>
      <title>DevBox 2.1.0 🎉</title>
      <dc:creator>Szikszai Gusztáv</dc:creator>
      <pubDate>Tue, 31 May 2022 15:25:08 +0000</pubDate>
      <link>https://dev.to/gdotdesign/devbox-210-1fc9</link>
      <guid>https://dev.to/gdotdesign/devbox-210-1fc9</guid>
      <description>&lt;p&gt;Hi 👋&lt;/p&gt;

&lt;p&gt;This is a post about a &lt;a href="https://www.dev-box.app" rel="noopener noreferrer"&gt;DevBox&lt;/a&gt; release (2.1.0) 📦&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://www.dev-box.app" rel="noopener noreferrer"&gt;DevBox&lt;/a&gt; is a desktop application / browser extension / web application of 50+ useful tools for developers 👷 like generators ⚙️, converters 🔀 and more.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This release brings &lt;strong&gt;5 new tools&lt;/strong&gt; and &lt;strong&gt;5 new cheat-sheets&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  CSS Shadow Generator
&lt;/h3&gt;

&lt;p&gt;This tool allows you to generate CSS shadows (&lt;code&gt;box-shadow&lt;/code&gt;) by using intuitive controls for light position, resolution, opacity and elevation:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4ytg0uua44g5h6ebuhki.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4ytg0uua44g5h6ebuhki.jpg" alt="Screenshot of CSS Shadow Generator Tool" width="800" height="457"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Regexp Tester
&lt;/h3&gt;

&lt;p&gt;DevBox now finally has a tool to test &lt;strong&gt;regular expressions&lt;/strong&gt; which shows the matches and their positions:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzqfu2j0dcwtp0l0vrc21.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzqfu2j0dcwtp0l0vrc21.jpg" alt="Screenshot of the Regexp Tester Tool" width="800" height="457"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  JSON Explorer
&lt;/h3&gt;

&lt;p&gt;This tool allows you to explore JSON files using a multi-column interface:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;clicking an object or array in a column shows a new column with its contents&lt;/li&gt;
&lt;li&gt;clicking a value in a column shows information about it on the right side&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3eoj4xs1dj452u4344aa.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3eoj4xs1dj452u4344aa.jpg" alt="Screenshot of the JSON Explorer Tool" width="800" height="457"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Structured Code Generator
&lt;/h2&gt;

&lt;p&gt;With this tool, you can create the structure of data and populate it with fake data:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs3tp4hd69hc03r9vin0q.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs3tp4hd69hc03r9vin0q.jpg" alt="Screenshot of the Structured Data Generator Tool" width="800" height="457"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Markdown to HTML
&lt;/h3&gt;

&lt;p&gt;This tool allows you to convert Markdown to HTML:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyooka4q3h24pgviv4ayf.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyooka4q3h24pgviv4ayf.jpg" alt="Screenshot of Markdown to HTML Tool" width="800" height="457"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Cheat-Sheets
&lt;/h3&gt;

&lt;p&gt;Cheat-sheets for &lt;strong&gt;regular expressions&lt;/strong&gt;, &lt;strong&gt;Redis&lt;/strong&gt;, &lt;strong&gt;SSH&lt;/strong&gt;, &lt;strong&gt;Subversion&lt;/strong&gt; and &lt;strong&gt;URL Encoding&lt;/strong&gt; were added.&lt;/p&gt;




&lt;p&gt;For the full list of changes, check the &lt;a href="https://www.dev-box.app/changelog" rel="noopener noreferrer"&gt;changelog&lt;/a&gt; and the and &lt;a href="//www.dev-box.app"&gt;website&lt;/a&gt;.&lt;/p&gt;




&lt;p&gt;Let me know your feedback in the comments 🗨️ 🙏&lt;/p&gt;

</description>
      <category>news</category>
      <category>webdev</category>
      <category>tutorial</category>
      <category>programming</category>
    </item>
    <item>
      <title>DevBox 2.0</title>
      <dc:creator>Szikszai Gusztáv</dc:creator>
      <pubDate>Thu, 28 Apr 2022 15:18:25 +0000</pubDate>
      <link>https://dev.to/gdotdesign/devbox-20-3ja</link>
      <guid>https://dev.to/gdotdesign/devbox-20-3ja</guid>
      <description>&lt;p&gt;Hi 👋&lt;/p&gt;

&lt;p&gt;It's been a while since I posted an update here about DevBox, so this post will summarize the new things that have been added since the last few updates 😎&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;DevBox is a desktop application / browser extension / web application of useful tools for developers. If you are curious, check out the &lt;a href="https://dev.to/gdotdesign/devutils-everyday-utilities-for-the-everyday-developer-4m"&gt;introductory post&lt;/a&gt; and &lt;a href="//www.dev-box.app"&gt;website&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The two new bigger features are &lt;strong&gt;localization&lt;/strong&gt; and &lt;strong&gt;cheat-sheets&lt;/strong&gt; 🎉&lt;/p&gt;

&lt;h2&gt;
  
  
  Localization
&lt;/h2&gt;

&lt;p&gt;All labels and content has been translated to Hungarian and Spanish in addition to English:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyz634y97wo3otdnbu1u8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyz634y97wo3otdnbu1u8.png" alt="Spanish Screenshot" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Cheat-Sheets
&lt;/h2&gt;

&lt;p&gt;10 cheat-sheets of 5 package managers and 5 common command line tools:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1wwnriewnq1xnwl6zany.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1wwnriewnq1xnwl6zany.png" alt="Docker Cheat Sheet Screenshot" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;More cheat-sheets are coming in future updates 🚧&lt;/p&gt;

&lt;h2&gt;
  
  
  New Tools
&lt;/h2&gt;

&lt;p&gt;2 new tools were added in the last releases.&lt;/p&gt;

&lt;h3&gt;
  
  
  Code Snippet to Image
&lt;/h3&gt;

&lt;p&gt;This tool allows you to save an image of a code snippet which can be shared online:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhrdp2hq08w2augfrxa89.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhrdp2hq08w2augfrxa89.png" alt="Code Snippet to Image Screenshot" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Color Information
&lt;/h3&gt;

&lt;p&gt;This color gives information about a color, shows it's parts in different color spaces, CSS representations and related colors (complementary, analogous, etc...):&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzsn7fwos41523289i9aw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzsn7fwos41523289i9aw.png" alt="Color Information Screenshot" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;For the full list of changes, check the &lt;a href="https://www.dev-box.app/changelog" rel="noopener noreferrer"&gt;changelog&lt;/a&gt; and the and &lt;a href="//www.dev-box.app"&gt;website&lt;/a&gt;.&lt;/p&gt;




&lt;p&gt;Let me know your feedback in the comments 🗨️ 🙏&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>news</category>
      <category>productivity</category>
    </item>
    <item>
      <title>DevBox 1.4.0 &amp; 1.5.0 🎉</title>
      <dc:creator>Szikszai Gusztáv</dc:creator>
      <pubDate>Thu, 17 Feb 2022 17:31:27 +0000</pubDate>
      <link>https://dev.to/gdotdesign/devbox-140-150-5b78</link>
      <guid>https://dev.to/gdotdesign/devbox-140-150-5b78</guid>
      <description>&lt;p&gt;Hi 👋&lt;/p&gt;

&lt;p&gt;It's been a while since I posted an update here, so I'm excited to announce that &lt;a href="//www.dev-box.app"&gt;DevBox&lt;/a&gt; 1.4.0 and 1.5.0 is out! &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;DevBox is a desktop application / browser extension / web application of useful tools for developers. If you are curious, check out the &lt;a href="https://dev.to/gdotdesign/devutils-everyday-utilities-for-the-everyday-developer-4m"&gt;introductory post&lt;/a&gt; and &lt;a href="//www.dev-box.app"&gt;website&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Syntax Highlighting
&lt;/h2&gt;

&lt;p&gt;All content in textareas are syntax highlighted (using Monaco Editor) when appropriate 🎉&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcnu14h4q5fnf57w1xr16.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcnu14h4q5fnf57w1xr16.png" alt="Syntax Highlighting" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The old plain textareas are still an option which can be toggled in the settings page.&lt;/p&gt;

&lt;h2&gt;
  
  
  New Dashboard
&lt;/h2&gt;

&lt;p&gt;The dashboard has been redesigned, instead of colors there are now icons for each tool:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwz62eacaa3q04bwy75d0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwz62eacaa3q04bwy75d0.png" alt="Dashboard" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This gives the dashboard a modern unifined look.&lt;/p&gt;

&lt;h2&gt;
  
  
  New Tools
&lt;/h2&gt;

&lt;p&gt;There are &lt;strong&gt;3 new tools&lt;/strong&gt; in these releases:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Added &lt;strong&gt;CSS Formatter&lt;/strong&gt; tool.&lt;/li&gt;
&lt;li&gt;Added &lt;strong&gt;CSS Minifier&lt;/strong&gt; tool.&lt;/li&gt;
&lt;li&gt;Added &lt;strong&gt;Unit Converter&lt;/strong&gt; tool.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnpe8bmgsto8gchm525s8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnpe8bmgsto8gchm525s8.png" alt="Unit Converter Tool" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Behind the Scenes
&lt;/h2&gt;

&lt;p&gt;Development wise, the hardest part here was to implement Monaco Editor. Since it uses its own loader, there was a conflict with third party JavaScript.&lt;/p&gt;

&lt;p&gt;There is no good way of resolving this unless we use ECMAScript modules, which is not really an option for DevBox.&lt;/p&gt;

&lt;p&gt;The solution here was to manually patch the third party JavaScript.&lt;/p&gt;




&lt;p&gt;Let me know your feedback in the comments 🗨️ 🙏&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>tutorial</category>
      <category>startup</category>
    </item>
    <item>
      <title>DevBox Showcase: Image Extractor</title>
      <dc:creator>Szikszai Gusztáv</dc:creator>
      <pubDate>Tue, 23 Nov 2021 05:16:11 +0000</pubDate>
      <link>https://dev.to/gdotdesign/devbox-showcase-image-extractor-5hgi</link>
      <guid>https://dev.to/gdotdesign/devbox-showcase-image-extractor-5hgi</guid>
      <description>&lt;p&gt;Hi 👋,&lt;/p&gt;

&lt;p&gt;This is the fifth post in the series showcasing tools from &lt;a href="https://www.dev-box.app" rel="noopener noreferrer"&gt;DevBox&lt;/a&gt; 🎉, an application (desktop, browser extension or web) packed with everything that every developer needs.&lt;/p&gt;




&lt;p&gt;DevBox now has a tool to extract images from websites, here is a short video on how to use it.&lt;/p&gt;

&lt;p&gt;&lt;iframe src="https://player.vimeo.com/video/648887011" width="710" height="399"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Or you can follow this step-by-step tutorial. &lt;/p&gt;

&lt;p&gt;Once DevBox is opened search for the tool and click on its card:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fky7oq8wxefat9rf8sytw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fky7oq8wxefat9rf8sytw.png" alt="Image Extractor Card" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It will show you the interface:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frgyb6p122t67gjcvl1t2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frgyb6p122t67gjcvl1t2.png" alt="Image Extractor Interface" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After filling in the URL and clicking on the button you will see all images on the page in a grid:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxdab6vsrqs57xy62e0j9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxdab6vsrqs57xy62e0j9.png" alt="Images Grid" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can now download the images one by one.&lt;/p&gt;




&lt;p&gt;More DevBox showcases are coming, so follow me here if you want to be notified! &lt;/p&gt;

</description>
      <category>productivity</category>
      <category>tutorial</category>
      <category>image</category>
      <category>scrape</category>
    </item>
    <item>
      <title>DevBox 1.3.0 🎉</title>
      <dc:creator>Szikszai Gusztáv</dc:creator>
      <pubDate>Tue, 16 Nov 2021 16:33:58 +0000</pubDate>
      <link>https://dev.to/gdotdesign/devbox-130-3n35</link>
      <guid>https://dev.to/gdotdesign/devbox-130-3n35</guid>
      <description>&lt;p&gt;Hi 👋&lt;/p&gt;

&lt;p&gt;I'm excited to announce that &lt;a href="//www.dev-box.app"&gt;DevBox&lt;/a&gt; 1.3.0 is out! It's a big milestone for the project, with &lt;strong&gt;4 new tools&lt;/strong&gt;, bug fixes and the &lt;strong&gt;web application&lt;/strong&gt;.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;DevBox is a desktop application / browser extension / web application of useful tools for developers. If you are curious, check out the &lt;a href="https://dev.to/gdotdesign/devutils-everyday-utilities-for-the-everyday-developer-4m"&gt;introductory post&lt;/a&gt; and &lt;a href="//www.dev-box.app"&gt;website&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Web Application
&lt;/h2&gt;

&lt;p&gt;DevBox is now available as a web application on &lt;a href="https://app.dev-box.app" rel="noopener noreferrer"&gt;app.dev-box.app&lt;/a&gt; with &lt;strong&gt;10 tools to use for free&lt;/strong&gt; 🎉 the other &lt;strong&gt;30 tools&lt;/strong&gt; that can be used with a subscription.&lt;/p&gt;

&lt;h2&gt;
  
  
  New Tools
&lt;/h2&gt;

&lt;p&gt;There are &lt;strong&gt;4 new tools&lt;/strong&gt; in this release:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Added &lt;strong&gt;Color Contrast Calculator&lt;/strong&gt; tool.&lt;/li&gt;
&lt;li&gt;Added &lt;strong&gt;Data URI Generator&lt;/strong&gt; tool.&lt;/li&gt;
&lt;li&gt;Added &lt;strong&gt;Hash Generator&lt;/strong&gt; tool.&lt;/li&gt;
&lt;li&gt;Added &lt;strong&gt;HMAC Hash Generator&lt;/strong&gt; tool.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;My favorite new tool is the &lt;strong&gt;Color Contrast Calculator&lt;/strong&gt; with which you can calculate if the given text is readable on a background:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F44f33nxf79o7xdftup1g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F44f33nxf79o7xdftup1g.png" alt="Color Contrast Calculator" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Behind the Scenes
&lt;/h2&gt;

&lt;p&gt;Development wise this release had its challenges:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Make sure that the application works in different platforms / environments (web application, desktop applications, extensions)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I needed to separate the source code for the core of the application - basically the tools. Once that done, I could build separate versions of it: &lt;strong&gt;desktop application / extension&lt;/strong&gt;, &lt;strong&gt;public web application (with the free tools)&lt;/strong&gt;, &lt;strong&gt;private web application (all tools)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Make sure that the web application loads fast.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Previously the application's size wasn't a factor since all the assets were bundled for the desktop application.&lt;/p&gt;

&lt;p&gt;I refactored the code to only load scripts when they are needed. This makes the initial loading times fast. Once a script is loaded then it's cached, so future uses are instantaneous. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Allow users to subscribe to the application.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This was the biggest part. I've built a web server in Crystal which is basically serves the public application (free tools only) when logged out and the private application (all tools) when logged in.&lt;/p&gt;

&lt;p&gt;Payment wise I've implemented Stripes checkout sessions - they provide a nice UI to purchase and manage subscriptions.&lt;/p&gt;

&lt;p&gt;Users don't need to have passwords instead they log in with a link sent through an email which they used to pay for the subscription.&lt;/p&gt;




&lt;p&gt;Let me know your feedback in the comments 🗨️ 🙏&lt;/p&gt;

</description>
      <category>news</category>
      <category>productivity</category>
      <category>startup</category>
      <category>webdev</category>
    </item>
    <item>
      <title>DevBox Showcase: CRON Explorer</title>
      <dc:creator>Szikszai Gusztáv</dc:creator>
      <pubDate>Wed, 03 Nov 2021 12:57:14 +0000</pubDate>
      <link>https://dev.to/gdotdesign/devbox-showcase-cron-explorer-6df</link>
      <guid>https://dev.to/gdotdesign/devbox-showcase-cron-explorer-6df</guid>
      <description>&lt;p&gt;Hi 👋,&lt;/p&gt;

&lt;p&gt;This is the fourth post in the series showcasing tools from &lt;a href="https://www.dev-box.app" rel="noopener noreferrer"&gt;DevBox&lt;/a&gt; 🎉, a desktop application or browser extension packed with everything that every developer needs.&lt;/p&gt;




&lt;p&gt;DevBox has a &lt;strong&gt;CRON Explorer tool&lt;/strong&gt;, which is useful for checking &lt;a href="https://en.wikipedia.org/wiki/Cron#CRON_expression" rel="noopener noreferrer"&gt;CRON Expressions&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Once DevBox is opened, click on its card:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2btc5opsdq4oe5gtiyob.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2btc5opsdq4oe5gtiyob.png" alt="Image description" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It will show you the interface:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5knf0xa1cdl07ct7j0a5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5knf0xa1cdl07ct7j0a5.png" alt="Image description" width="800" height="687"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the &lt;code&gt;Expression&lt;/code&gt; section you can write your CRON expression and will show a readable version of it.&lt;/li&gt;
&lt;li&gt;In the &lt;code&gt;Next 10 Occurences - Calendar&lt;/code&gt; section you can see the dates of the next 10 occurrences of the expression.&lt;/li&gt;
&lt;li&gt;In the &lt;code&gt;Next 10 Occurences&lt;/code&gt; section you can see the next 10 exact occurrences of the expression.&lt;/li&gt;
&lt;li&gt;In the &lt;code&gt;Examples&lt;/code&gt; section you can see and click on some basic CRON expressions. &lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;You can still buy DevBox &lt;a href="https://gdotdesign.gumroad.com/l/devbox/earlybird" rel="noopener noreferrer"&gt;here&lt;/a&gt; for &lt;strong&gt;a lifetime price of &lt;del&gt;$25&lt;/del&gt; $20 💰&lt;/strong&gt;, get it while it's available!&lt;/p&gt;

&lt;p&gt;More DevBox showcases are coming, so follow me here if you want to be notified!&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>tutorial</category>
      <category>json</category>
      <category>cron</category>
    </item>
    <item>
      <title>DevBox 1.2.0 🎉</title>
      <dc:creator>Szikszai Gusztáv</dc:creator>
      <pubDate>Sun, 31 Oct 2021 08:45:04 +0000</pubDate>
      <link>https://dev.to/gdotdesign/devbox-120-39p3</link>
      <guid>https://dev.to/gdotdesign/devbox-120-39p3</guid>
      <description>&lt;p&gt;Hi 👋&lt;/p&gt;

&lt;p&gt;I'm happy to announce that &lt;a href="//www.dev-box.app"&gt;DevBox&lt;/a&gt; 1.2.0 is out! It adds &lt;strong&gt;6 new tools&lt;/strong&gt; and bug fixes!&lt;/p&gt;

&lt;p&gt;DevBox is a desktop application / browser extension of useful tools for developers. If you are curious, check out the &lt;a href="https://dev.to/gdotdesign/devutils-everyday-utilities-for-the-everyday-developer-4m"&gt;introductory post&lt;/a&gt; and &lt;a href="//www.dev-box.app"&gt;website&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;You can read full change log below:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Fixed some tools not working in the extension.&lt;/li&gt;
&lt;li&gt;Fixed a bug in PDF merger tool.&lt;/li&gt;
&lt;li&gt;HTML previews background is defaults to white and full HTMLs can be previewed.&lt;/li&gt;
&lt;li&gt;Added search input to search for tools.&lt;/li&gt;
&lt;li&gt;Added &lt;strong&gt;HTML To Markdown&lt;/strong&gt; tool.&lt;/li&gt;
&lt;li&gt;Added &lt;strong&gt;HTML To Text&lt;/strong&gt; tool.&lt;/li&gt;
&lt;li&gt;Added &lt;strong&gt;QueryString Parser&lt;/strong&gt; tool.&lt;/li&gt;
&lt;li&gt;Added &lt;strong&gt;URL Parser&lt;/strong&gt; tool.&lt;/li&gt;
&lt;li&gt;Added &lt;strong&gt;Image Extractor&lt;/strong&gt; tool.&lt;/li&gt;
&lt;li&gt;Added &lt;strong&gt;SVG Extractor&lt;/strong&gt; tool.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You can still buy DevBox &lt;a href="https://gdotdesign.gumroad.com/l/devbox/earlybird" rel="noopener noreferrer"&gt;here&lt;/a&gt; for &lt;strong&gt;a lifetime price of &lt;del&gt;$25&lt;/del&gt; $20 💰&lt;/strong&gt; - with these new tools included.&lt;/p&gt;

</description>
      <category>news</category>
      <category>productivity</category>
      <category>startup</category>
      <category>development</category>
    </item>
  </channel>
</rss>
