This website provides a summary of my after hours programming activities.
Below is the list of personal projects. Most of these were brought to life as a form of learning something new or as a proof of concept.
A Java library implementing RFC7807. Integrates with Spring Boot to provide responses in form of
application/problem+json documents.
{
"status": 400,
"title": "Bad Request",
"detail": "Validation failed",
"errors": [ {
"field": "email",
"error": "must be a well-formed email address"
}, {
"field": "age",
"error": "must be greater than or equal to 18"
} ]
}
See problem4j-spring repository for more info.
A simple HTTP API error documentation service written in Go. Failbook serves markdown-powered error documentation pages for HTTP API error responses.
While working on Problem4J, the initial assumption was that the type field must be a resolvable
HTTP URI. It turns out this is not always the case, but for the purpose of experimentation this application was created.
It allows configuring static Problem documentation pages.
See failbook repository for more info.
Simple Python library for replacing value placeholders in template files. Primarily purposed for development or tooling purposes, such as generating random values for HTTP APIs or MQTT messages.
Example:
|
Template {
"uuid": "${random.uuid}",
"double": ${random.double(-10, 10)},
"integer": ${random.int(20, 30)},
"boolean": ${random.boolean},
"string": "${random.string(10)}"
}
|
|
Result {
"uuid": "00772bf8-8f21-4f73-8ca0-30a5354cf935",
"double": -3.006947539966321,
"integer": 17,
"boolean": true,
"string": "cdtllavjhl"
}
|
See pytemple repository for more info.
Pronounced: “micro IoT”.
A prototype of an IoT Telemetry system, presenting microservices communication over Apache Kafka and REST API, developed with Spring Boot. The system is composed of loosely coupled services responsible for device management, telemetry processing (RabbitMQ powered), basic rules, and historical data access.
Project also focused on exploring good practices in software architecture and development.
A simple issue-tracker application, developed with Spring Boot and Angular frameworks at college. After finalization, this project is being used as a testing tool for what’s new in next versions of these frameworks.
Emulator application for an IoT device working with LwM2M (based on project Leshan). Supports a bunch of LwM2M objects and provides a management WebUI, accessible on localhost. Requires a working installation of LwM2M server like Leshan Demo Server.
List of prototypes of docker-compose.yaml setups of various services for personal development.