A language switch should change the words
Imagine offering maths tutoring in German. Someone browsing in English should see the same offer: the same subjects, place, availability and price basis. Making them translate it separately creates another task before they can decide whether to contact you. Neeed prepares both public versions before publishing, then shows the one that matches the selected language.
The board remains shared. A language choice does not decide who belongs, which nationality someone has or how well they speak. Our initial campus focus is a way to browse relevant local needs. It does not imply that everyone there studies at OTH Weiden, or that an English post belongs somewhere else.
Translate the agreement carefully
Consider an illustrative offer to deliver groceries for five euros per delivery. The amount alone is not enough. Per delivery must survive the translation, along with any separate grocery costs. Weekly should not become every day. A named place should still identify the same place. These details determine whether another person understands the arrangement.
The original authored information stays intact. Prepared public wording is checked against it. Colored segments need to point at the right words in each version, even when German uses a different sentence order. Copying the old character positions into a translated sentence would highlight unrelated text and make the tags misleading.
Both language versions are stored with the post. Reading a card does not need a fresh translation call for every visitor. If preparation fails, the draft remains available to retry. Private conversations are not automatically translated. A reply stays in the language its author used; the public language switch does not promise otherwise.
Let the browser read it too
W3C guidance asks pages to identify their main language and relevant language changes inside them. Screen readers can then select appropriate pronunciation. Neeed’s English and German documents declare their language, and original English research titles retain theirs. [1] [2]
Natural wording needs attention in both directions. A German page uses du. A question should ask about the task in words you would actually use. A useful explanation says what you can do next. Changing one English sentence also means checking its German counterpart, including whether a longer label still fits on a phone.
Names and addresses deserve restraint. A typed street is useful even without a verified coordinate. The interface can accept your wording without claiming the map has confirmed it. Translation should never make that place more precise than the source. We keep the difference between an authored address and an explicitly chosen map point.
Spend work where it helps
Cloudflare Static Assets serves files such as HTML and CSS. D1 provides a managed database with SQLite semantics. Durable Objects support coordination between clients. Neeed uses these capabilities for its native interface, saved records and controlled background work. [3] [4] [5]
A post update changes affected records rather than rewriting the entire board. Public lists are paged, and a specific post can be read directly. Familiar starter questions run locally. This is work we can avoid doing repeatedly, leaving model calls for interpretation and preparing the public language versions. Some compatibility paths still scan broader record sets and need further improvement.
Cloudflare documents runtime limits for Free and Paid plans. Our current release retains the Free plan; external AI and email still have their own costs. Hosted capacity needs measurement before we promise it. [6]
The practical test is easy to describe. Switch language, open a post and check whether you would agree to the same thing in either version. If an amount, condition or place changes, we need to know exactly which one. That is more useful feedback than whether the translation merely sounds polished.
Research & references
The work we read while making these decisions.
