Skip to content
Muhammet Şafak
tr
SignalLock cover — a menu-bar panel showing a trusted Bluetooth device's proximity and the auto-lock flow when it leaves range

SignalLock

Ongoing Older / Hobby Projects

SignalLock is a privacy-focused menu bar app that automatically locks your computer when you walk away from it — using a Bluetooth device you carry with you.

Role
Owner
Duration
May 2026 — Ongoing

Technologies

Swift SwiftUI CoreBluetooth CoreLocation C# .NET 8 WinForms

Skills

Bluetooth Protocol Proximity Algorithms Privacy-First Design

SignalLock is a desktop security tool I built for users who walk away from their desk and forget to lock their computer. In shared environments such as coworking spaces, cafés, libraries, or open offices, an unlocked Mac is a serious privacy risk. SignalLock solves this problem by designating a Bluetooth device the user already carries (an iPhone, Apple Watch, AirPods, or a BLE tag) as a trusted device. When that device leaves range, the computer locks itself; the user has to do nothing.

At the technical heart of the app is a proximity algorithm that, instead of simple “device present/absent” logic, combines a smoothed RSSI signal strength with a last-seen timestamp. This approach prevents the momentary fluctuations inherent to Bluetooth signals from causing false locks. Parameters such as the RSSI threshold, the departure delay, and the smoothing window can be adjusted by the user; the defaults are deliberately chosen to be conservative in order to minimize false locks. The project includes two separate native versions that share the same algorithm and configuration model: a menu bar app written in Swift/SwiftUI for macOS and a system tray app developed in .NET 8 for Windows.

The most important principle that sets SignalLock apart from similar solutions is privacy. The app makes no network requests; it includes no backend server, cloud sync, account system, telemetry, or analytics. It does not use location services, and all settings are stored only on the user’s own machine. As a result, unlike cloud-based “find my desk” solutions, the user gets a similar convenience without ever sending any of their data off the device. A simple landing page with TR/EN language support rounds out the project.

More Projects

All projects
InitPHP cover — a composer install and usage snippet alongside a grid of the 39 modular PHP packages

InitPHP

Ongoing

Founder & Developer

I published a minimalist MVC framework (Framework3) alongside 30+ modular PHP libraries (Router, Database, Cache, Mailer, Socket, ...) under a single ecosystem; all packages are available on Composer/Packagist under the MIT license. The codebase complies with PHP-FIG standards and is backed by type safety, PHPUnit tests, extensive documentation, and examples.

Composer Git PHPUnit +1 more
August 2022 — Ongoing
Parantaj cover — a finance dashboard with total balance, accounts, spending categories and a cash-flow chart

Parantaj

Ongoing

Owner

A personal and corporate financial management platform. It offers income-expense tracking, budget planning, detailed reporting, and multi-account management.

PHP Laravel Go +8 more
October 2024 — Ongoing
BabelQueue cover — a canonical JSON envelope flowing from a producer through the queue to a consumer in another language, alongside the list of polyglot SDKs

BabelQueue

Ongoing

Founder & Developer

BabelQueue is a language-agnostic message queue standard that lets services written in different languages share the same queue without getting trapped by serialization lock-in. Instead of language-specific formats like PHP's serialize(), it defines a strict JSON envelope — frozen at schema_version 1 — that every language can read natively. It runs on Redis and RabbitMQ with no sidecar or broker plugin, adding under 2% overhead.

JSON Redis RabbitMQ +6 more
June 2026 — Ongoing

Search the site

Start typing to search posts, projects and pages.

Esc to close Powered by Pagefind