Skip to main content
Canadian software company since 2008

Software that quietly runs your business, built by people who stay

Fedri Consulting Services Ltd has been designing, writing, deploying and maintaining web software for eighteen years. We build websites, business applications, mobile apps for Android and iOS, REST APIs, databases and artificial intelligence features, and then we look after them for years afterwards. One team owns the architecture, the code, the server and the support inbox, so nothing gets passed around until it is forgotten.

Most agencies hand you a project and disappear. We are still running platforms we wrote a decade ago, still answering questions about them, and still improving them month after month. That is the difference between a vendor and a long term technology partner.

Full lifecycle ownership
Your code stays yours
Support after go live

Live production work

A platform we built and still operate today

QuranRecord is our flagship product, a school management platform used by Quran schools, madrasas, mosques, private teachers and families around the world. It runs on the web, on Android and on iOS, it is completely free for the schools that use it, and it is written, hosted, secured and supported entirely by Fedri.

1M+
Monthly page views
3
Web, Android and iOS
See the QuranRecord platform
18
Years in business since 2008
25
Service lines under one roof
1M+
Monthly views on our own platform
3
Countries where our work runs
Who we are

A software development company built around one simple promise

Fedri Consulting Services Ltd was registered in Canada in 2008. In the years since, we have delivered hundreds of websites and web based applications for clients in Canada, the United States and the Middle East. Some were small brochure sites for local trades. Others were database driven platforms that quietly handle thousands of records every day. What ties all of that work together is the promise we made at the start, which is that the person who writes your software will still be there when you need to change it.

We are deliberately small and deliberately senior. There is no layer of account managers between you and the engineer. When you describe a problem, the person listening is the same person who will open the code editor, adjust the database, restart the service and confirm the fix on the live server. Decisions travel in a straight line, which is why our timelines hold and why our clients stay with us for years rather than months.

Our work covers the entire software lifecycle. That means requirements gathering, written specifications, interface design, backend development, database architecture, mobile applications, REST APIs, server setup, security hardening, deployment, monitoring, training, documentation and the long tail of maintenance that follows every launch. Very few companies our size can genuinely say they do all of that in house. We can, because we have been doing it since 2008.

Read the full company story

We write the code

Nothing is subcontracted to a marketplace developer you never meet. The architecture, the code review and the deployment all happen here.

We run the servers

Linux, NGINX, Gunicorn, Redis, Celery workers, SSL and backups. We configure them, monitor them and patch them so you never have to think about them.

We answer the phone

Support is not a ticket queue that swallows your message. You write to a team that already knows your system and can act on the same day.

We stay for years

Software is never finished. We plan for version two and version ten before version one has even been released.

What we do

Twenty five service lines, delivered by one accountable team

Most companies come to us with a single problem, then discover that the same team can also host the result, secure it, put it in front of search engines and build the mobile app that goes with it. Every service below is delivered by the people who work here, not by a rotating cast of freelancers.

Flagship product

QuranRecord, a free school platform we built and still run every day

Anyone can list technologies on a services page. QuranRecord is how we prove that we can actually carry a platform. It is a complete school management system for Quran education, used by schools, madrasas, mosques, private teachers and families in many countries. It runs on the web, on Android and on iOS. It handles more than a million page views a month. It is free for every school that signs up, with no advertising and no premium tier hiding behind the useful features.

Every part of it comes from this company. The Django backend, the MySQL schema, the REST API that feeds both mobile apps, the Kotlin Android client, the SwiftUI iOS client, the Celery workers that send notifications, the Redis cache, the Linux servers, the security, the app store submissions and the support replies. When we tell a client that we can own a system from idea to daily operation, this is the evidence.

  • MySchool and FamilyHub give administrators, teachers and parents their own login with the right level of access.
  • QuranJourney merges scattered daily entries into one continuous Quranic sequence with downloadable reports.
  • Attendance and MissingRecord alerts close the gaps that paper registers always leave behind.
  • Subjects and Alimiyat track academic classes, vocational courses, sports and multi year scholarship programmes.
1M+
Monthly page views
100%
Free for schools
5s
To log one recitation
3
Web, Android and iOS

Built with the same stack we offer clients

PythonDjangoDjango REST Framework MySQLRedisCelery KotlinSwiftUIFirebase NGINXGunicornLinux
Why companies stay with us

Eighteen years of doing the boring things properly

Software companies rarely fail at the exciting part. They fail at the follow through, at the server that was never patched, at the backup nobody tested, at the developer who stopped replying. Our reputation was built on the opposite habits.

You talk to the builder

There is no translation layer. The person who takes your call understands your database schema, so requirements do not get lost between a salesperson and an offshore team. This single fact removes most of the misunderstandings that damage software projects.

The code belongs to you

