Changelog
A simple record of recent NTUMods updates, fixes, and new features.
Q4 2026 13 updates
24 Oct 2026
A more consistent site
- ImprovementEvery page now shares the same cards, links, buttons, headings and icons. Text is easier to read in light mode, cards stand out from the page, and hovering anything clickable gives the same feedback everywhere.
- ImprovementThe developer docs have an On this page list again, and the page sits centred between its two side navs. On phones, both navs open as drawers from a bar under the menu.
- ContentStudent links adds the official campus map, One Stop @ SAC, a Student life section with clubs, the Students' Union and health care, and every NTUMods page.
- Bug FixOn phones, tapping the dimmed area beside an open drawer now closes it, and the copy button on code no longer shows above the menu.
23 Oct 2026
MCP server
- New FeatureA public, read-only MCP server lets AI assistants such as Claude and ChatGPT search modules and read class indexes and exams. No account or key is needed.
- ContentThe privacy policy now covers what the MCP server logs, and the terms of use name it alongside the public API.
22 Oct 2026
Timetable redesign
- New FeatureThe timetable page has been redesigned. A single toolbar holds every tool, plans can be named, the side panel can sit beside or below the grid, and the new Appearance dialog changes the radius, density, contrast and colour palette. Walking between classes now opens as a map dialog, and the shared timetable page uses the same layout with a clearer copy dialog. Everything that changed: NTU Timetable Planner Redesign.
- ImprovementStandardised scale is a new table setting that gives every half hour the same height. Save to calendar shows a preview before the download, and actions that would overwrite a plan now ask first.
- ImprovementDialogs become drawers on phones with consistent spacing and scrolling, and the page no longer jumps while it loads.
21 Oct 2026
Walking between classes
- New FeatureThe timetable page now has a Walking between classes button under Generate Timetable. Pick a day to see your classes in order on the campus map, the walking time between each pair of venues, and a warning when the gap is too short. Walks are looked up only when you open it, for one day at a time. The Calendar, Generate and AI tabs are gone: generate options now show by default. Docs: NTU Timetable Planner Guide.
20 Oct 2026
Campus map
- New FeatureNew campus map. Search any lecture theatre, tutorial room, hall or canteen, see which level it is on with indoor floor plans from Basement 7 to Level 9, and get walking directions with times between classes. Switch between standard, hybrid and satellite views, browse halls, food, bus stops, car parks and toilets, and share a link that opens the exact view. Docs: NTU Campus Map: Find Any Lecture Theatre, Room and Walking Route.
- DataVenues from the last two semesters are matched to rooms using the official facilities list and room codes. A few are matched by name only and are marked as approximate on the map.
19 Oct 2026
Developers page
- New FeatureNew developers page documents the free module API and the open module, index and exam data, with a try-it box and an OpenAPI file for student projects.
- ContentThe privacy policy now covers the public API and AI assistants that use WebMCP.
18 Oct 2026
AI agent support
- New Feature[Dev preview] NTUMods now offers its tools to AI agents through WebMCP, a new browser standard that is still in early testing and depends mostly on the Chrome team. In a supporting browser, an assistant can search modules, check which indexes fit your plan, generate timetables and plan your CGPA, all on your own saved plans. Nothing is sent to our servers. Most students will not see a change yet. Docs: Read the WebMCP docs.
- New FeatureA public AI catalog and a module API help assistants that cannot run the site find the llms.txt summary and the open module, index and exam data.
17 Oct 2026
Privacy policy updated
- ContentThe privacy policy now matches how the site works today: feedback is emailed to us rather than stored in a database, and the site is hosted on Cloudflare.
17 Oct 2026
Landing page redesign
15 Oct 2026
AY 2026 Semester 2 now available
- DataAY 2026 Semester 2 course data is now live: 1,092 courses and 4,306 indexes available in the timetable and module browser. See what is new in Semester 2.
- ImprovementCalendar export now uses the Semester 2 start date (11 January 2027) and recess week.
- ContentUpdated the NTU course catalogue with Semester 2 module counts. The exam schedule still shows Semester 1 until NTU releases the Semester 2 timetable.
8 Oct 2026
CGPA Planner
- New FeatureCGPA Planner: enter your CGPA and remaining AU, or upload your transcript, to see the average grade you need for Merit, Distinction or Highest Distinction. Your transcript is read in your browser and never uploaded. Docs: NTU honours and CGPA guide.
- ContentTwo new step-by-step guides with screenshots: How to use the CGPA Planner and How to use the FGO Optimiser.
8 Oct 2026
New Tools section and the FGO Optimiser
- New FeatureNew Tools page, with a link in the navbar and footer, showing every NTUMods tool as a card. It starts with the FGO Optimiser and the existing Wallpaper Maker.
- New FeatureFGO Optimiser: upload your transcript PDF and see which modules to Flexible-Grade for the highest CGPA within your quota and the 12 AU Core, ICC and MPE cap. Your transcript is read in your browser and never uploaded. Docs: NTU FGO guide.
- ImprovementThe optimiser counts FGO you have already used. Modules graded Pass are detected from the transcript, and AU from No Record modules, which no longer appear on a transcript, can be added by hand.
- ImprovementThe optimiser shows how much each module would change your CGPA if you Flexible-Graded it, keeps your CGPA and quota visible while you scroll, and has a Try with sample data button.
- ContentThe NTU FGO guide now opens with a plain definition, adds a Pass vs No Record table and new FAQ entries, and links to the optimiser. The Links page, AI instructions, llms.txt and sitemap list the new section too.
Q3 2026 5 updates
13 Aug 2026
Mobile timetable rebuilt
- Bug FixThe mobile Add mods drawer wasn't reliably opening, and tapping a module to change its index could conflict with it. Rebuilt so it opens and closes the way every other drawer in the app does, with index picking working correctly inside it.
- Bug FixSearch and note fields on mobile no longer trigger iOS's automatic zoom when tapped.
- ImprovementPick indexes moved from a permanent button on the toolbar into the ••• menu, so it no longer competes for space with the rest of the toolbar on small screens.
- ImprovementTimetable cells are more compact on mobile by default, regardless of your chosen density in Settings — which still applies from tablet width up.
- Bug FixCustom block fields (type, day, venue, timing) no longer squeeze into cramped two-column rows on narrow screens.
10 Aug 2026
Standardised scale and notes
- Bug FixTimetable blocks now reliably colour their whole 30-minute slot, even when the text is short — some blocks were only colouring the height of their own text, leaving a half-coloured gap next to fully coloured blocks of the same length.
- New FeatureA new Standardised scale table setting locks every 30-minute row to the same height, so lesson length and break length stay visually comparable across the whole grid instead of stretching to fit whichever block has the most text.
- New FeatureRegistered modules can now carry a personal note — click a module in the sidebar to add one, scoped to just that index (e.g. "seat near the door" for one tutorial group) or to every index of that module. A coloured dot marks which modules have a note, and hovering shows it — both in the sidebar and on the block itself.
30 Jul 2026
Generate mode shows every distinct timetable
- Bug FixGenerate mode no longer wastes its results on look-alikes. It used to stop after 30 combinations and then hide the duplicates, so if 25 of those 30 put your classes in the exact same slots you were left cycling through 5 timetables — even when far more genuinely different ones existed. Uniqueness is now decided while generating, so you get up to 60 distinct layouts.
- ImprovementA Unique layouts only switch sits above the Generate button, on by default. Turn it off to cycle through every index number combination, including ones that share the same timeslots — useful when your first-choice index is full and you need a fallback that keeps the same schedule.
- New FeatureGeneration Settings has a Reset button. One click restores the defaults — day hours, breaks, blocked slots, relaxed class types and any index locks — instead of undoing each setting by hand.
- ImprovementThe colour legend and the hidden-information notice now sit directly under the timetable overview rather than in a separate row further down, and the exam disclaimer links to the exams page.
28 Jul 2026
NTUMods runs on Astro now
- PerformanceNTUMods 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.
- ImprovementNo visible changes to how you use NTUMods — same features, same layout, just a faster foundation underneath.
27 Jul 2026
Custom blocks in generation and sharing
- Bug FixGenerate 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 FeatureCustom 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 FeatureShare 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 FixViewing someone's shared timetable no longer draws your own custom blocks over it.
Q2 2026 10 updates
24 Jun 2026
Filter modules by day and time
- New FeatureFilter 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.
22 Jun 2026
Student links page and custom courses
- New FeatureNew 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 FeatureAdd 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 FeatureCustom courses are per-plan — each of your 5 timetable plans has its own set of blocks, and duplicating a plan copies them over.
- ContentNew guide: How to use custom courses on NTUMods — walkthrough with examples for planning personal time alongside registered modules.
14 Jun 2026
Exam schedule, timetable generator improvements, and module page polish
All features and improvements in this release are based on feedback from anonymous students. Thank you!
- New FeatureNew 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.
- DataAY 2026/2027 Sem 1 exam timetable data added — visible on the exam page and on individual module pages.
- ImprovementRestructured module detail pages — workload moved to the top, additional info collapsed into an expandable section, and exam disclaimer added below the timetable overview.
- Bug FixFixed 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.
- ImprovementModule descriptions with inline enumerated lists now render as proper bullet lists instead of one unbroken paragraph.
- New FeatureGenerate timetables from a comma-separated list of module codes — paste them all at once instead of adding one by one.
- New FeatureLock a specific index for any module before generating — the generator will only consider that registration group.
- New FeatureHide duplicate timetable results that share identical timeslots but differ only by index number. Toggle "Hide same-timeslot duplicates" in the results panel.
- New FeatureModule pages now include an interactive prerequisite graph so you can visualise dependency chains at a glance.
- ImprovementWhen generation finds no results, the tool now analyses your constraints and suggests the specific setting to relax — instead of a generic error message.
- ImprovementDuplicate plan option added to the plan actions dropdown.
- Bug FixFixed module search input resetting mid-type after the debounce fired.
29 May 2026
AY 2026 Semester 1 now available
- DataAY 2026 Semester 1 course data is now live — 1,126 courses and 4,842 indexes available in the timetable and module browser.
- New FeatureCurrent semester now shown prominently in the navbar and footer.
- ImprovementMoved Help to /faq with a table of contents for quicker navigation.
22 May 2026
Articles search, categories, and new guides
- New FeatureAdded a search bar and category filter to the Articles page.
- New FeatureAdded article category pages for browsing guides by topic.
- ImprovementArticles now grouped by category in the default list view.
- ContentPublished 4 new guides: complete NTU BDE list, best CC modules, module selection guide, and whether BDEs count toward your degree.
- Bug FixFixed a navigation error when browsing articles by category.
21 May 2026
Timetable modes and index picking
- ImprovementImproved 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 FeatureConsolidated screenshot, calendar export, and share into a single timetable actions dropdown (•••).
- New FeatureAdded a mode selector to the timetable — Timetable, Generate, and AI modes (generation and AI coming soon).
29 Apr 2026
Better timetable planning
- New FeatureAdded click-to-switch index previews so you can compare class groups directly from the timetable.
- Bug FixImproved filtering behavior when browsing and selecting indexes in the module browser.
- ImprovementPolished mobile responsiveness and visual styling across timetable views.
29 Apr 2026
Articles and planning guides
- New FeatureAdded an Articles section for NTU module planning guides.
- ContentPublished guides for common curriculum modules, BDE planning, and popular BDE choices.
- ImprovementAdded supporting article navigation and reader-friendly page layouts.
Q1 2026 4 updates
22 Mar 2026
Feedback and support
- ImprovementUpdated feedback submissions so reports can be sent by email.
- ContentExpanded FAQ documentation and help content.
8 Mar 2026
Data, modules, and exams
- ImprovementMoved module browsing and module detail pages onto API-backed data routes.
- DataAdded exam schedule data where available on module pages.
- ImprovementSimplified semester navigation and derive the latest semester from available data.
- DataCleaned up older data files and refreshed module/index data.
21 Feb 2026
Multi-semester support
- New FeatureAdded multi-year and multi-semester support — browse modules and plan timetables across different academic years and semesters in the module browser.
- ImprovementCurrent academic year and semester now shown in the page header with no layout shift.
Q2 2024 1 update
9 Jun 2024
AY 2024/2025 data
- DataAY 2024/2025 course data added — all modules and indexes available in the timetable and module browser.
Q1 2024 1 update
30 Mar 2024
Workload info and module filtering
- New FeatureAdded a workload breakdown table to each module page showing lecture, tutorial, lab, and project hours.
- New FeatureAdded module level filtering (1000–4000+) to the module browser.
Q4 2023 1 update
19 Dec 2023
Timetable sharing
- New FeatureShare your timetable with friends via a link.
- ImprovementIndexes are now assigned without clashes automatically when picking modules.