Changelog
A simple record of recent NTU Mods updates, fixes, and new features.
NTUMods runs on Astro now
28 Jul 2026
| Type | Description |
|---|---|
| Performance | NTUMods is now rebuilt on Astro and now hosted on Cloudflare's global network — pages should feel snappier no matter where in the world you're loading from. |
| Improvement | No visible changes to how you use NTUMods — same features, same layout, just a faster foundation underneath. |
Custom blocks in generation and sharing
27 Jul 2026
| Type | Description |
|---|---|
| Bug Fix | Generate mode no longer ignores custom blocks — it treats them as real obstacles and won't schedule a class on top of your gym, CCA or work slot. Your own blocks stay exempt from the day-hours, lunch-break and spacing settings, so an early or late block can never make generation impossible. |
| New Feature | Custom blocks can hold multiple options — different sets of days and times for the same commitment. Generation picks whichever option fits best, just like it picks module indexes. Switch options by hand from the sidebar or by clicking the block in Pick indexes mode. |
| New Feature | Share links can now carry your custom blocks — tick Include custom blocks in the new Share dialog. For long timetables, Copy as text gives a code the receiver pastes into Import from text, choosing which plan to import into. |
| Bug Fix | Viewing someone's shared timetable no longer draws your own custom blocks over it. |
Filter modules by day and time
24 Jun 2026
| Type | Description |
|---|---|
| New Feature | Filter the module browser by day and time — select which days you're available and set a time window (e.g. no classes after 6pm). Only modules with at least one viable index that fits your constraints are shown. |
Student links page and custom courses
22 Jun 2026
| Type | Description |
|---|---|
| New Feature | New Links page — quick access to the top NTU student portals (STARS, NTULearn, Degree Audit, CareerAxis, GEM, and more), split between official NTU portals and NTUMods tools. |
| New Feature | Add custom courses to your timetable — block out personal time slots like gym, lunch, or CCA with a name, colour, and venue. Custom blocks appear on the timetable grid and flag clashes with registered modules. |
| New Feature | Custom courses are per-plan — each of your 5 timetable plans has its own set of blocks, and duplicating a plan copies them over. |
| Content | New guide: How to use custom courses on NTUMods — walkthrough with examples for planning personal time alongside registered modules. |
Exam schedule, timetable generator improvements, and module page polish
14 Jun 2026
All features and improvements in this release are based on feedback from anonymous students. Thank you!
| Type | Description |
|---|---|
| New Feature | New Exam Schedule page — search AY 2026/2027 Sem 1 exams by module code or name, group by date or school, and click any row to go to the module page. |
| Data | AY 2026/2027 Sem 1 exam timetable data added — visible on the exam page and on individual module pages. |
| Improvement | Restructured module detail pages — workload moved to the top, additional info collapsed into an expandable section, and exam disclaimer added below the timetable overview. |
| Bug Fix | Fixed Roman numerals in module titles being lowercased (e.g. "Iii" → "III") and missing spaces after sentence-ending periods in descriptions — applied retroactively across all semesters. |
| Improvement | Module descriptions with inline enumerated lists now render as proper bullet lists instead of one unbroken paragraph. |
| New Feature | Generate timetables from a comma-separated list of module codes — paste them all at once instead of adding one by one. |
| New Feature | Lock a specific index for any module before generating — the generator will only consider that registration group. |
| New Feature | Hide duplicate timetable results that share identical timeslots but differ only by index number. Toggle "Hide same-timeslot duplicates" in the results panel. |
| New Feature | Module pages now include an interactive prerequisite graph so you can visualise dependency chains at a glance. |
| Improvement | When generation finds no results, the tool now analyses your constraints and suggests the specific setting to relax — instead of a generic error message. |
| Improvement | Duplicate plan option added to the plan actions dropdown. |
| Bug Fix | Fixed module search input resetting mid-type after the debounce fired. |
AY 2026 Semester 1 now available
29 May 2026
| Type | Description |
|---|---|
| Data | AY 2026 Semester 1 course data is now live — 1,126 courses and 4,842 indexes available in the timetable and module browser. |
| New Feature | Current semester now shown prominently in the navbar and footer. |
| Improvement | Moved Help to /faq with a table of contents for quicker navigation. |
Articles search, categories, and new guides
22 May 2026
| Type | Description |
|---|---|
| New Feature | Added a search bar and category filter to the Articles page. |
| New Feature | Added article category pages for browsing guides by topic. |
| Improvement | Articles now grouped by category in the default list view. |
| Content | Published 4 new guides: complete NTU BDE list, best CC modules, module selection guide, and whether BDEs count toward your degree. |
| Bug Fix | Fixed a navigation error when browsing articles by category. |
Resources dropdown and mobile navigation
21 May 2026
| Type | Description |
|---|---|
| Improvement | Replaced the Help link in the navbar with a Resources dropdown grouping Changelog, FAQ, and Sitemap. |
| Improvement | Redesigned mobile navigation with a right-side drawer for easier access. |
| Bug Fix | Fixed timetable onboarding modal not dismissing after initial setup. |
Timetable modes and index picking
21 May 2026
| Type | Description |
|---|---|
| Improvement | Improved index picker focus on the timetable: other modules dim heavily when picking, alternate indexes are clearly highlighted, and selecting resets immediately for the next pick. |
| New Feature | Consolidated screenshot, calendar export, and share into a single timetable actions dropdown (•••). |
| New Feature | Added a mode selector to the timetable — Timetable, Generate, and AI modes (generation and AI coming soon). |
More BDE guides and navigation
20 May 2026
| Type | Description |
|---|---|
| Content | Published 6 new BDE guides covering engineering BDEs, BDE vs minor, easy BDEs, bidding, language BDEs, and an expanded overview — all in Articles. |
| New Feature | Added a Sitemap page listing all pages on the site. |
| Improvement | Updated footer with better interlinks across site sections. |
Better timetable planning
29 Apr 2026
| Type | Description |
|---|---|
| New Feature | Added click-to-switch index previews so you can compare class groups directly from the timetable. |
| Bug Fix | Improved filtering behavior when browsing and selecting indexes in the module browser. |
| Improvement | Polished mobile responsiveness and visual styling across timetable views. |
Articles and planning guides
29 Apr 2026
| Type | Description |
|---|---|
| New Feature | Added an Articles section for NTU module planning guides. |
| Content | Published guides for common curriculum modules, BDE planning, and popular BDE choices. |
| Improvement | Added supporting article navigation and reader-friendly page layouts. |
Feedback and support
22 Mar 2026
| Type | Description |
|---|---|
| Improvement | Updated feedback submissions so reports can be sent by email. |
| Content | Expanded FAQ documentation and help content. |
Data, modules, and exams
8 Mar 2026
| Type | Description |
|---|---|
| Improvement | Moved module browsing and module detail pages onto API-backed data routes. |
| Data | Added exam schedule data where available on module pages. |
| Improvement | Simplified semester navigation and derive the latest semester from available data. |
| Data | Cleaned up older data files and refreshed module/index data. |
Sharing and exports
22 Mar 2026
| Type | Description |
|---|---|
| Bug Fix | Fixed timetable sharing behavior and share button handling. |
| Bug Fix | Re-enabled calendar export support from the timetable after compatibility fixes. |
| Performance | Improved static data delivery to reduce serverless function usage. |
Multi-semester support
21 Feb 2026
| Type | Description |
|---|---|
| New Feature | Added multi-year and multi-semester support — browse modules and plan timetables across different academic years and semesters in the module browser. |
| Improvement | Current academic year and semester now shown in the page header with no layout shift. |
AY 2024/2025 data
9 Jun 2024
| Type | Description |
|---|---|
| Data | AY 2024/2025 course data added — all modules and indexes available in the timetable and module browser. |
Workload info and module filtering
30 Mar 2024
| Type | Description |
|---|---|
| New Feature | Added a workload breakdown table to each module page showing lecture, tutorial, lab, and project hours. |
| New Feature | Added module level filtering (1000–4000+) to the module browser. |
Timetable sharing
19 Dec 2023
| Type | Description |
|---|---|
| New Feature | Share your timetable with friends via a link. |
| Improvement | Indexes are now assigned without clashes automatically when picking modules. |