You receive the source code, the database and the deployment notes. Nothing is locked inside a proprietary builder that holds your business hostage. If you ever want to move the project elsewhere, you can, and we will help with the handover.

Estimates that survive contact

We break work into pieces small enough to price honestly, then tell you which parts are certain and which parts carry risk. Clients are far happier with a realistic number than with an optimistic one that quietly doubles.

Security is not an extra

Certificates, security headers, password policy, permission checks, dependency updates and tested backups come as part of the build. We have never treated basic protection as a line item to be negotiated away.

Speed as a design goal

Slow software costs money every day it stays slow. We profile queries, add caching where it helps, move heavy work into background jobs and keep pages light so people on ordinary mobile connections are not punished.

Plain language, always

You will never be handed a document full of jargon designed to make the work look harder than it is. We explain the trade offs in ordinary words so you can make the business decision that only you can make.

How a project runs

A process that has been refined over hundreds of projects

Every project we have delivered since 2008 has followed roughly the same shape. The names change and the tools improve, but the sequence stays the same because it works. It starts with understanding and ends with a system somebody is responsible for.

The most important stage is the first one. When a project goes wrong, it is almost never because the code was written badly. It is because nobody wrote down what the software was actually supposed to do. We refuse to skip that step, even when a client is in a hurry.

Read the full process
1

Discovery and written specification

We sit with the people who will use the system and learn how the work happens today, including the awkward exceptions nobody mentions in the first meeting. The output is a written document that describes every screen, rule and report in plain language, so you can approve the plan before a single line of code exists.

2

Interface design and data model

Screens are laid out and the database is modelled at the same time, because the two decide each other. Getting the data model right at this stage saves months later, since a good schema absorbs new requirements while a poor one fights every change.

3

Development in visible stages

Work is delivered in pieces you can log into and try. You are never waiting three months to see something real, and small corrections happen while they are still cheap rather than after everything has been wired together.

4

Testing, deployment and training

We test the ordinary path and the awkward one, then deploy to a properly configured server with certificates, backups and monitoring in place. Your team receives training in plain language along with written notes they can keep.

5

Care, improvement and growth

After launch we watch the logs, apply security updates, tune the slow queries that only appear under real usage and plan the next set of improvements with you. This is the stage most vendors skip and the stage that decides whether software lasts.

Technology

A deliberately boring stack, chosen because it lasts

We do not chase frameworks. We choose tools with long support histories, large communities and predictable upgrade paths, because you will still be running this software in ten years and someone will need to maintain it.

Backend

Python and Django carry the business logic, with Django REST Framework exposing clean interfaces for web and mobile clients.

PythonDjangoDRF

Data and queues

MySQL for durable relational storage, Redis for caching and Celery for the work that should never block a page load.

MySQLRedisCelery

Mobile

Kotlin for Android and SwiftUI for iOS, both talking to the same API, both published and maintained on the stores.

KotlinSwiftUIFirebase

Infrastructure

Linux servers running NGINX and Gunicorn, with SSL, firewalls, automated backups and monitoring configured from day one.

LinuxNGINXGunicorn
Industries

We learn your business before we build for it

Good business software is mostly domain knowledge wearing a technical costume. Before we design a booking system we want to know what happens when two customers want the same slot. Before we design a school portal we want to know what a teacher does at half past eight in the morning when twenty children are waiting.

Over eighteen years we have built for education, charities and community organisations, retail and ecommerce, professional service firms, trades and contractors, healthcare administration, logistics and property management. Each field taught us something we still use, and none of them received a template.

Industries we serve

Education

Schools, madrasas and academies

Non profit

Charities and community groups

Retail

Stores and online sellers

Professional services

Consultants and agencies

Trades

Contractors and field teams

Logistics

Dispatch and tracking

In more detail

Working with a Canadian software development company that has lasted

Choosing a software development company is one of the more uncomfortable decisions a business owner makes, because you are buying something you cannot inspect before it exists. The proposals all look similar. The technology words are the same on every website. What separates one firm from another usually only becomes visible eighteen months later, when you need a change made quickly and you find out whether anyone is still there to make it.

Fedri Consulting Services Ltd was registered in Canada in 2008 and has been trading continuously ever since. That is eighteen years of invoices, renewals, migrations, framework upgrades, server moves, difficult clients, good clients, deadlines met and lessons learned. Longevity is not a marketing claim, it is simply the record. Companies that cut corners do not usually get to eighteen years, because the corners come back.

What we actually build for clients

The majority of our work falls into a few recognisable shapes. The first is the business website, which needs to explain a company clearly, load quickly, work on a phone and be found in search results. The second is the web application, which is really a piece of software that happens to run in a browser, covering bookings, memberships, inventory, approvals, records and reporting. The third is the mobile application, usually built because the people who need the system are standing up rather than sitting at a desk.

