Back

Streek Support

Beter Bij Ons - 2026
My Role
Graduation Intern - Front-End/UX Developer (Research, Design, Validate, Build)
Stack
Next.js, React, TypeScript, Appwrite, Figma
Timeline & Status
2026, Graduation Internship at Beter Bij Ons
Overview
Streek is a marketplace connecting consumers with local food producers and stores, built by Beter Bij Ons. During my graduation internship there I researched, designed and built its first self-service support system: a role-based Help Centre combining a searchable FAQ with a guided chatbot, escalating unresolved questions straight into a Microsoft Teams ticket for the support team.
HIGHLIGHTS
From a role-based FAQ to a guided chatbot to a ticket in Teams - self-service support tailored to every role on the platform.
0.1The role-based Help / FAQ page.
IMAGE
0.2The chatbot - a guided decision tree, not generative AI.
IMAGE
0.3The question form for when no answer fits.
IMAGE
0.4Escalations become Teams tickets automatically.
IMAGE
CONTEXT

Where Streek support started.

A platform used by many different roles.
Beter Bij Ons is a digital agency in Sittard that builds websites, apps, webshops and platforms as a long-term partner for its clients. Streek is one of them - a marketplace connecting consumers with local food producers and stores, used daily by three very different roles: consumers, store managers and producers. (Figure 1.0).
1.0The Help Centre home - one front door for all three roles.
IMAGE
Support needed structure.
Until this project, there was no self-service support at all - every question went through a person. Whatever replaced that had to be clear, structured and role-based: all three roles touch the same screens but need different answers, and that difference shaped everything I built. (Figure 1.1).
1.1The FAQ - structured, role-based answers.
IMAGE
PROBLEM SPACE

Support had no structure.

Every question went through a person.
There was no structured self-service, so even the most common questions landed with the team first. The same topics came up again and again, responses were slow, and the support team spent hours on work a good FAQ could absorb.
Emerging opportunities:
What if users had a clear first place to look before contacting anyone? What if the same screen could answer a consumer and a producer differently? And what if the questions that truly needed a person arrived structured, instead of scattered?
2.0The support form - structured escalation, not a dead end.
IMAGE
THE FLOW

A structured way to self-serve.

Research, design, validate, build.
I worked in four steps: research to understand the real problem, design in Figma, validation with users and stakeholders, and a build in the production codebase. Stakeholder interviews, customer journey mapping, competitive analysis of other help centres, user surveys and usability tests all pointed the same way: a small set of topics caused most requests, each role needed different answers on the same screens, and there was no first place to look.
Guided, not generative.
The chatbot deliberately uses no generative AI and no free-text input. It walks a predefined decision tree linked to verified FAQ content - users choose from buttons at every step. That was a design decision: answers stay consistent, nothing can be hallucinated, and the company keeps full control over what users are told. (Figure 3.0).
3.0The full decision tree, step by step - click to zoom in.
IMAGE
From question to ticket, one path.
Users pick their role - consumer, store manager or producer - then a topic: orders, products, payments, returns or account. The chatbot surfaces the matching FAQ answer and asks whether it solved the problem. If not, a short form (name, email, phone, subject, question) creates a Microsoft Teams ticket for the support team, and the user gets a confirmation with a unique ticket reference number. (Figure 3.1).
3.1The escalated question, landing in Teams as a ticket.
IMAGE
What it all leads to - design principles:
Self-service first
Users should find answers before asking a person, with the FAQ as the first place they look and search that filters instantly as they type.
Role-based content
Consumers, store managers and producers each see the answers relevant to them, drawn from one shared source of truth so content never diverges.
No dead ends
When nothing fits, the chatbot hands over to a support form that opens a ticket in Teams - and the user walks away with a reference number, not silence.
RETROSPECTIVE

What building it taught me.

One API, one source of truth.
Built in Streek's production codebase with Next.js, React and TypeScript, the front-end never touches the database directly - every write goes through a thin custom API that validates input and owns the write logic, while Appwrite stores tickets and handles authentication. The chatbot re-uses the FAQ answers, so support content stays consistent across the whole product.
I still learned a lot though!
Wiring, not UI, was the hard part
The real challenge was connecting the front-end to the API and Appwrite - handling async state, errors and empty responses - not the interface itself.
Testing reshapes the design
Usability tests changed the design more than once: simpler navigation, clearer role selection, less on screen at once, capped search suggestions. Next time I'd start testing even earlier, before the polish.
Small details carry support
FAQ wording, confirmations and error messages shaped the experience more than I expected. Next: light analytics on tickets to surface recurring questions automatically.