Portfolio

SignalBot LTO

Published 2021-06-01

SignalBot LTO is an automated Signal chat bot created to offer a third party watchdog service for the LTO cryptocurrency. It will periodically check the state of the block chain by directly accessing the target node's Swagger REST API. The main purpose is to verify up-time to make sure a warning message is sent to the LTO server owner when internet connectivity is lost. By using Docker micro-services, this watchdog uses container security separation with minimal user privileges. The source code of this chat bot is written in Python with easy to understand classes and variable names so that you can use this project as a basis for your own Signal chat bot.

Stack: Python, DBus, Shell
Platform: Linux server

TacyBot

Published 2021-05-18

TacyBot is a cryptocurrency trading platform written in Vue.JS. With the full stack implementation, TacyBot can automatically execute advanced trades in the background. Buy and sell triggers are based on current market conditions and will be automatically executed using your Binance.com account. A custom portfolio builder is included so you can monitor the real-time prices of your custom selection of assets. With one click, a price chart with daily price candles is generated for your preferred cryptocurrency. It was loosely inspired by the functionality of 3Commas. But this is a completely open source version that you can audit and run in a standalone way on any VPS as a Docker micro-service. A user account management system is included so that multiple users can be accommodated from one server.

Stack: VueJS, ExpressJS, NeDB-Async
Platform: Linux server

TightCMS

Published 2020-05-29

TightCMS is a full Content Management System written in VueJS. It is light weight and easy to set up on any VPS. With this application, your bloggers or HTML/CSS savvy friends or customers can quickly get started creating a website. They will retain complete control of their own data and can easily upload files to integrate into their website. Or use it as an online file sharing repository. It was loosely inspired by Joomla and WordPress. However they are a lot more feature-rich. If you want a fast, light, secure and easy-to-set-up solution, TightCMS is for you.

Stack: VueJS, ExpressJS, MongoDB, JWT tokens
Platform: Linux server, cross-platform interface

E-Bike

Published 2020-03-02

This project explains my personal experiences while converting a regular bike to an e-bike. The project escalated to include other side-projects such as building a spot welder for the 18650 battery cells and hacking an SMPS to add a current limiting feature for battery recharging. The source code for the ATtiny85 micro controller based spot welder is available. As well as a reverse-engineering schematic of the Chinese PSU. DISCLAIMER: this project works with high voltages, dangerous currents, high temperature welding & soldering and a potentially uncontrollable vehicle. I take no responsibility for any harm resulting to you or others from attempting to recreate any part of this project.

Stack: Arduino C++, PCB design
Platform: Any desktop PC

BPM Counter

Published 2019-10-19

BPM-Counter is a very simple app for manually tapping any type of beat count. From your heart rate to difficult to batch analyze music, rotations of a machine (RPM) you can record anything. To increase accuracy, set the tap-count to a high value and make sure you do not skip any beats. The tap-count is a persistent setting that you can change on the top-right corner of the app. The minimum input value for the number of taps is 2, only then can a time-delta be calculated. When recording the measurement, the number on the button will decrease and the color will turn from green to red. When the number and color reset, active recording ended and the value is printed in the console. If you quick-tap the console text box the app will be reset and ready for the next measurement.

Stack: Kotlin, Android Studio
Platform: Android smartphone

MasterMindy

Published 2019-09-19

Based on Mastermind, a turn-based code breaking game. The app will generate a secret code for you to deduce. You will only receive minimal hints. A black hint means you positioned a pawn perfectly... but which one? A white hint means one of your selected pawns is correct but in the wrong place. Play alone or with friends to try and solve this puzzle. You can easily change the difficulty on the settings page.

Stack: Java, Android Studio
Platform: Android smartphone, any desktop PC

ClipCommander

Published 2018-12-11

ClipCommander is a clipboard selection monitor. It is a productivity tool pre-configured to work as a GUI/front-end for youtube-dl. It can be considered a Firefox Plug-in without requiring integration into the add-on menu. Simply copy a YouTube video link to the clipboard and ClipCommander will pop-up with several download format options. ClipCommander is highly configurable to execute any terminal/shell command based on a clipboard selection using Python RegEx string magic (Regular expressions). The actions are highly customizable. For example text-to-speech festival, BitTorrent client transmission, custom clipboard logging operations and more. You will get instant feedback based on your text selections.

Stack: Python, Kivy
Platform: Linux desktop

LabelPush

Published 2018-10-27

LabelPush is a simple lightweight label printing application written in Python. It is built to be fast and simple to use. It depends on Linux because the CUPS printing system is used. Please make sure the printer is correctly installed with all correct settings such as label/paper size.

Stack: Python, Kivy
Platform: Linux desktop