Around those three shapes sit the supporting services that decide whether the main system succeeds. Databases have to be designed so that reports stay fast when the table reaches a million rows. APIs have to be written so that a second system can be added later without rewriting the first. Servers have to be configured so that a certificate does not silently expire on a Saturday. Search visibility has to be earned with structure and content rather than borrowed with tricks. Every one of those is a service we provide, and each one has its own page on this website explaining exactly what is involved.

Why we build most systems with Python and Django

Django has been our main framework for years, and the reason is unglamorous. It ships with the security defaults, the administration interface, the database migrations and the user management that every business system needs, which means we spend our time building the part that is specific to your company instead of rebuilding foundations. It has a long history, a large community and a documented upgrade path, so a Django project written today can still be maintained a decade from now by someone other than us.

Alongside Django we use MySQL for storage, Redis for caching, Celery for background work such as sending thousands of notifications without slowing anything down, and Django REST Framework for the interfaces that mobile applications consume. On the mobile side we write native Kotlin for Android and native SwiftUI for iOS, because native applications feel better and behave better than the alternatives, especially on the older devices that a large share of real users still carry.

Artificial intelligence, used where it genuinely helps

We have been adding artificial intelligence features to production applications for several years, working with large language model platforms including Claude and DeepSeek. The interesting part is never the model, it is the plumbing around it. A useful AI feature needs access to your real data, clear boundaries about what it may do, a sensible fallback when it is unsure, a log of what it produced and a human being who can step in. We build that plumbing.

The features that pay for themselves tend to be quiet ones. An assistant that answers staff questions from your own policy documents. A classifier that routes incoming enquiries to the right person. A drafting tool that produces the first version of a repetitive reply. A search box that finally understands what people are asking. We are happy to tell you when artificial intelligence is the wrong answer to your problem, which is more often than the current enthusiasm suggests.

What happens after the project is delivered

Launch day is the beginning of the useful life of a system, not the end of the work. Browsers change. Operating systems change. App stores tighten their rules. Libraries publish security patches. Your business changes too, and the software has to keep up or it slowly becomes the thing everybody works around. Our maintenance plans exist because we have watched what happens to unmaintained software, and it is never a small problem when it finally arrives.

A typical care arrangement covers security updates, backup verification, uptime monitoring, content and small feature changes, an annual review of performance and a written summary each month of what was done. Clients on those plans rarely have emergencies, because the issues get caught while they are still routine. If you already have a system built by someone else and you have lost contact with them, we take those over regularly and we will tell you honestly what condition it is in before you commit to anything.

Where we work

Fedri operates from a Canadian office in Saskatoon, Saskatchewan and a United States office in Casper, Wyoming, and our work has been delivered to clients across North America and the Middle East. Because everything we build is designed for the web from the beginning, distance has never been the limiting factor. Clear writing, a shared specification and regular demonstrations matter far more than a shared postcode, and our longest client relationships have been with companies we rarely meet in person.

If you are weighing up a new build, a rescue of something that has gone quiet, or simply a second opinion on a quote you have received elsewhere, the contact page is the place to start. Tell us what you are trying to achieve rather than what you think you should ask for, and we will reply with a straight answer about whether we are the right firm for it.

Common questions

The questions we are asked in almost every first conversation

Fedri Consulting Services Ltd was registered in Canada in 2008 and has traded continuously since then, which makes 2026 our eighteenth year. Over that period we have delivered websites, business applications, mobile apps and hosted platforms for clients in Canada, the United States and the Middle East.

It depends entirely on scope, and anyone who quotes a figure before understanding your requirements is guessing. A straightforward business website sits at the low end. A database driven application with user accounts, permissions and reporting sits much higher. We give a written estimate broken into stages so you can see exactly what each part costs and decide what to include now and what to postpone.

You do. On completion you receive the source code, the database structure and the deployment documentation. We do not lock clients into a proprietary system that cannot be moved. If you later choose to work with another firm, everything they need to continue is already in your hands.

Frequently. We start with a review of the existing code, database and server, then give you an honest written assessment covering what is sound, what is risky and what it would cost to stabilise. Sometimes the recommendation is to keep and improve. Occasionally the recommendation is to rebuild, and we will explain clearly why.

Yes, and most clients choose that. We configure the Linux server, install certificates, set up automated backups, add monitoring and apply security updates. You get one company responsible for the whole thing rather than a hosting provider and a developer pointing at each other when something breaks.

Discovery and specification work can usually begin within a week or two of agreeing to proceed. Build scheduling depends on what is already in progress, and we will tell you a realistic start date rather than an encouraging one. Urgent repairs to a broken live system are treated differently and handled as quickly as we can.

Tell us what you are trying to fix

Describe the problem in your own words and we will reply with a straight answer about scope, cost and timing. If we are not the right company for the job, we will tell you that too, and point you somewhere sensible.