Why eSkolarFeaturesHow it worksSecurityFAQBook a demo
SrpskiСрпскиEnglishBosanski
Complements esDnevnik · doesn't replace it

esDnevnik runs the students. eSkolar runs the school.

A multi-tenant information system for managing employees, contracts, academic structure and extraordinary exams — with a public portal for exam registration. One installation, all your schools.

In production at Tehnička škola „Izudin Šušević“, Novi Pazar — Mechanical Engineering · Electrical Engineering & IT · Transport
eskolar.platform / dashboard

Dashboard

Tehnička škola „Izudin Šušević“ · 2025/2026
128
Employees
6
Expiring contracts
3
Sick leaves
2
Active periods
Employees by status
Active Annual leave Sick leave Suspension
Registrations by month
New registrations Live
MA
Marko AkovićMathematics · Level IV
Edina ŠabovićSerbian language · Level III
Reminder

The contract of N. Hodžić expires in 7 days.

0
User roles
0
Security layers
0
System languages
<0min
School onboarding
0+
Translated terms
Why eSkolar

esDnevnik tracks students.
Who tracks the school itself?

esDnevnik covers teaching and parent communication superbly. But the operational life of a school — employees, contracts, mandates, extraordinary exams — still lives in Excel spreadsheets and on paper. eSkolar covers exactly that space.

esDnevnik covers
Teaching and regular students
  • Grades, absences and assessment of regular students
  • Class schedule and teaching log
  • Communication channel with parents
eSkolar fills in
Operational school management
  • HR records of employees: diplomas, certificates, licenses, mentorships
  • Contracts, principal mandates and sick-leave history
  • Academic structure over time: fields, programs, subjects
  • Extraordinary exam periods and student registrations
Personal ID as sensitive data (DPA)Level III / IV qualificationLatin and Cyrillic
Features

All school operations
in one place

Modular, yet connected. From employee HR records to extraordinary exam registration — one system, one database, one source of truth.

HR module

A central registry of all employees — not just system users. Records with diplomas, certificates, license, mentorships and a full audit log of every change.

Audit logBulk importPDF record

Contracts & mandates

Contract history per employee, mandates of principals and deputies, sick-leave records with automatic status transitions and reminders before expiry.

RemindersHistory

Academic structure

Field of work → program → subject hierarchy. Seven subject categories by Serbian classification, level III/IV and program verification with the relevant institution.

3 levelsVerification

Extraordinary exams

Create an exam period through a step form, assign subjects and professors, public link and QR code. Registrations arrive live, with filters, bulk actions and CSV export.

QR codeRealtimeCSV

Student portal

A public, mobile-first portal with no registration. A cascading 11-field form guides the student through field, occupation and subject to a confirmation with a QR payment code.

No accountMobile-first

Role-based dashboard

One dashboard, three faces: the principal sees all metrics and charts, the secretary an HR focus, the professor only their own subjects and pending registrations.

ChartsBy role
HR record

A complete employee record — from diploma to audit log

Every change to sensitive data (status, qualifications, license, mentorship) is automatically recorded via a database trigger. The school administrator can see at any moment who changed what and when — without relying on client-side code.

  • Audit log per fieldJSONB snapshot of the old and new state on every change
  • Private document storagePDF records through short-lived signed URLs
  • Bulk import from Excel/CSVRecognizes Serbian and English column names, row-by-row validation
Status: Active
Employee
Position
Status
AH
Amela Hodžićamela.h@skola.edu.rs
Mathematics teacher
Active
DR
Damir Rizvićdamir.r@skola.edu.rs
Principal
Mandate
SJ
Sanela Jusićsanela.j@skola.edu.rs
Serbian teacher
Sick leave
NK
Nedim Kurtovićnedim.k@skola.edu.rs
Secretary
Active
How it works

From exam period to registration —
in real time

The admin platform and the student portal read from the same database, but through different security policies. The student creates no account; the administrator sees the registration the very same moment.

