Marketing sites · portals · custom applications
Web design and development for teams who inherit the result
We design and build marketing sites, customer portals and custom web applications — Odoo-native or standalone. Fixed-fee per phase, your repository from day one, accessible and bilingual by default, and documented well enough that your next developer doesn’t need us.
Launch gates · every projectnon-negotiable
Miss a gate · we don’t launchVerified in CI
84 builds shipped · 2012–2026Next.jsAstroPostgresOdooSanityAWSEN · FR · AR
What we build
Three kinds of build. We say no to the rest.
We’re a small team, so we stay inside the work we’re demonstrably good at: sites that generate pipeline, portals that remove manual work, and applications that replace a spreadsheet nobody wants to own.
B.01 · Marketing
Marketing websites
Sites whose job is qualified pipeline. Built on a headless CMS your marketing team can actually publish from, with the SEO and analytics layer wired in before launch rather than after.
- Headless CMS · Sanity / Payload
- Astro or Next.js
- Technical SEO baked in
- Editor training included
Typical 3–4 weeksFrom $3k
B.02 · Portal
Customer & partner portals
Self-serve access to the data your team currently emails as PDFs — orders, invoices, documents, tickets, claims. Usually the fastest operational payback we can point at.
- SSO · role-based access
- Odoo or ERP-backed data
- Document & billing views
- Audit trail & logging
Typical 4–6 monthsFrom $95k
B.03 · Application
Custom web applications
The internal tool no vendor sells — quoting engines, scheduling, inspection workflows, compliance tracking. Built when configuration genuinely can’t get you there.
- Next.js · Postgres
- Or native Odoo modules
- Offline & mobile paths
- Migration from spreadsheets
Typical 5–7 monthsFrom $150k
How we build
Six standards we don’t negotiate away under deadline.
These are the things that get cut first when a project runs late — and the things that determine whether the build is still maintainable in three years. They’re in the fixed fee, so there’s nothing to trade.
STD.01
Your repository, day one
Code is pushed to your GitHub organization from the first commit, not delivered as a zip at the end. You watch the build happen and can hire anyone to continue it.
Licence transferOn final payment
STD.02
Performance budgets in CI
Core Web Vitals and JS payload limits run as automated checks on every pull request. A regression fails the build rather than being discovered by your users.
EnforcedPer pull request
STD.03
WCAG 2.2 AA, audited
Contrast, keyboard paths, focus order, semantics and screen-reader labelling — with a manual audit before launch, not just an automated scan that misses most of it.
IncludedNever an upsell
STD.04
Bilingual as a first locale
French is modelled as its own locale with its own content, not a translation layer bolted on. Components are sized for copy roughly 20% longer than English.
Parity gateNo EN-only launches
STD.05
Boring, hireable stack
We choose technology you can staff in Montréal or Toronto next year. No in-house framework, no exotic dependency that makes us the only possible maintainer.
Dependency policyReviewed quarterly
STD.06
Documented for handover
Architecture notes, runbooks, environment setup and a recorded walkthrough. Written for the developer who joins after we’re gone, because that person always exists.
HandoverDocs + training
How a project runs
Five phases. You see working software from week six.
Each phase is fixed-fee with a named deliverable and an exit criterion. Nothing is built behind a curtain — staging is live and open to your team from the first sprint.
Discovery
Requirements, user journeys, data model, integration audit, and a fixed quote with the assumptions written down.
- Journey map
- Data model
- Fixed quote
Design
Wireframes, then hi-fi screens in your design system. Prototyped and tested with real users before a line of production code.
- Wireframes
- Hi-fi screens
- Clickable prototype
Build
Two-week sprints shipping to staging continuously. You review working software, not status decks.
- Staging from sprint 1
- CI gates enforced
- Fortnightly demo
Launch
Content load, redirect map, accessibility and performance audit, load test, then a rehearsed cut-over.
- Redirect map
- A11y + perf audit
- Rehearsed cut-over
Care
Thirty days hypercare included, then handover with training — or a monthly care plan if you’d rather we kept it.
- 30-day hypercare
- Docs + training
- Optional care plan
Engagement models
Fixed-fee per phase. Quoted after discovery, never before.
We won’t give a number before we understand the data model and the integrations — a quote produced from a sales call is a guess you end up paying for in change orders.
Marketing site
Website build
A marketing site on a headless CMS, built to publish from and to rank. Range depends on page count, content production and integrations.
- Up to 25 unique templates
- Headless CMS + editor training
- Technical SEO & analytics wired
- WCAG 2.2 AA audit
- EN + FR-CA at launch
Portal or app · most common
Product build
A customer portal or custom application with real integration depth. Most of our work lands here — replacing manual operations with something people actually log into.
- Discovery, design and build phases
- SSO & role-based access
- ERP / Odoo integration
- Automated test suite & CI gates
- Runbooks & architecture docs
- 30 days hypercare
Platform
Platform build
Multiple user types, multiple integrations, a migration to survive, and stakeholders across regions. Delivered as a sequence of independently useful releases.
- Multi-role, multi-region
- Phased release plan
- Legacy data migration
- Load & security testing
- Embedded team option
- 12 months advisory included
Build outcomes
Medians across 84 builds, measured post-launch.
Measured 90 days after launch against the baseline we recorded in discovery. Where a project missed its target we say so in the case study.
Median mobile LCP at launch
Lift in form conversion
Support tickets after portal
On-time launch rate
Client · Northkey
JTJonathan Tran · COO, Northkey · Toronto
Web & apps FAQ
Before you brief us.
If your question isn’t here, ask it on the call. We’ll tell you when configuration would beat a custom build, even though that’s the smaller invoice.
What kind of web design and development work do you take on?
Three kinds: marketing websites where the goal is pipeline, customer and partner portals where the goal is deflecting manual work, and custom web applications that replace a spreadsheet or a tool nobody sells. We do not take on consumer social apps, marketplaces without a distribution plan, or crypto.
How much does a website or web application cost?
Marketing sites are CAD $3k to $5k depending on page count, content production and integration depth. Portals and applications run $95k to $250k. Platform builds with multiple user types and heavy integration start at $250k. Everything is fixed-fee per phase, quoted after a paid discovery, and we publish the assumptions the number depends on.
How long does a project take?
A marketing site takes 3 to 4 weeks from kickoff. A portal or application takes 4 to 7 months to first production release, with usable increments in your hands from week six onward. We ship continuously to a staging environment rather than disappearing for a quarter and returning with a reveal.
What technology do you build on?
For marketing sites, Astro or Next.js with a headless CMS, or Odoo Website when the client is already on Odoo. For applications, Next.js and Postgres, or native Odoo modules when the data model already lives there. We pick the boring option that your team can hire for, not the one that is interesting to us.
Do you work with our existing brand and design system?
Yes, and we prefer it. If you have a design system we build inside it and hand back new components as tokens and documented patterns. If you don’t, we can run a brand identity engagement first, or design a lightweight system as part of the build so the site is extendable after launch.
Is accessibility and bilingual support included?
WCAG 2.2 AA is included in every build, not an upsell — contrast, keyboard paths, focus order, screen-reader labelling and an audit before launch. Bilingual EN/FR-CA is our default: French is treated as a first-class locale with its own content model and layouts sized for roughly 20% longer copy.
What happens after launch?
Thirty days of hypercare on every project, then either a handover to your team with documentation and a training session, or a monthly care plan covering dependency updates, security patches, performance budgets and a block of change hours. We do not require the care plan to hand over the code.
Who owns the code?
You do. Code lands in your repository from day one under a licence transfer on final payment, infrastructure runs in your cloud accounts, and there is no proprietary framework you have to keep paying us to maintain. If you replace us, another team can read the repository and continue.
Related services & reading
Related services
Build types
Security & compliance
● Let’s scope the build
A 45-minute call. Bring the constraints.
Tell us what has to be true at launch — the integration, the deadline, the budget, the team who inherits it. We’ll tell you what’s buildable inside it, and when configuration would be the better answer.
© Noordev Technologies Inc. · 2012–2026
Montréal · Toronto · Miami · Rabat