Karolis Strazdas

Karolis Strazdas

Software engineer at Indeform Ltd.

Kaunas, Lithuania

Project

Papyrus - a cross-platform e-book management system

I like collecting books, both in physical and digital form, but none of the applications that I used so far to track my collections met my expectations - Calibre, Google Books, Amazon Kindle, Bookshelf, etc. Some of the main pain points for me are ugly user interface, lack of support for multiple platforms, file size limits, unsupported file formats, no ability to manage physical books and notes. I wish address these issues and add some of the more more interesting features like reading statistics, goal tracking, and potentially integrate some form of social interaction (e.g., book borrowing) and to bring this experience to the most commonly used platforms - Windows, Linux, Web, Android (including e-readers) and iOS.

Features
  • File uploads, metadata management and categorization (e.g., shelves, topics, tags);
  • Management and progress tracking for physical books;
  • Reading progress sync across devices;
  • Notes and annotations;
  • Full-text search;
  • Reading statictics;

Flutter Dart Rust MongoDB Realm
Project

Canopy - a real time spatial conversation platform

Sounds weird, right? Well, it kind of is. Essentially, it's a real time forum / board where conversations grow like virtual forests. Instead of usual threads like on Reddit, you plant virtual trees as posts or replies to posts on an infinite, shared grid - each tree representing an idea, opinion, or a question. Over time, clusters of trees form a virtual forest, creating a unique conversation space.

How it works?
  • Any user can plant a tree anywhere in the grid. Each tree represents a single comment, question or idea;
  • To reply, users plant a new tree within a circular radius of the original. This creates a spatial "reply" relationship that mirrors real conversation flow in the layout of the forest;
  • Trees grow in stages based on interaction such as new replies and upvotes. Each interaction contributes to a tree's growth percentage - once reaches 100%, the tree advances to the next growth stage;
  • Tree type depends on the intention - different species of trees represent different types of posts. There are questions, opinions, ideas, and news;
  • Selecting a tree opens a side panel with a traditional view of the thread;

TypeScript Pixi.js Python PostgreSQL Redis
Project

NetBots - a real-time multiplayer robot programming game

Briefly, it's a robot battle tank programming game that runs in the browser, similar to games such as Robocode and Screeps . You can write a script to you robot and make it fight against robots of other players in real-time.

Features
  • Robot programming in JavaScript and through graph editor;
  • Real-time and concurrent battles;
  • Achievements and leaderboards;
  • Custom maps and game rules;
  • Various game modes;

TypeScript Redis MongoDB Deno
Project

JigwawQuest - a multiplayer jigsaw puzzle game

Jigsaw puzzle solving game, where user can create a puzzle solving session by selecting provided default image or uploading their own. Puzzles can be solved individually or with friends in real-time.

Features
  • Solo and multiplayer solving sessions;
  • Custom puzzle configurations (e.g. image, number of pieces, piece placement);
  • Achievements and statistics;

TypeScript Alpine.js Pixi.js Redis Python