All workCase study · Property management

Wohnster: one platform for landlords and tenants

Two portals on one Kotlin backend, with Keycloak login and the interface in German and English. Next.js in front, Spring Boot behind, PostgreSQL underneath, deployed with Docker.

In developmentOwn productGerman and English
Problem

Two sides of one tenancy, two sets of tools

Private landlords and their tenants handle the same contract, the same payments and the same repair requests, yet they do it through email, messaging apps, spreadsheets and paper. Each side keeps its own version of the facts, and every question becomes a message thread.

Wohnster is SteinByte's answer: one platform where the landlord manages properties and tenancies and the tenant sees their own contract, documents and requests, both working on the same records. [TODO: add the specific market and audience you are targeting first.]

Approach

One backend, two portals, one login

Rather than two apps that sync, we built one Kotlin backend that owns the data model and exposes it to two Next.js portals through the same API. Roles come from Keycloak, so a person who is a landlord in one tenancy and a tenant in another signs in once.

  • German first, English alongside: every text exists in both languages from the first commit, checked by a test that fails when a key is missing.
  • A staging environment from the start, deployed automatically on every merge, so the product can be tried while it is being built.
  • Pull requests, code review and CI as the only way into the main branch, for a team of three.
What was built

So far

Landlord portal

Dashboard, onboarding, properties and tenancies. [TODO: list the finished modules]

Tenant portal

Own contract, documents and requests, in the tenant's language. [TODO: list the finished modules]

Sign-in and roles

Keycloak with landlord and tenant roles, one account for both, role-based routing in the frontend.

Platform

Docker images for both services, a GitHub Actions pipeline, a staging server behind Cloudflare, mail testing with Mailpit.

Status

In development

Wohnster runs on a staging environment and is not yet open to the public. [TODO: planned first release and how to get early access.] We publish updates here as the product moves.