Product
Product principles and non-goals
The rules Leitagu is designed by, how each shows up in the product today, and what Leitagu deliberately does not do.
Updated 16 October 2026View as Markdown
These principles decide trade-offs when building Leitagu: be honest about colour, stock and fit; put the shopper's interest first; avoid dark patterns; and label example data clearly. Each principle below says what it means and how it shows up in the product today, so anyone changing Leitagu, person or AI agent, can check a change against it. The page ends with what Leitagu deliberately does not do.
Principles
1. Never invent products, prices or stock
Every product, price and stock figure shown comes from the catalogue, through Leitagu's own search code. The language model reads requests and photos into search settings; it never produces results.
- Claude's instructions say: "Never list or invent products, prices or stock."
- The "why it matches" line is built only from attributes that actually match in the product data.
- Planned: every price and stock figure will show when it was last checked.
2. Be honest about colour
Screens, cameras and shop lights all change how wood looks. Leitagu says so instead of pretending to precision it doesn't have.
- Every results list carries the note "Colours on screen differ from real life. For an exact tone, see the piece in a store."
- The "See it in a store first" filter, and the on-display cities on each card, make checking in person easy.
- Wood-look foil is flagged: "Wood-look foil, not real wood".
- Tone and undertone are described in words (light, warm), not only as a colour swatch.
- The photo tip suggests a sheet of white paper and daylight. When Claude sees the paper, Leitagu says the colours were judged with it.
- The 3D room has an evening light setting with the note "Warm evening light changes wood tones."
3. Be honest about stock, delivery and fit
- Availability is a filter, not a hint. "Take it home today" never shows a product that is not in stock in your city.
- Delivery over two weeks is highlighted on the card.
- Products over your size or price limit appear only as labelled near misses, with how much they are over ("Over the limit: 8 cm, €20").
- Results list what was assumed ("Assumed: no size limit, no budget limit").
- When product data can't confirm something, Leitagu says so ("Child/pet safety not confirmed") instead of hiding the product or treating it as safe.
- The 3D view is labelled "Illustration, not to scale", and rooms made from photos ask you to check the measurements.
4. Label example data clearly
While Leitagu runs on example data, nobody should mistake it for real stock or real prices.
- Example products are flagged in the database and labelled "Example product" on each product's details.
- The favourites page says "Products, stock and delivery times are example data for now."
- The admin panel counts example products separately.
- Example products link to the store's homepage, not to an invented product page.
- These docs say on every relevant page that the catalogue is example data.
5. The shopper's interest comes first
- Results are ranked by how well they match and by what the shopper asked for. Nothing paid affects ranking today.
- The requirements set a firm rule: ranking is never influenced by commission without clear disclosure.
- Leitagu sells nothing and takes no orders, so it has no stock of its own to push.
- Ties are broken in the shopper's favour: products on sale first, then cheaper ones.
6. No dark patterns
- No invented urgency: no countdowns and no pressure messages. Stock counts are shown plainly, as data.
- The shopper can skip the questions at any time ("Show results now").
- A filter the shopper removed stays removed. Claude is instructed not to re-add it unless asked.
- Planned: sign-in asked for only when it adds value (saving favourites, alerts), one-click unsubscribe in every alert email, and at most one alert email a day.
- Planned: deleting your account and all your data in one action. The server function exists; the button does not yet.
7. Ask little, show early
- At most four questions (what, size, budget, how soon), plus the city if timing depends on it.
- Questions already answered by the shopper's words are skipped.
- Every question has tap-to-answer chips and accepts free text.
8. The shopper controls the interpretation
- Every setting Leitagu took from the conversation is a visible chip that can be edited or removed.
- When a piece in the room becomes the reference, Leitagu shows what it sees (material, wood, tone, finish and so on), so mistakes can be spotted.
- Corrections in plain words ("it's walnut, not oak") change the search (with the Claude connection).
9. Respect stores
- Feeds and consent are the preferred way to get product data.
- When reading public pages, at most one request per second, under Leitagu's own name, following robots.txt, and stopping at once if a store asks.
- Every product links to the store's own product page; the store keeps the customer and the sale.
10. Keep personal data small and visible
- A room photo is sent to Claude for analysis. The app keeps only a small thumbnail in the chat, not the full photo.
- Each person can send at most 20 photos an hour for analysis.
- When an admin opens a user's chat, room or profile, it is recorded in an audit log.
- Planned, from the requirements: stored photos kept in the EU and deleted after 30 days by default, no photos used for training without opt-in, and data processing agreements with AI and hosting providers.
11. Local first
Estonian comes first in the interface and the chat, and English second. Stores, cities, delivery and vocabulary (puhvetkapp, kummut, täispuit, spoon, täna kaasa) are Estonian.
12. Practical usefulness over novelty
A feature earns its place by helping someone buy the right piece. Leitagu should be something its founder would use himself, and a good local tool is a valid outcome.
Non-goals
Leitagu deliberately does not:
- Sell furniture, take orders or handle payments. There is no checkout. Shoppers buy from the store.
- Sell ranking. No paid placement presented as a match. Any future commercial arrangement must be disclosed and must not change ranking without disclosure.
- Collect data from sources without legitimate automated access, such as Facebook Marketplace or okidoki.ee.
- Generate photo-realistic room images or offer augmented reality. The 3D room is a simple illustration to check fit and combination.
- Build native mobile apps for now. Leitagu is a web app that works on phones.
- Offer a business API to other companies, at least for the first versions.
- Cover other countries. Leitagu is about Estonian stores, Estonian language and Estonian delivery.
- Chase scale for its own sake. It does not need to become a billion-dollar company.
Second-hand listings are not a non-goal but an open question for later; if added, they must come from sources with legitimate access, be clearly labelled and be off by default.