{"id":283,"date":"2025-02-27T14:47:34","date_gmt":"2025-02-27T14:47:34","guid":{"rendered":"https:\/\/boyan-tabakov.xyz\/?p=283"},"modified":"2025-02-27T14:49:10","modified_gmt":"2025-02-27T14:49:10","slug":"how-to-use-boyans-online-python-interpreter","status":"publish","type":"post","link":"https:\/\/boyan-tabakov.xyz\/index.php\/2025\/02\/27\/how-to-use-boyans-online-python-interpreter\/","title":{"rendered":"How To use Boyan&#8217;s Online Python Interpreter"},"content":{"rendered":"\n<p>Guide for version 0.4.3 Beta  (if not updated, this guide applies still to current version)<\/p>\n\n\n\n<p>Opening Boyan&#8217;s Online Python interpreter looks like this, for the first time:<br><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"626\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-1024x626.png\" alt=\"\" class=\"wp-image-284\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-1024x626.png 1024w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-300x183.png 300w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-768x469.png 768w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-1536x938.png 1536w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image.png 1601w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p>Scrolling down you will see the terminal that prints the version number:<br><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"339\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-1-1024x339.png\" alt=\"\" class=\"wp-image-285\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-1-1024x339.png 1024w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-1-300x99.png 300w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-1-768x254.png 768w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-1-1536x508.png 1536w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-1.png 1586w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p>There is an option to run Linux, but it can be ignored, as it does not work currently.<\/p>\n\n\n\n<p class=\"has-large-font-size\">The Code Editor<\/p>\n\n\n\n<p>The code editor is based on the VS Code editor, Monaco.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"427\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-2-1024x427.png\" alt=\"\" class=\"wp-image-286\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-2-1024x427.png 1024w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-2-300x125.png 300w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-2-768x320.png 768w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-2-1536x641.png 1536w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-2.png 1570w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p>By default, you will get a script.py with the code above.<\/p>\n\n\n\n<p>Let&#8217;s go over the tab system.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"763\" height=\"280\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-3.png\" alt=\"\" class=\"wp-image-287\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-3.png 763w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-3-300x110.png 300w\" sizes=\"auto, (max-width: 763px) 100vw, 763px\" \/><\/figure>\n<\/div>\n\n\n<p>We have zoomed it in for this demonstration.<\/p>\n\n\n\n<p>You can click the + icon on the right to create a new tab.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"547\" height=\"393\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-4.png\" alt=\"\" class=\"wp-image-288\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-4.png 547w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-4-300x216.png 300w\" sizes=\"auto, (max-width: 547px) 100vw, 547px\" \/><\/figure>\n<\/div>\n\n\n<p>Clicking it will create a new tab that you can then switch over to.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"776\" height=\"667\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-5.png\" alt=\"\" class=\"wp-image-289\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-5.png 776w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-5-300x258.png 300w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-5-768x660.png 768w\" sizes=\"auto, (max-width: 776px) 100vw, 776px\" \/><\/figure>\n<\/div>\n\n\n<p>Each tab will come with the default pregenerated code. It can be erased quickly with <code>Ctrl + A<\/code> then <code>Backspace<\/code>.<\/p>\n\n\n\n<p>This is how it looks like with the code erased:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"773\" height=\"667\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-6.png\" alt=\"\" class=\"wp-image-290\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-6.png 773w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-6-300x259.png 300w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-6-768x663.png 768w\" sizes=\"auto, (max-width: 773px) 100vw, 773px\" \/><\/figure>\n<\/div>\n\n\n<p>You can hover over a tab to rename it or close it.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"557\" height=\"360\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-7.png\" alt=\"\" class=\"wp-image-291\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-7.png 557w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-7-300x194.png 300w\" sizes=\"auto, (max-width: 557px) 100vw, 557px\" \/><\/figure>\n<\/div>\n\n\n<p>The button that looks like a text cursor is a rename button, and the X button closes the tab.<\/p>\n\n\n\n<p>Closing a tab deletes the code inside it permanently. You will be shown a warning before the tab is deleted.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"620\" height=\"444\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-8.png\" alt=\"\" class=\"wp-image-292\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-8.png 620w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-8-300x215.png 300w\" sizes=\"auto, (max-width: 620px) 100vw, 620px\" \/><\/figure>\n<\/div>\n\n\n<p>Clicking on the rename button will take you to this screen:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"545\" height=\"377\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-9.png\" alt=\"\" class=\"wp-image-293\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-9.png 545w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-9-300x208.png 300w\" sizes=\"auto, (max-width: 545px) 100vw, 545px\" \/><\/figure>\n<\/div>\n\n\n<p>You can rename your file here and click Rename button to finalize the changes.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"427\" height=\"308\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-10.png\" alt=\"\" class=\"wp-image-294\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-10.png 427w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-10-300x216.png 300w\" sizes=\"auto, (max-width: 427px) 100vw, 427px\" \/><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"493\" height=\"270\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-11.png\" alt=\"\" class=\"wp-image-295\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-11.png 493w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-11-300x164.png 300w\" sizes=\"auto, (max-width: 493px) 100vw, 493px\" \/><\/figure>\n<\/div>\n\n\n<p>You can also drag and drop tabs to change their order, as shown below.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"493\" height=\"270\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-11.png\" alt=\"\" class=\"wp-image-295\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-11.png 493w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-11-300x164.png 300w\" sizes=\"auto, (max-width: 493px) 100vw, 493px\" \/><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"583\" height=\"375\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-12.png\" alt=\"\" class=\"wp-image-296\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-12.png 583w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-12-300x193.png 300w\" sizes=\"auto, (max-width: 583px) 100vw, 583px\" \/><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"517\" height=\"296\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-13.png\" alt=\"\" class=\"wp-image-297\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-13.png 517w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-13-300x172.png 300w\" sizes=\"auto, (max-width: 517px) 100vw, 517px\" \/><\/figure>\n<\/div>\n\n\n<p>Let&#8217;s cover some right click functions too. (You can right click on mobile device by holding down your finger on the editor)<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"460\" height=\"481\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-14.png\" alt=\"\" class=\"wp-image-298\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-14.png 460w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-14-287x300.png 287w\" sizes=\"auto, (max-width: 460px) 100vw, 460px\" \/><\/figure>\n<\/div>\n\n\n<p>Right clicking shows you this menu. You have Undo and Redo, and some default editor functions, and the 3 I added:<\/p>\n\n\n\n<p>You can select code and search on Google  to get an idea of what it means. Here is an example:<\/p>\n\n\n\n<figure class=\"wp-block-video aligncenter\"><video height=\"632\" style=\"aspect-ratio: 1060 \/ 632;\" width=\"1060\" controls src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/20250226-1754-45.1152228.mp4\"><\/video><\/figure>\n\n\n\n<p>Searching StackOverflow is similar in a way too. Here is an example:<\/p>\n\n\n\n<figure class=\"wp-block-video aligncenter\"><video height=\"630\" style=\"aspect-ratio: 1056 \/ 630;\" width=\"1056\" controls src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/20250226-1756-44.9205708.mp4\"><\/video><\/figure>\n\n\n\n<p>StackOverflow should be used to search up potentially buggy code. <\/p>\n\n\n\n<p>You can also change your font from a variety of fonts in the editor. Simply right click and click Change Font.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"387\" height=\"382\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-15.png\" alt=\"\" class=\"wp-image-302\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-15.png 387w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-15-300x296.png 300w\" sizes=\"auto, (max-width: 387px) 100vw, 387px\" \/><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"673\" height=\"244\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-16.png\" alt=\"\" class=\"wp-image-303\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-16.png 673w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-16-300x109.png 300w\" sizes=\"auto, (max-width: 673px) 100vw, 673px\" \/><\/figure>\n<\/div>\n\n\n<p>There are a couple available. We may add the ability to import your own custom fonts in the future.<\/p>\n\n\n\n<p>Below are examples of the fonts:<\/p>\n\n\n\n<p>Default Monospace font:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"584\" height=\"320\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-17.png\" alt=\"\" class=\"wp-image-304\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-17.png 584w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-17-300x164.png 300w\" sizes=\"auto, (max-width: 584px) 100vw, 584px\" \/><\/figure>\n<\/div>\n\n\n<p>Fira Code:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"571\" height=\"329\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-18.png\" alt=\"\" class=\"wp-image-305\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-18.png 571w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-18-300x173.png 300w\" sizes=\"auto, (max-width: 571px) 100vw, 571px\" \/><\/figure>\n<\/div>\n\n\n<p>Source Code Pro:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"538\" height=\"293\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-19.png\" alt=\"\" class=\"wp-image-306\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-19.png 538w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-19-300x163.png 300w\" sizes=\"auto, (max-width: 538px) 100vw, 538px\" \/><\/figure>\n<\/div>\n\n\n<p>JetBrains Mono:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"683\" height=\"389\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-20.png\" alt=\"\" class=\"wp-image-307\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-20.png 683w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-20-300x171.png 300w\" sizes=\"auto, (max-width: 683px) 100vw, 683px\" \/><\/figure>\n<\/div>\n\n\n<p>That&#8217;s all!<\/p>\n\n\n\n<p class=\"has-medium-font-size\">Executing Code:<\/p>\n\n\n\n<p>To execute code, simply click on the Run Code button at the top and scroll down to the terminal:<\/p>\n\n\n\n<figure class=\"wp-block-video aligncenter\"><video height=\"636\" style=\"aspect-ratio: 1058 \/ 636;\" width=\"1058\" controls src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/20250226-1803-05.4830362.mp4\"><\/video><\/figure>\n\n\n\n<p>If you want a Python REPL (Read, Evaluate, Print, Loop) click on the Get Interactive terminal at the top of the page:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"579\" height=\"233\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-21.png\" alt=\"\" class=\"wp-image-309\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-21.png 579w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-21-300x121.png 300w\" sizes=\"auto, (max-width: 579px) 100vw, 579px\" \/><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"428\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-22-1024x428.png\" alt=\"\" class=\"wp-image-310\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-22-1024x428.png 1024w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-22-300x126.png 300w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-22-768x321.png 768w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-22.png 1035w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p>If you want to share your code via  URL (only recommended for short code as it encodes the code in the URL) you can use the Make URL option.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"966\" height=\"343\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-23.png\" alt=\"\" class=\"wp-image-311\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-23.png 966w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-23-300x107.png 300w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-23-768x273.png 768w\" sizes=\"auto, (max-width: 966px) 100vw, 966px\" \/><\/figure>\n<\/div>\n\n\n<p>You will get a notification at the top left telling you that the code has been copied over.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"530\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-24-1024x530.png\" alt=\"\" class=\"wp-image-312\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-24-1024x530.png 1024w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-24-300x155.png 300w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-24-768x398.png 768w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-24.png 1041w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p>Here is an example of how this can look like:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>https:\/\/boyan-tabakov.xyz\/python3-interpreter\/index.html?runcode=%20!CMNT!Enter%20some%20Python3%20code%20here%20!CL!-)\\nprint(\"Hello,%20world!\")\\n%20!CMNT!A%20basic%20for%20loop.\\nfor%20i%20in%20range(5)!CL!\\n%20%20%20%20print(\"A%20for%20loop!\"%20!ADD!%20str(i))\\n%20!CMNT!And%20some%20basic%20user%20input.\\nuser%20!EQ!%20input(\"What!SQ!s%20your%20name!QM!%20&gt;&gt;&gt;%20\")\\nprint(\"Oh,%20hello%20\"%20!ADD!%20user)<\/code><\/pre>\n\n\n\n<p>This is for the default code:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Enter some Python3 code here :-)\nprint(\"Hello, world!\")\n# A basic for loop.\nfor i in range(5):\n    print(\"A for loop!\" + str(i))\n# And some basic user input.\nuser = input(\"What's your name? &gt;&gt;&gt; \")\nprint(\"Oh, hello \" + user)<\/code><\/pre>\n\n\n\n<p>Copying and pasting long codes may result in the server not allowing you to see the code. The recommended way to view and share long code is to download it via the Download my code option located on the top right.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"880\" height=\"382\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-25.png\" alt=\"\" class=\"wp-image-313\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-25.png 880w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-25-300x130.png 300w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-25-768x333.png 768w\" sizes=\"auto, (max-width: 880px) 100vw, 880px\" \/><\/figure>\n<\/div>\n\n\n<p>You can also click upload code and that will upload code to the website. Note that uploaded code will replace the current tab contents (Will be fixed in an update very soon!) so open a new tab. This will be saved to your current session in your browser. Don&#8217;t worry, your code will still be there after you close and reopen the browser!<\/p>\n\n\n\n<p>Here is an example video of downloading code:<\/p>\n\n\n\n<figure class=\"wp-block-video aligncenter\"><video height=\"678\" style=\"aspect-ratio: 1060 \/ 678;\" width=\"1060\" controls src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/20250226-1827-17.9204174.mp4\"><\/video><\/figure>\n\n\n\n<p>And an example of uploading:<\/p>\n\n\n\n<figure class=\"wp-block-video aligncenter\"><video height=\"674\" style=\"aspect-ratio: 1056 \/ 674;\" width=\"1056\" controls src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/20250226-1829-13.8483342.mp4\"><\/video><\/figure>\n\n\n\n<p>You can also install modules. Installing modules can be done with the Enter modules to install section.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"278\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-26-1024x278.png\" alt=\"\" class=\"wp-image-316\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-26-1024x278.png 1024w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-26-300x82.png 300w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-26-768x209.png 768w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-26.png 1052w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p>An example is Matplotlib. Here is an example of a plotted graph on Matplotlib (Ignore the errors, this is simply how PyScript works): <\/p>\n\n\n\n<figure class=\"wp-block-video aligncenter\"><video height=\"674\" style=\"aspect-ratio: 1062 \/ 674;\" width=\"1062\" controls src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/20250226-1840-11.1512979.mp4\"><\/video><\/figure>\n\n\n\n<p>That&#8217;s all! Note that not all Python modules are supported as this is a web version. We will introduce features later on to improve the overall quality of the interpreter.<\/p>\n\n\n\n<p class=\"has-medium-font-size\">Customization<\/p>\n\n\n\n<p>Boyan&#8217;s Online Python Interpreter supports light and dark mode. Here are some examples:<\/p>\n\n\n\n<p>Dark mode (default):<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"612\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-27-1024x612.png\" alt=\"\" class=\"wp-image-318\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-27-1024x612.png 1024w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-27-300x179.png 300w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-27-768x459.png 768w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-27.png 1061w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p>Light mode:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"548\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-28-1024x548.png\" alt=\"\" class=\"wp-image-319\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-28-1024x548.png 1024w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-28-300x160.png 300w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-28-768x411.png 768w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-28.png 1062w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p>The transition between dark and light mode:<\/p>\n\n\n\n<figure class=\"wp-block-video aligncenter\"><video height=\"634\" style=\"aspect-ratio: 1062 \/ 634;\" width=\"1062\" controls src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/20250226-1846-22.1369985.mp4\"><\/video><\/figure>\n\n\n\n<p>There is also a customize link at the top left that opens a customization menu:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"579\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-29-1024x579.png\" alt=\"\" class=\"wp-image-321\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-29-1024x579.png 1024w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-29-300x170.png 300w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-29-768x434.png 768w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-29.png 1031w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"983\" height=\"529\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-30.png\" alt=\"\" class=\"wp-image-322\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-30.png 983w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-30-300x161.png 300w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-30-768x413.png 768w\" sizes=\"auto, (max-width: 983px) 100vw, 983px\" \/><\/figure>\n<\/div>\n\n\n<p>There is a matrix background option, that shows a matrix rain that looks like this:<\/p>\n\n\n\n<figure class=\"wp-block-video aligncenter\"><video height=\"566\" style=\"aspect-ratio: 1060 \/ 566;\" width=\"1060\" controls src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/20250226-1848-52.4134783.mp4\"><\/video><\/figure>\n\n\n\n<p>The bigger your screen, the better the effect.<\/p>\n\n\n\n<p>There is also the option for a custom theme that can affect both light and dark mode. First toggle this switch in the customize editor:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"945\" height=\"519\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-31.png\" alt=\"\" class=\"wp-image-324\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-31.png 945w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-31-300x165.png 300w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-31-768x422.png 768w\" sizes=\"auto, (max-width: 945px) 100vw, 945px\" \/><\/figure>\n<\/div>\n\n\n<p>You will see the following options appear:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"931\" height=\"506\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-32.png\" alt=\"\" class=\"wp-image-325\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-32.png 931w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-32-300x163.png 300w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-32-768x417.png 768w\" sizes=\"auto, (max-width: 931px) 100vw, 931px\" \/><\/figure>\n<\/div>\n\n\n<p>For backgrounds you have 3 types:<\/p>\n\n\n\n<p>A gradient background: Pick between 2 gradients or simply pick the same color twice to show a solid color background.<br>An Image background: Use a direct image url (example go to Pexels and choose an image you like and right click copy link to image) OR upload your image.<br>A video background: Use a Youtube video or other online video in .mp4 or supported formats to show a video background.<br><\/p>\n\n\n\n<p>How to use the gradient background video:<\/p>\n\n\n\n<figure class=\"wp-block-video aligncenter\"><video height=\"566\" style=\"aspect-ratio: 1060 \/ 566;\" width=\"1060\" controls src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/20250226-1854-52.7582244.mp4\"><\/video><\/figure>\n\n\n\n<p>How to use image background video:<\/p>\n\n\n\n<figure class=\"wp-block-video aligncenter\"><video height=\"628\" style=\"aspect-ratio: 1062 \/ 628;\" width=\"1062\" controls src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/20250226-1857-32.9499517.mp4\"><\/video><\/figure>\n\n\n\n<p>To improve text visibility enable this option as shown in the video below:<\/p>\n\n\n\n<figure class=\"wp-block-video aligncenter\"><video height=\"628\" style=\"aspect-ratio: 1056 \/ 628;\" width=\"1056\" controls src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/20250226-1901-06.5797614.mp4\"><\/video><\/figure>\n\n\n\n<p>How to use a video background:<\/p>\n\n\n\n<figure class=\"wp-block-video aligncenter\"><video height=\"720\" style=\"aspect-ratio: 1280 \/ 720;\" width=\"1280\" controls src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/Video-Showcase.mp4\"><\/video><\/figure>\n\n\n\n<p>How to use Custom CSS option:<\/p>\n\n\n\n<figure class=\"wp-block-video aligncenter\"><video height=\"1080\" style=\"aspect-ratio: 1920 \/ 1080;\" width=\"1920\" controls src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/output.mp4\"><\/video><\/figure>\n\n\n\n<p>There is also tutorials which can be accessed here: <\/p>\n\n\n\n<p><a href=\"https:\/\/boyan-tabakov.xyz\/python3-interpreter\/tutorial\/index.html\">https:\/\/boyan-tabakov.xyz\/python3-interpreter\/tutorial\/index.html<\/a><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"837\" height=\"478\" src=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-33.png\" alt=\"\" class=\"wp-image-333\" srcset=\"https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-33.png 837w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-33-300x171.png 300w, https:\/\/boyan-tabakov.xyz\/wp-content\/uploads\/2025\/02\/image-33-768x439.png 768w\" sizes=\"auto, (max-width: 837px) 100vw, 837px\" \/><\/figure>\n<\/div>\n\n\n<p>You can practice and complete activities and learn about Python, all written by me. If you have completed it by clicking the &#8220;I&#8217;m done with this section!&#8221; button you can mark it off and it will show a green tick on each section.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"> That&#8217;s all! <\/p>\n\n\n\n<p>If you want any more features added to Boyan&#8217;s Online Python Interpreter or you have any bug reports, questions, or anything else, email me: questions@boyan-tabakov.xyz<\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Guide for version 0.4.3 Beta (if not updated, this guide applies still to current version) Opening Boyan&#8217;s Online Python interpreter looks like this, for the first time: Scrolling down you will see the terminal that prints the version number: There is an option to run Linux, but it can be ignored, as it does not &#8230; <a title=\"How To use Boyan&#8217;s Online Python Interpreter\" class=\"read-more\" href=\"https:\/\/boyan-tabakov.xyz\/index.php\/2025\/02\/27\/how-to-use-boyans-online-python-interpreter\/\" aria-label=\"Read more about How To use Boyan&#8217;s Online Python Interpreter\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":338,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[14,11],"tags":[10],"class_list":["post-283","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-my-projects","category-my-python-interpreter","tag-boyan-online-python-interpreter"],"_links":{"self":[{"href":"https:\/\/boyan-tabakov.xyz\/index.php\/wp-json\/wp\/v2\/posts\/283","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/boyan-tabakov.xyz\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/boyan-tabakov.xyz\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/boyan-tabakov.xyz\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/boyan-tabakov.xyz\/index.php\/wp-json\/wp\/v2\/comments?post=283"}],"version-history":[{"count":3,"href":"https:\/\/boyan-tabakov.xyz\/index.php\/wp-json\/wp\/v2\/posts\/283\/revisions"}],"predecessor-version":[{"id":336,"href":"https:\/\/boyan-tabakov.xyz\/index.php\/wp-json\/wp\/v2\/posts\/283\/revisions\/336"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/boyan-tabakov.xyz\/index.php\/wp-json\/wp\/v2\/media\/338"}],"wp:attachment":[{"href":"https:\/\/boyan-tabakov.xyz\/index.php\/wp-json\/wp\/v2\/media?parent=283"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/boyan-tabakov.xyz\/index.php\/wp-json\/wp\/v2\/categories?post=283"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/boyan-tabakov.xyz\/index.php\/wp-json\/wp\/v2\/tags?post=283"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}