Release Notes

See what's new in NavEd. Product updates, new features, and improvements for micro school, co-op, and homeschool management.

136 releases
Page 5 of 14
v2026.3.5.1

Improved: Subjects page security and access control hardening.

Improvements

  • Server-side feature gating on /subjects/ -- schools without Subject Management enabled are now properly denied access
  • Quick Actions buttons (Manage Subjects, Enroll by Student, Enroll by Subject) restricted to administrators only
  • Student count on subject cards is now visible only to staff and administrators; students and parents see "Enrolled" instead

v2026.3.4.1

Student roster page: performance cleanup and reliability improvements.

Fixes and Improvements

  • Removed 17 debug logging calls that were flooding production logs and leaking SQL query text
  • Eliminated 4+ redundant database queries per page load (extra COUNT, sample fetch, list conversion)
  • Added null guards for grade, school, and session year fields — prevents crashes when related records are missing
  • Added empty state messages when no students match the current filter
  • Removed unused "User Type" column from the roster table

v2026.3.3.6

New on the blog: a practical guide to free gradebooks for homeschool families.

If you're a homeschool parent still tracking grades in Google Sheets — or a co-op coordinator emailing spreadsheet summaries to families — we wrote this one for you. The post walks through what to look for in a free gradebook, honestly compares the options (including when a spreadsheet is genuinely enough), and explains how NavEd works for both individual families and co-ops.

We also clarify the difference between our no-account free gradebook tool and NavEd's free plan (first 5 students, full platform) — two different entry points that serve different needs. Whether you're tracking three kids at home or coordinating grades across a 20-student co-op, there's a free path to get started.

Read it at nav.education/blog/free-online-gradebook-homeschool/


v2026.3.3.5

Free printable ESA compliance checklist — ready to print or save as PDF.

If your microschool accepts ESA funds, staying audit-ready isn't optional. But figuring out exactly what documentation you need — across vendor registration, attendance, grades, enrollment, and financials — takes real research. We wanted to make that easier.

We've published a free compliance checklist at nav.education/resources/esa-compliance-checklist/ that covers all five areas ESA programs typically audit. You can work through it on screen (checked items get a strikethrough so you can see your progress), or hit the "Print / Save as PDF" button to get a clean, printer-friendly version — no nav, no clutter, just the checklist on paper. It's also linked directly from our ESA state guide blog post.

Fixes and Improvements

  • New public resource page at /resources/esa-compliance-checklist/
  • Print-optimized layout hides navigation, footer, and buttons — just the checklist
  • Quick reference table shows which sections NavEd Standard covers automatically

v2026.3.3.4

The attendance pages now match the rest of NavEd.

Two pages — the student attendance history and the parent multi-child attendance view — were still using the old interface style. They worked fine, but they felt dated and inconsistent next to the rest of the app.

Both pages have been rebuilt to match the clean, modern look you see everywhere else in NavEd. The attendance stats are now shown in the same stat cards used across the platform, monthly records collapse neatly with a tap, and the progress bar uses color cues (green above 90%, yellow between 75–90%, red below) so you can read the situation at a glance. Parents viewing multiple children get a compact card per child — all stats visible without scrolling, with months collapsed by default so you only open what you need.

Fixes and Improvements

  • Attendance rate progress bar now shows color based on threshold (green / yellow / red)
  • Monthly attendance sections collapse — most recent month opens by default for students
  • Parent view: month sub-sections start collapsed so the stats are the focus
  • All icons now hidden from screen readers for a cleaner accessibility experience

v2026.3.3.3

New: browse any day's attendance from the dashboard.

The attendance dashboard was locked to today with no way to look back. If you missed something yesterday or needed to review last week's absences, you had no option.

Now there is a date navigation bar between the stats and cohort cards. Use the left/right arrows to step day-by-day, pick any date from the date picker, or tap "Today" to jump back. The next-day button is disabled when you are already viewing today, and future dates are clamped to prevent confusion. The daily absence list heading, empty-state messages, and CSV download link all reflect the selected date. Tab switches preserve the date so you don't lose context.

