TargetX

Every other tool tells you what you already scored.
This one tells you what you still need.

Three ways into one record — your semester, your attendance, and Tex, which answers in your own words and shows the working. If your college runs etlab, it works for you.

Free for students, forever — written into the licence.
Your record is a file on your own machine, and no account is needed to use any of it — except Tex, whose sign-in is capped while it is in testing.

The marks you are already losing ↓

RegulationR 7.5.ii

76% attendance is not “fine”. It is two marks you have already lost.

Under Regulations 2024, attendance is not only an eligibility gate — it is a scored component of your internal marks, worth up to 5 of them, in every subject, in bands. Full marks start at 85%.

So a student sitting comfortably above the 75% line is still forfeiting marks, in every subject, quietly, all semester. No portal shows this. Nothing else computes it. It is the single largest number most students never see.

CIE marks earned by attendance alone R 7.5.ii
And below 60%, the door shuts. R 6.2 lets the Principal condone attendance under 75% only as far as 60%. Below that the exam cannot be sat, and attending from there on does not change it. TargetX says so on the day it becomes true — not after results.

What itdoes

The mark you need, per subject

Both pass conditions, not one: the 40% separate end-semester minimum as well as the combined total. Spreadsheets miss the first, which is how a subject that “looked passed” comes back as a supplementary.

How many classes you can still miss

Computed from real attended-over-held counts, with duty leave credited the way R 6.3.ii actually caps it — at 10% of classes held, which grows as you spend it. Answered as a number of classes, not a percentage.

The cheapest route to your CGPA

Name a target. TargetX works backwards to the SGPA each remaining semester has to carry, then to which subject is cheapest to push and how far — balanced so the plan is one a person can actually attempt, rather than four subjects at 95.

Your marks, in without typing them

Sign in to your college’s etlab portal and it pulls every semester, attendance, series marks, grades and published SGPA in one pass. Your password is used for that one request and never stored — or skip it entirely and type things in by hand.

Your college’s rules, not just KTU’s

It ships set to Regulations 2024, checked against the document rather than copied from another calculator. But the numbers are not welded in: the grade bands, the pass mark, the separate exam minimum, the attendance you need and what attendance is worth all live in a profile you can copy and edit. If you are at an autonomous college, set yours once and every figure after that is computed against your rules. The built-in profile is marked checked; one you have edited is marked not checked, everywhere it appears.

And a profile travels. Whoever reads the regulations once exports theirs and hands the text to the rest of your course. It carries rules and nothing else — no marks, no attendance, no name — and it cannot arrive claiming to be checked, because that flag is never read off a file. You get the numbers, and you get to know who sent them.

The TargetX home screen: a CGPA of 7.10, a tile reading “Attendance is costing you marks — 7 CIE marks lost across 7 subjects”, and one subject flagged as below 75%.
The home screen. The middle tile is the one no other tool draws — marks already forfeited, and the cheapest way to win one back.
The same home screen on an Android phone: an Ask Tex bar at the top, the standing card reading 7.09 CGPA with a projected SGPA gauge, and the attendance tile beginning below it.

The same record on a phone, same engine underneath — one arithmetic, not a cut-down second version of it. The Android build is out. It is an .apk in the table below, sideloaded rather than from Play — the notice under the table says what your phone will ask you first.

A note fromRishi

I built this because of one number.

I was sitting at 76% attendance and thought I was fine. Everyone says 75 is the line. Then I actually read Regulations 2024 and found R 7.5.ii — attendance is not only the eligibility gate, it is worth five internal marks, in bands. At 76% I had already given away two of them. In every subject. All semester. And nothing had told me: not the portal, not any of the calculators, nobody.

That annoyed me enough to build this. Then it turned into a thousand tests, because once you are the thing telling people what they need to score, being approximately right is not good enough.

This release, 0.5.0, is the last one built on etlab sync. Not because it broke — it works better than it ever has. Your college’s rules can now be written once and passed to everyone else on your course, Tex answers you properly instead of silently jumping you to a screen, and the things students reported are fixed in it.