New exam period
Admin · Tehnička škola „Izudin Šušević“
Period name
Extraordinary period — June 2026
Exam date
15/06/2026
Register by
10/06/2026
Subjects and professors
8 subjects · 6 professors
Publish period and generate QR
Public link + QR for students
eSkolar
Exam registration
Extraordinary period — June 2026
15/06/2026 · Register by 10/06
5 days leftRegister
Extraordinary period — April 2026
Period closed
Closed
1

Create the period

The administrator adds a period and assigns subjects and professors through a step form.

2

Public link and QR

The system generates a public slug and a QR code for the notice board, school website or a message.

3

Student registration

The student opens the link and fills in the cascading form — with no registration whatsoever.

4

Live intake

The registration appears at the administrator in real time, without refreshing.

5

Confirmation and payment

Upon approval the student receives an e-mail and a QR code with the amount to pay.

Multi-tenant architecture

One installation.
All your schools.

eSkolar has been built as a multi-tenant system from the very first migration: one codebase, one database, N schools. Every table carries school_id, and data isolation between schools is guaranteed by row-level policies in the database.

Full isolation per school

Row-level policies (RLS) automatically filter every query by the logged-in user's school. One school's data never leaves its context.

Context switching

A dedicated platform role can move between schools through the “school switcher” in the header — ideal for overseeing a network of schools.

Linear scaling

Adding a new school is a new row in a table, not a new server. No duplication of code or infrastructure — the operational burden stays the same.

Onboard a new school in under 30 minutes
A 4-step wizard: school details → initial subjects → administrator → review.
eSkolarone database
School Aschool_id: 1
School Bschool_id: 2
School Nschool_id: N
Security & access

Five layers of protection.
No data ever leaves its school.

Permission checking isn't one gate but five — from the network edge to the database. Even if one layer gave way, the next still protects the data.

1
Middleware at the edgeBlocks access to a route before the page even loads
Edge
2
Server-side protectionAn additional role check when the page itself renders
Server
3
UI gatesButtons and items hide if the user has no permission
Client
4
Checks in actionsEvery database write verifies the role before executing
Actions
5
Database isolation (RLS)PostgreSQL guarantees data separation per school
Database

Eight roles, configurable per school

The permission matrix covers 12+ resource domains. Each school tailors permissions through the interface — with no code changes, and an audit trail.
platform_adminsuper_admindirectorassistant_directorpedagogueaccountantsecretaryprofessor

Privacy by standard (DPA)

Personal data protection is built into the foundation, not added later.
  • Personal ID encryption in the database via pgcrypto
  • Per-school isolation as default behavior
  • Audit log of every change to sensitive HR data
FAQ

Before you get in touch

No. eSkolar complements esDnevnik. esDnevnik stays for regular students, grades and parent communication; eSkolar covers operational school management — employees, contracts, academic structure and extraordinary exams. Both platforms can coexist.
Under 30 minutes. A four-step wizard walks through the school's basic details, an initial set of subjects and fields, creating the first administrator and a review. When done, the school immediately has an active administrator with an invitation and a default exam price list.
No. The student portal is public and mobile-first. The student opens a link or scans a QR code, fills in the form and gets a confirmation — with no registration and no account. The registration reaches the administrator in real time.
Through five layers of protection and isolation at the database level. The personal ID is stored encrypted, data is separated per school as default behavior, and every change to sensitive HR data is recorded in an audit log. The system complies with the Personal Data Protection Act.
Four: Serbian Latin, Serbian Cyrillic (automatic transliteration), English and Bosnian. The user picks a language through the switcher in the header, and over 699 terms are synchronized across all languages.
Yes. Each school can customize the permission matrix through the settings interface, without any code changes. Every customization carries an audit trail — who changed the rights and when — and sensitive roles are additionally protected.

Ready to see eSkolar live?

Book a demo tailored to your school. We'll show you onboarding, the HR record, an exam period and the student portal — from start to finish.

or write to us directly at skolar.platform@gmail.com