New Features

  • Previous/next day navigation arrows on the attendance dashboard
  • Date picker input (max = today) for jumping to any past date
  • "Today" quick-return button when viewing a historical date
  • Date-aware absence list heading ("Absence List for Monday, Mar 2, 2026")
  • Past-date empty states distinguish "no attendance recorded" from "pending"
  • Tab switches and cohort management links preserve the selected date

v2026.3.3.2

Bug fix: students and parents can now see attendance records on the dedicated attendance page.

Every student visiting their attendance page (/attendance/student/<id>/) was seeing "No Attendance Records" -- even when their school had been diligently tracking attendance for months. The page existed and loaded fine, but the view was passing attendance data under the wrong variable name, so the template always fell through to the empty state.

The fix wires the correct month-grouped data into the template and adds summary statistics (total days, present/absent/late counts, and an attendance percentage progress bar) at the top of the page. Parents viewing their child's attendance see the same data.

Fixes and Improvements

  • Student attendance page now correctly displays month-grouped attendance records
  • Added summary stats row: total days, present count, absent count, late count
  • Added attendance percentage progress bar
  • Replaced 4 separate COUNT queries with a single aggregate query for better performance

v2026.3.3.1

Security fix: attendance CSV export and cohort access now properly gated.

We found two gaps in the attendance module's access controls. First, the CSV export endpoint for daily absences did not check whether your school's plan includes attendance tracking, meaning a staff member at a Standard-tier school could access it via direct URL. Second, the "take attendance" page accepted any cohort ID without verifying it belongs to the staff member's school, which could allow cross-school access.

Both gaps are now closed. The CSV export requires the attendance_tracking feature, and cohort lookups filter by the user's school.

Fixes and Improvements

  • Attendance CSV export now requires the attendance_tracking feature to be enabled
  • Taking attendance verifies the cohort belongs to the requesting user's school
  • Cleaned up dead legacy attendance dashboard template
  • Replaced 7 hardcoded user-type checks with a DRY is_hod context variable
  • Added comprehensive docstrings and HTML comments to attendance views and templates

v2026.3.2.1

Security fix: staff users can no longer view student home addresses or parent contact details by manipulating the URL.

We discovered that staff members could bypass tab visibility restrictions on the student profile page by manually editing the browser URL to include ?tab=settings. This allowed them to see student home addresses and parent contact information (name, email, phone number) that should only be visible to school administrators, students viewing their own profile, and parents.

The fix validates the requested tab against each user's permitted tab list before loading any tab content. If a user requests a tab they are not authorized to see, the page defaults to the overview tab instead.

Fixes and Improvements

  • Fixed information disclosure vulnerability where staff could access restricted student settings tab via URL manipulation
  • All unauthorized or invalid tab values now fall back to the overview tab
  • Updated documentation to reflect that parents have 7 tabs (including settings, added in a previous release)

v2026.3.1.1

Sending feedback now works reliably for all users, regardless of how you signed up.

We discovered an issue where users who created their NavEd account through our sign-up flow — rather than being added directly by a school admin — could run into an error when submitting feedback. The error was silent for most users, but it meant their feedback never reached us.

The root cause was a technical mismatch: our sign-up process creates a temporary session on our main domain before routing you to your school's workspace. A small subset of requests reached the feedback form before that handoff was fully complete. We've added a guard that catches this situation early and returns a clear response instead of crashing quietly.

Fixes and Improvements

  • Fixed feedback submission failing for users arriving via the sign-up flow
  • Added safeguard to prevent errors when feedback is submitted outside a school workspace context

v2026.2.28.1

Internal: removed legacy sidebar template and added regression test guard.

Removed the old AdminLTE sidebar template (sidebar.html) and its backup (base_adminlte.bak.html), both of which were dead code still containing the original N+1 query pattern that was fixed in the previous release. Retaining dead code with a live bug pattern is a latent regression risk. An integration-level test has been added to verify that the feature-gating context processor correctly injects the batch-loaded feature catalog into every authenticated request — closing the gap where unit tests covered template tag behavior in isolation but not the end-to-end wiring.

Fixes and Improvements

  • Removed legacy AdminLTE sidebar template (dead code with original N+1 bug pattern)
  • Added integration test to guard against accidental removal of the feature-gating context processor

Want to stay updated?

Sign up for NavEd to get notified about new features and improvements

Get Started Free