The real reason is harder to say out loud. To keep working on this I would need someone to pay for it, and the only people who could are colleges — and no college is ever going to buy software that logs into their portal with their students’ passwords. They would be right to refuse. I would refuse. On top of that, the whole thing can be switched off on any ordinary afternoon by someone at etlab who has never heard of me, and there would be nothing I could do about it. That is not a foundation. I would rather say so than let the repo go quiet and have you work it out yourselves.

And honestly, the questions I have started caring about are on the other side of that wall anyway. Which students are about to lose exam eligibility, while there is still time to fix it. What a whole class is struggling with, not just me. Whether the internal marks a college submits to KTU are even correct. None of that is reachable from one student’s login, and all of it matters more than a number on my own screen.

So I am going to go and build that properly — with a college’s own data, and its own permission, instead of around it. The regulation engine underneath this app is the part that took longest and is tested hardest, and it is the part that comes with me.

You lose nothing
This build keeps working for as long as your portal does. Free, on your own machine, and written into the licence rather than promised — so it was never something I could quietly take back.
Still tell me if a number is wrong
A figure that disagrees with your portal is still a bug, I still want to know, and the engine it lives in is the one I am carrying forward. Reporting it now helps the next thing too.
Thank you — really
Every issue anyone opened made this better. Two of them, #12 and #13, are fixed in this exact release. Someone took the time to write those, and it mattered.

I wanted to know what I needed to score, and the portal would not tell me. That question is answered now, and the answer is yours to keep.
— Rishi, still a KTU student, still checking his own attendance in this thing

Getthe app

Download

A desktop app — Windows, macOS and Linux. It installs for your user account only, so it needs no administrator rights, and it runs entirely offline apart from the portal you point it at.

Recommended for you

Windows · installer

Fetching the latest release…

Every build in the current release
PlatformFileSizeDownload
Windows .exe installer, and .msi for deployment unsigned — Releases
macOS .dmg, universal not notarised — Releases
Linux .AppImage and .deb — Releases
Android .apk, phones and tablets sideloaded 27 MB Releases
There is no iPhone version, and there is not going to be one. Apple desktops are covered by the .dmg above; it is the phone that is missing. An iPhone runs only what Apple has signed, and Apple signs for members of its Developer Program, which costs $99 a year. It is rent. The year the payments stop, the app stops installing for everyone who has it. TestFlight is not a way round it either: a build uploaded there stops opening 90 days later, so a student would lose the app four times a year and have to be re-invited each time. Everything on this page is a file you download and keep. iOS has nothing of that shape. Android does: the build is on the release page now, listed above.
Android will warn you before installing this. It is not sold through Google Play, so the phone treats it as coming from an unknown source and asks you to allow it once, for the app doing the installing — usually your browser. That prompt is Android working correctly, and you should be suspicious of any app that tells you to turn the warning off and move on. What you can check instead is that the file is the one that was built: every release publishes the APK’s SHA-256 beside it, and any file manager or Termux can print the same figure for the file you downloaded. The app is signed with a 4096-bit key held by the person who wrote it, which is what lets your phone confirm that a later update came from the same place — and is why an update signed by anyone else will be refused rather than quietly installed.
Windows may refuse to download this. The installers are not code-signed, so Windows has nothing to identify the publisher with and falls back to reputation — which a new file with few downloads does not have. Usually that is SmartScreen asking you to choose More info, then Run anyway. Sometimes Defender is blunter and blocks the download outright, or deletes the file after it lands. If that happens, the .msi on the same release page goes through Windows Installer and is flagged far less often; it installs for the whole machine, so it asks for administrator rights, which the .exe deliberately does not. Rather than ask you to take any of that on trust, every release publishes SHA256SUMS-<platform>.txt beside the installers, so you can check that what you downloaded is what was built. In PowerShell: Get-FileHash .\TargetX_<version>_x64-setup.exe -Algorithm SHA256 A certificate is on the list. A checksum proves the file did not change in transit, not who built it — it is not a substitute, and this page will say so until one is bought.
macOS will refuse to open it outright. The build is not notarised by Apple, so Gatekeeper does not offer a way through — it reports that TargetX is damaged, or that the developer cannot be verified, and stops. It is neither; that is the message macOS gives any unnotarised app. Open System Settings → Privacy & Security, scroll to the note about TargetX being blocked, and choose Open Anyway. If it does not appear there, clear the quarantine flag the browser attached: xattr -dr com.apple.quarantine /Applications/TargetX.app Check the SHA-256 above first. Running that command on software you have not verified is exactly how the protection is meant to be used against you, and it is worth being suspicious of any page that tells you to type it — including this one.
Updates are signed, even though the installer is not. A few seconds after launch the app checks whether a newer version exists, and asks you before doing anything about it. What it downloads has to carry a signature made with the key your copy was built to trust. If it does not match, the file is thrown away and nothing is installed.

