Files
ogs-site/en/news/index.html

269 lines
9.7 KiB
HTML

<!DOCTYPE html>
<html>
<meta charset="utf-8">
<head>
<link rel="stylesheet" href="../../style.css">
</head>
<body>
<script data-goatcounter="https://services.opengamestudio.org:443/count" async src="//services.opengamestudio.org:443/count.js"></script>
<div id="header">
<div class="header2">
<div class="menu">
<a href="../../en/news/index.html">News</a>
<a href="../../en/game/index.html">Games</a>
<a href="../../en/tool/index.html">Tools</a>
<a href="../../en/page/about.html">About</a>
</div>
<div id="lang">
<a href="../../en/news/index.html">EN</a>
<a href="../../ru/news/index.html">RU</a>
</div>
<div class="clear"></div>
</div>
</div>
<center>
<h1>News</h1>
<div class="news_item">
<h2 class="news_item_title">
<a href="gb-git-android.html">Git Budget on Android uses Git</a>
</h2>
<p class="news_item_date">
2026-05-31
</p>
<div class="news_item_contents">
<video controls width="700">
<source src="../../vid/2026-06_gb-git-android.mp4" type="video/mp4"/>
</video>
<h1 id="may">May</h1>
<p>Initially I wanted to display the history of spendings in Git Budget. However, the
history depends on data, and that should have been done in Git. That's why
in May I implemented pulling/pushing of a fixed repository.</p>
<h1 id="june">June</h1>
<p>In June I plan to implement pulling/pushing on Desktop.
. . .</p>
</div>
<div class="news_item_more">
<a href="gb-git-android.html">Continue reading</a>
</div>
</div>
<div class="news_item">
<h2 class="news_item_title">
<a href="git-budget-qt.html">Git Budget is now finally a Qt application, too</a>
</h2>
<p class="news_item_date">
2026-05-01
</p>
<div class="news_item_contents">
<video controls width="700">
<source src="../../vid/2026-04_git-budget-qt.mp4" type="video/mp4"/>
</video>
<h1 id="april">April</h1>
<p>In April I have finally updated Klin tool to generate C++ bindings. This allowed
me to have Git Budget as a Qt application for macOS using Kotlin Dialect.</p>
<p>The most interesting part is how many lines of code were saved when supporting
several platforms:</p>
<table>
<thead>
<tr>
<th>Platform</th>
<th>Saved lines of code</th>
<th>Saved %</th>
<th>Total lines of code</th>
</tr>
</thead>
<tbody>
<tr>
<td>Android</td>
<td>0 (Original code)</td>
<td>0%</td>
<td>652</td>
</tr>
</tbody>
</table>
</div>
<div class="news_item_more">
<a href="git-budget-qt.html">Continue reading</a>
</div>
</div>
<div class="news_item">
<h2 class="news_item_title">
<a href="kd-cpp-is-close.html">Kotlin Dialect came closer to C++</a>
</h2>
<p class="news_item_date">
2026-04-03
</p>
<div class="news_item_contents">
<p><img src="../../images/2026-03_kd-cpp-is-close.jpg" alt="" /></p>
<h1 id="march">March</h1>
<p>In March (as in February) I planned to run GitBudget on Desktop,
however, the updates of Klin tool to generate C++ bindings are still
in development. There's just a little bit left.</p>
<h1 id="april">April</h1>
<p>This should finally happen in April.</p>
<p>. . .</p>
</div>
<div class="news_item_more">
<a href="kd-cpp-is-close.html">Continue reading</a>
</div>
</div>
<div class="news_item">
<h2 class="news_item_title">
<a href="cld-to-kd.html">Kotlin dialect</a>
</h2>
<p class="news_item_date">
2026-03-04
</p>
<div class="news_item_contents">
<p><img src="../../images/2026-02_cld-to-kd.jpg" alt="" /></p>
<h1 id="february">February</h1>
<p>I planned to run GitBudget on Desktop with the help of Qt, however,
the rabbit's hole of Kotlin Multiplatform + C++ turned out to be way
deeper than I initially anticipated. Thus, I only managed to confirm the
technical feasibility of the idea and turn Cross-language dialect project
into Kotlin dialect one to have a clear focus on Kotlin.</p>
<h1 id="march">March</h1>
<p>My plan is to continue working on Kotlin dialect up to the point when I'll be
able to run GitBudget on Desktop with the help of Qt.. . .</p>
</div>
<div class="news_item_more">
<a href="cld-to-kd.html">Continue reading</a>
</div>
</div>
<div class="news_item">
<h2 class="news_item_title">
<a href="git-budget-draft-for-android-ios.html">GitBudget draft for Android and iOS</a>
</h2>
<p class="news_item_date">
2026-02-01
</p>
<div class="news_item_contents">
<p><img src="../../images/2026-01_git-budget-android-ios.jpg" alt="" /></p>
<h1 id="january">January</h1>
<p>In January I've resurrected GitBudget project for two reasons:</p>
<ol>
<li>Combine job goals and hobby ones because they overlap through Kotlin Multiplatform</li>
<li>Evaluate Kotlin Multiplatform in decreasing code duplication among platforms (the positive results are described in <a href="https://www.reddit.com/r/KotlinMultiplatform/comments/1rgtn1z/is_kotlin_multiplatform_able_to_cut_development/">Reddit article</a>).</li>
</ol>
<p><a href="git-budget.html">In the distant 2020</a> when I approached GitBudget the first time my
main idea was to track history of spendings, not analysis. This time my
priority was to calculate the available balance left to be spent a day, i.e.,. . .</p>
</div>
<div class="news_item_more">
<a href="git-budget-draft-for-android-ios.html">Continue reading</a>
</div>
</div>
<div class="news_item">
<h2 class="news_item_title">
<a href="manage-files.html">Manage files</a>
</h2>
<p class="news_item_date">
2026-01-01
</p>
<div class="news_item_contents">
<video controls width="700">
<source src="../../vid/pskov_0.9.0_en.mp4" type="video/mp4"/>
</video>
<h1 id="december">December</h1>
<p>In December I reworked file management: now it's an accordion with tables
instead of cards used before. Also, I added the ability to preview a page
in a separate browser tab.</p>
<p>The video shows how this functionality works and highlights the following:</p>
<ol>
<li>(00:55) Launching PSKOV with <code>npx</code></li>
<li>(01:30) Copying a file</li>
<li>(02:03) Renaming a file</li>
<li>(02:52) Previewing in a separate browser tab. . .</li>
</ol>
</div>
<div class="news_item_more">
<a href="manage-files.html">Continue reading</a>
</div>
</div>
<div class="news_item">
<h2 class="news_item_title">
<a href="preview-single-page.html">Preview an edited page</a>
</h2>
<p class="news_item_date">
2025-12-04
</p>
<div class="news_item_contents">
<video controls width="700">
<source src="../../vid/pskov_0.8.0_en.mp4" type="video/mp4"/>
</video>
<h1 id="november">November</h1>
<p>In November I implemented the ability to preview a single edited page.</p>
<p>The video shows how this functionality works and highlights the following:</p>
<ol>
<li>(01:37) Manual creation of a new Markdown file</li>
<li>(02:03) Launching PSKOV with <code>npx</code></li>
<li>(02:28) Markdown file structure</li>
<li>(03:31) Edited site navigation when previewing</li>
<li>(04:15) The state of the site repository after preview generation. . .</li>
</ol>
</div>
<div class="news_item_more">
<a href="preview-single-page.html">Continue reading</a>
</div>
</div>
<div class="news_item">
<h2 class="news_item_title">
<a href="edit-files.html">Editing of files</a>
</h2>
<p class="news_item_date">
2025-11-01
</p>
<div class="news_item_contents">
<video controls width="700">
<source src="../../images/2025-11_edit-files.mp4" type="video/mp4"/>
</video>
<h1 id="october">October</h1>
<h3 id="1npm">1. NPM</h3>
<p>PSKOV is now available via npm. The easiest way to launch PSKOV is with the help of <code>npx</code>:</p>
<p><code>npx pskov --projectDir=/path/to/project</code></p>
<p>where <code>/path/to/project</code> should be replaced with an actual path to a project</p>
<h3 id="2fileseditrendertabs">2. <code>Files</code>, <code>Edit</code>, <code>Render</code> tabs</h3>
<p>PSKOV now has tabs which allow you to select a file, edit it or preview the result of Markdown conversion (previewing is not implemented yet). . .</p>
</div>
<div class="news_item_more">
<a href="edit-files.html">Continue reading</a>
</div>
</div>
<div class="news_item">
<h2 class="news_item_title">
<a href="display-files.html">List of project files</a>
</h2>
<p class="news_item_date">
2025-10-02
</p>
<div class="news_item_contents">
<video controls width="700">
<source src="../../images/2025-10_display-files.mp4" type="video/mp4"/>
</video>
<h1 id="displayingprojectfiles">Displaying project files</h1>
<p>In September I created the new draft version of PSKOV 2, which now consists of two parts: web client + web server:</p>
<ul>
<li>the web server provides access to files on disk using <a href="lha-jvm-macos.html">Local Host Access</a> format to the web client</li>
<li>the web client provides UI for a human to manage site's contents</li>
</ul>
<p>Logic is in Kotlin. Then Kotlin code is translated to JavaScript for. . .</p>
</div>
<div class="news_item_more">
<a href="display-files.html">Continue reading</a>
</div>
</div>
<p class="pagination_title">Page 1 of 10</p>
<p>
<a href="index2.html">Older »</a>
</p>
<div id="footer">
The site has been generated by <a href="http://opengamestudio.org/pskov">PSKOV</a>
from <a href="http://github.com/ogstudio/site-opengamestudio">this source code</a>.
</div>
</center>
</body>
</html>