We stopped being an agencythe day we became founders.
A digital product engineering studio in Jaffna, Sri Lanka, running four of its own products and building other people’s the same way.
Pepulux started as a UX design agency. We made things look right, handed over the files, and then watched a lot of good work quietly never ship. The design wasn’t the problem. Not owning what happened next was.
So we stopped handing over files. We built DiamondOar for a jeweller who needed one — a real product, running a real business, with someone paying for it every year.
We stopped being an agency the day we became founders.
Now client work gets treated exactly like our own products. We argue with you about scope before we agree with you about price.
Jaffna,
Sri Lanka.
Northern Sri Lanka, working with teams across three continents. Local cost, and work we are willing to put our name on.
One team does the research, the design, the engineering and the support. Nothing is thrown over a wall, because there is no wall.
How we workBuild digital products that stay light, fast and usable for as long as the business depends on them — and run them ourselves, so the cost of a shortcut lands on us rather than on you.
A web where the page that costs less energy is simply the better-made page, and where a studio in Jaffna can prove that with numbers rather than argue it with adjectives.
We lead with it. We do not preach it.
Digital sustainability is our primary practice: most of what we propose will be lighter than what you were expecting, and we will show you what it weighs. If you would rather have a conventional build, we will do that too — and tell you honestly what it costs in weight, speed and hosting, so the choice is yours and it is an informed one.
A weight budget, agreed before design starts
We set a page weight and a carbon grade at scoping, the same way you would set a deadline. It is a constraint the design is held to, not a report written afterwards.
Nothing ships that has not earned its place
Every font, script, image and dependency is a cost someone pays on every visit, forever. A carousel that nobody uses is not free — it is a tax on every visitor.
Server-first, with as little JavaScript as the page can survive on
Most pages do not need to be an application. Rendering on the server and sending markup is lighter, faster, more accessible and harder to break.
Measured every release, and published
Speed, weight and emissions are checked per release and the badge in our footer reports this site live. A number you can see is worth more than a promise you cannot check.
What it gets you
It is the same work as performance
A lighter page is a faster page. The thing that lowers emissions is the thing that improves Core Web Vitals, which is the thing search engines rank on.
It costs less to run
Less bandwidth, smaller functions, fewer moving parts. The saving shows up on the hosting bill every month, not once at launch.
It reaches more people
Light pages work on a mid-range Android over a poor connection. In most markets that is the majority of your customers, not an edge case.
It is easier to maintain
Every dependency you do not have is a dependency that cannot break, go unmaintained or need a security patch at midnight.
Five stages, and the budget is one of them.
- 01
Scope
What it has to do, what it must not do, and the budgets — money, time, and page weight. Anything we cannot cost honestly, we say so before quoting.
- 02
Design
Research, flows, then interface, written down as a system the build can be checked against rather than a folder of screens.
- 03
Build
Weekly releases you can use. Server-rendered by default, with the weight budget checked as we go rather than at the end.
- 04
Measure
Speed, accessibility and carbon against the numbers we agreed. If a release misses, that is a defect, not a discussion.
- 05
Support
Pages get heavier over time unless somebody watches. We keep measuring after launch, because that is when it starts to matter.
Six things that cost us work.
A value nobody can act against is decoration. Each of these has cost us work at some point, which is how we know they are real.
Own the outcome
We get the support ticket at 11pm, on our products and on yours. That decides how we scope and what we refuse.
Measure, do not claim
Speed, page weight and carbon are numbers here because we test them. Where we have not measured, we say so.
Argue before we agree
Scope gets settled before price. We say plainly when a request will hurt the people who have to use the thing.
Weight is a decision
Every font, script and image is energy someone pays for on every visit, forever. If it does not earn its place, it does not ship.
Support is not a phase
Launch is the middle of the job. We are still there for the release after the one that went live.
The language people work in
Our products run in Tamil and English because the shop counter does. Software should not make anyone work in a second language.
Two products of our own.
Not a portfolio — software we operate, support and get paid for. It is the reason client work gets built the way it does.
- Website design & development
- Noah Bake HouseLogo & brand identity
Let’s build aproduct thatlasts.
Whether it’s a first product or an established platform, we bring the research, the design and the engineering.