Where yourdata lives

On your machine. That is the whole answer.

Your marks are a file in your own user profile. Nothing about them is transmitted anywhere, and there is no telemetry, no analytics and no crash reporting — the app makes network requests to exactly four places, and the fourth only if you choose to sign in:

github.com
Once on launch, to ask whether a newer version exists. Block it and the app works unchanged.
raw.githubusercontent.com
Once on launch, to refresh the KTU course catalogue, so a curriculum revision does not need a new build.
Your college portal
Only when you press Sync, and only to the address you typed. Your password is held for the length of that one request — never written to disk, never put into the saved record, never in the export, never in a log.
The question box
Only if you sign in, and only for a question the app could not answer by itself — most are answered on your machine and never leave it. What is sent is your question and the code and title of your subjects. No marks, no attendance, no CGPA, no name, no register number. What comes back is a destination, not an answer: one of five screens, or one of your own subjects, and anything else is rejected. Every figure you then read was computed here.
Sync has been proved against one college’s etlab so far. If yours lays its pages out differently, the sync fails and shows you what it could not read rather than recording half a semester. You can check whether it will work without giving anyone an account: save your academics page from a browser you are already signed in to, and drop the file onto Data → “Will sync work at my college?”. The page never leaves your machine; what the app offers you to send is a separate block of table shapes with every digit blanked out.

Forcolleges

Students never pay. Institutions do.

TargetX is licensed under BUSL-1.1, and the right of an individual student to use it free, forever, is written into the licence rather than offered as a policy that could be withdrawn. Deploying it across an institution is a commercial use.

Install scope
Per user, not per machine — no administrator rights, and a student’s academic record stays out of a shared location on a lab machine.
Silent deployment
NSIS /S and msiexec /qn, for Intune, SCCM or a login script.
Reads only
The app has no code path that writes to a portal. The session cookie lives in the native process, where nothing in the web layer can reach it.
The detail
DEPLOYMENT.md answers “what is this and what does it touch?” — every claim on this page is checkable there against named files.

Somethingwrong?

A wrong number is a bug, and it is worth reporting.

TargetX has been proved against one college’s portal and one set of regulations read carefully. Neither of those is the same as being right everywhere. If a figure it shows you disagrees with what your college recorded, the college is right and this is a defect — and it is one worth knowing about, because the same arithmetic runs for everyone.

Report a problem

GitHub issues

No account with us — you will need a free GitHub account, and nothing else.

What makes a report actionable. The subject code, the figure TargetX showed, the figure you expected, and where the real one came from — a portal page or a grade card. If a sync failed, the app’s Data screen names the log file; its contents are error messages and nothing about your marks, and you can read it before you send it. Never paste your portal password into an issue, and blank out your roll number: an issue is a public page.

Questions and “will this work at my college?” belong in discussions rather than issues. Security problems should not be filed in public at all — use GitHub’s private advisory form, which is only visible to the maintainer.