Files
ogs-site/en/news/pskov-again.html

115 lines
4.2 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/pskov-again.html">EN</a>
<a href="../../ru/news/pskov-again.html">RU</a>
</div>
<div class="clear"></div>
</div>
</div>
<h3 class="left_item_title">In the news...</h3>
<center>
<div class="news_item">
<h2 class="news_item_title">
<a href="pskov-again.html">Back to the development of "PSKOV"</a>
</h2>
<p class="news_item_date">
2024-11-14 00:00
</p>
<div class="news_item_contents">
<p><img src="../../images/2024_lha-path.gif" alt="lha" /></p>
<h1 id="pskovtoday">"PSKOV" today</h1>
<p>Now, we have an old "PSKOV" version and we need an improved one.</p>
<p>First, we should recall what "PSKOV" consists of:</p>
<ol>
<li>The <a href="https://opengamestudio.org/pskov/en/pskov_1.0.0.html">generator</a> itself in the form of HTML page with JavaScript</li>
<li>Helper <a href="https://opengamestudio.org/lfsa/en/index.html">Python script</a> to save generated files to disk</li>
</ol>
<p>Helper script is used to bypass web page restriction to access
local file system.</p>
<p>The script itself is a tiny web server with the following commands:</p>
<table>
<thead>
<tr>
<th></th>
<th>Command</th>
<th>Details</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td><code>GET /path</code></td>
<td>Get current working directory path</td>
</tr>
<tr>
<td>2</td>
<td><code>POST /list</code></td>
<td>Get a list of files in the requested directory</td>
</tr>
<tr>
<td>3</td>
<td><code>POST /read</code></td>
<td>Get file's contents</td>
</tr>
<tr>
<td>4</td>
<td><code>POST /write</code></td>
<td>Write file's contents</td>
</tr>
</tbody>
</table>
<h1 id="pskovtomorrow">"PSKOV" tomorrow</h1>
<p>Thus, the simplest way to get back to "PSKOV" development is to rewrite the
helper script. I decided to replace Python with Kotlin because:</p>
<ol>
<li>Kotlin can be compiled for desktop, mobile, and web</li>
<li>Kotlin is strictly typed</li>
</ol>
<p>These two factors simplify future work with portable code.</p>
<p>As of now, I have <code>GET /path</code> implemented for JVM, macOS, and Windows (image
in the beginning).</p>
<h1 id="november">November</h1>
<p>I plan to implement the following commands in November:</p>
<ul>
<li><code>POST /list</code></li>
<li><code>POST /read</code></li>
</ul>
</div>
</div>
<div id="disqus_thread"></div>
<script>
var disqus_config = function () {
this.page.url = "https://opengamestudio.org/en/news/pskov-again.html";
this.page.identifier = "pskov-again.html";
};
(function() { // DON'T EDIT BELOW THIS LINE
var d = document, s = d.createElement('script');
s.src = 'https://opengamestudio.disqus.com/embed.js';
s.setAttribute('data-timestamp', +new Date());
(d.head || d.body).appendChild(s);
})();
</script>
<noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
<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>