apphane
apphane — a house drawn with curly braces, windows lit amber. Apps, tools, ideas.

A house for small, sharp tools.

apphane — from Turkish -hane, “house of” — is where our apps, tools, and ideas live. Open source by default, each named in Turkish, each built to do one thing well.

3 lights are on. More rooms are being furnished.

In the house

nehir

nehir — Turkish for river

Windows flow in columns, scrolling across your screen.

A scrolling tiling window manager for macOS, built on the Niri column paradigm. Columns scroll horizontally instead of shrinking to fit — your windows keep their size, and you move the river.

  • Niri-style scrolling columns
  • Workspaces with hotkey switching
  • Multi-monitor support
  • Overview mode
  • Command palette
  • IPC control via nehirctl
  • Split TOML configuration

Install with Homebrewbrew install --cask guria/tap/nehir

kahraman

kahraman — Turkish for hero

Accessibility-first tests that read like a user’s story.

A codecept-style test actor and fluent locator DSL for Storybook portable stories and Vitest browser mode. Kahraman steers tests toward roles, accessible names, and visible text so the easiest tests to write are also the ones that reflect what users perceive.

  • Declarative I.see / I.click actor
  • Accessibility-first locator DSL
  • Storybook portable stories
  • Vitest browser mode
  • Readable failure diagnostics
  • Extensible page actors
  • React, Vue, and Svelte ready

Install from npmnpm install --save-dev kahraman

karkas

karkas — Turkish for framework / skeleton

An opinionated modern React stack, wired end to end.

A reference application and template for a modern React stack — Nub for packaging, React 19, Reatom state, Panda CSS with Park UI components, ParaglideJS i18n, and Storybook portable stories tested with Vitest browser mode through kahraman. Organized by Feature-Sliced Design so the skeleton stays legible as it grows.

  • Nub + mise + hk toolchain
  • React 19 with Reatom state
  • Panda CSS and Park UI components
  • ParaglideJS internationalization
  • Storybook portable stories
  • kahraman-driven Vitest tests
  • Feature-Sliced Design layout

Clone the templategit clone https://github.com/apphane-dev/karkas.git

House rules

Open source by default

The code lives in the open, under real licenses. Nehir ships as GPL-2.0-only and Kahraman as MIT.

Lineage stays visible

Tools built on other people's work say so, file by file. Nehir credits its OmniWM foundation in a NOTICE that tracks the provenance of every source file.

One thing, done well

Each project keeps a deliberately narrow scope. Nehir is one layout model — scrolling columns — not a window manager for every taste.