Skip to content

Add Interactive Graphing Calculator Page#68

Merged
A1L13N merged 7 commits into
alphaonelabs:mainfrom
ghanshyam2005singh:feat/graphing-calculator
Jul 23, 2026
Merged

Add Interactive Graphing Calculator Page#68
A1L13N merged 7 commits into
alphaonelabs:mainfrom
ghanshyam2005singh:feat/graphing-calculator

Conversation

@ghanshyam2005singh

@ghanshyam2005singh ghanshyam2005singh commented Jun 17, 2026

Copy link
Copy Markdown
Contributor

This PR introduces a new Graphing Calculator experience for the Alpha One Labs Education Platform, modernizing and expanding the functionality of the legacy graphing calculator.

The implementation provides a responsive, browser-based graphing environment with real-time equation visualization, interactive controls, educational examples, and full dark mode support.


New Page

Fixed

  • public/calculator.html

Features

Graph Engine

  • Client-side graph rendering

  • Powered by Math.js

  • Supports:

    • Trigonometric functions
    • Logarithmic functions
    • Exponential functions
    • Square roots
    • Absolute values
    • Constants (pi, e)
    • Power operations (^)
    • Standard arithmetic expressions

Interactive Graph Canvas

  • Cartesian coordinate system
  • Dynamic grid rendering
  • Axis labels and origin marker
  • Hover coordinate display
  • Smooth discontinuity detection
  • Real-time graph updates

Navigation & Controls

  • Mouse wheel zoom
  • Click-and-drag panning
  • Touch pinch zoom support
  • Keyboard navigation support

Toolbar actions:

  • Zoom In
  • Zoom Out
  • Reset View
  • Center Origin
  • Toggle Grid
  • Export PNG
  • Fullscreen Mode

Equation Management

  • Multiple equations supported
  • Live editing
  • Show / hide individual equations
  • Remove equations
  • Color cycling support
  • Debounced rendering
  • Inline validation messages

Educational Features

Built-in examples:

  • Parabola
  • Sine Wave
  • Circle
  • Tangent
  • Logarithm
  • Exponential

Each example loads automatically into the graph editor.

Settings

  • Adjustable grid density
  • Adjustable line width
  • Persistent graph controls

UI Improvements

Sidebar Redesign

  • Expanded width for improved usability
  • Sticky viewport-height sidebar
  • Independent scrolling
  • Improved spacing and hierarchy
  • Cleaner section headers

Controls Layout

  • Dedicated zoom controls
  • D-pad style navigation cluster
  • Clear visual grouping

Responsive Design

  • Mobile friendly layout
  • Desktop optimized workspace
  • Full dark mode support

Accessibility

  • Keyboard accessible controls
  • ARIA labels added
  • Improved focus states
  • Accessible navigation patterns

Testing

Manually verified:

  • Graph rendering
  • Multiple equations
  • Zoom and pan behavior
  • Fullscreen mode
  • Export functionality
  • Example loading
  • Mobile responsiveness
  • Dark mode support
  • Error handling and invalid expressions

Screenshots

Screencast.from.2026-06-17.01-21-16.mp4
Screenshot from 2026-06-17 11-33-40

Summary

  • Rebuilt the graphing calculator with a richer responsive interface and enhanced rendering engine.
  • Added support for multiple equations, implicit and explicit expressions, equation visibility controls, examples, grid settings, line width adjustment, coordinate/range readouts, and error handling.
  • Added mouse, touch, keyboard, zoom, pan, fullscreen, dark-mode redraw, and PNG export functionality.
  • Updated the navbar with a whitespace-only change; navigation behavior remains unchanged.

User impact

Users gain a more capable and accessible interactive graphing experience across desktop and mobile, with improved equation management and customization.

@coderabbitai

coderabbitai Bot commented Jun 17, 2026

Copy link
Copy Markdown

Review Change Stack

Warning

Review limit reached

@ghanshyam2005singh, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 52 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Repository: alphaonelabs/coderabbit/.coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 55917ab4-31bb-4e12-807c-2fd269ef59db

📥 Commits

Reviewing files that changed from the base of the PR and between 7d0799b and ff38d95.

📒 Files selected for processing (1)
  • public/calculator.html

Walkthrough

Replaces the calculator page with a redesigned graphing interface, mathjs-based equation handling, interactive canvas rendering, fullscreen mode, configurable grid controls, and PNG export. The navbar change only adjusts whitespace.

Changes

Graphing Calculator Feature

Layer / File(s) Summary
Calculator page shell and layout
public/calculator.html, public/partials/navbar.html
Adds the redesigned sidebar, graph area, controls, fullscreen overlay, and related styling; adjusts navbar whitespace.
Equation rendering and viewport interactions
public/calculator.html
Adds keyed equation state, mathjs compilation, curve rendering, grid and axes, coordinate updates, zooming, panning, touch gestures, and keyboard controls.
Equation controls and fullscreen export
public/calculator.html
Adds editable function controls, examples, grid settings, clear-all confirmation, fullscreen rendering, PNG export, dark-mode redraws, and resize initialization.

Estimated code review effort: 4 (Complex) | ~45 minutes

Suggested reviewers: a1l13n, ananya44444

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely captures the main change: adding an interactive graphing calculator page.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@public/graphing-calculator.html`:
- Around line 264-268: The buttons throughout the file are missing the explicit
type="button" attribute. By default, HTML buttons have type="submit" which can
cause unexpected form submission behavior if these buttons are placed within a
form context. Add type="button" to all non-submit button elements, including the
button with onclick="addFromInput()" in the diff and all other buttons that
perform actions rather than submit forms. Ensure each button element includes
type="button" as an attribute to prevent any unintended form submission
behavior.
- Line 467: The variable declaration for lineWidth is missing a semicolon at the
end of the statement. Add a semicolon after the value 2 in the lineWidth
variable declaration to maintain consistency with the semicolon usage pattern
throughout the rest of the codebase.
- Around line 1-15: Remove the Tailwind Play CDN script tag that loads from
https://cdn.tailwindcss.com since it performs runtime CSS compilation in the
browser, which is unsuitable for production. Instead, replace it with a static
CSS file generated using the official Tailwind CLI, Vite plugin, or PostCSS
build tool. Additionally, add Subresource Integrity (SRI) hashes using sha384 or
sha512 algorithms to the two remaining external resources: the Font Awesome CSS
link and the math.js script tag. Generate the hashes using OpenSSL or an online
SRI Hash Generator and include them in the integrity attribute of each external
resource tag.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository: alphaonelabs/coderabbit/.coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: f4e893fb-6e53-49a5-917c-8fdf3cfe18f4

📥 Commits

Reviewing files that changed from the base of the PR and between 997b01e and 0afb97e.

📒 Files selected for processing (2)
  • public/graphing-calculator.html
  • public/partials/navbar.html

Comment thread public/graphing-calculator.html Outdated
Comment thread public/graphing-calculator.html Outdated
Comment thread public/graphing-calculator.html Outdated

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (2)
public/graphing-calculator.html (2)

693-697: 🧹 Nitpick | 🔵 Trivial | 💤 Low value

Unused function: centerOrigin() is defined but never called.

The PR description mentions "center origin" as a toolbar action, but there's no button wired to this function. Either add a button to expose this feature or remove the dead code to keep the codebase clean.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@public/graphing-calculator.html` around lines 693 - 697, The centerOrigin()
function is defined but never invoked anywhere in the codebase, making it dead
code. Either add an HTML button element in the toolbar that calls centerOrigin()
when clicked (since the PR description mentions this as a toolbar action), or
remove the entire centerOrigin() function definition if this feature is not
needed. Choose based on whether the center origin functionality should be
exposed to users.

843-855: ⚠️ Potential issue | 🟠 Major | ⚡ Quick win

Logic issue: array-based equations lose their structure during editing.

When a user edits a multi-part equation (like the circle example with ['sqrt(9-x^2)', '-sqrt(9-x^2)']), this function has a subtle bug:

  1. Line 846 immediately sets eq.raw = val (converting the array to a single comma-separated string)
  2. Line 849's check Array.isArray(eq.raw) will always be false since line 846 already overwrote it with a string
  3. This means compileEq receives a single string like "sqrt(9-x^2), -sqrt(9-x^2)" instead of an array

The result: editing a circle breaks it into an invalid single expression rather than two valid half-circle expressions.

🔧 Suggested fix: preserve array format
 function onRawInput(id, val) {
   const eq = equations.find(e => e.id === id);
   if (!eq) return;
-  eq.raw = val;
+  const wasArray = Array.isArray(eq.raw);
   clearTimeout(debounceTimer);
   debounceTimer = setTimeout(() => {
-    eq.raw = Array.isArray(eq.raw) ? eq.raw : val; // keep single
+    // For multi-part equations (like circles), split on comma
+    // For single expressions, keep as string
+    if (wasArray && val.includes(',')) {
+      eq.raw = val.split(',').map(s => s.trim()).filter(Boolean);
+    } else {
+      eq.raw = val;
+    }
     compileEq(eq);
     renderFunctionList();
     draw();
     showErrors();
   }, 280);
 }
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@public/graphing-calculator.html` around lines 843 - 855, The onRawInput
function has a logic error where line 846 immediately overwrites eq.raw with the
string value, making the Array.isArray check on line 849 always evaluate to
false. To fix this, check if eq.raw is currently an array before overwriting it
on line 846, then preserve the array structure appropriately when assigning the
new value. Store the original array status before the assignment, and in the
debounce callback, use that stored information to correctly restore eq.raw to
either an array (if it was originally an array) or a single string value,
ensuring that multi-part equations like circles maintain their structure during
editing.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Outside diff comments:
In `@public/graphing-calculator.html`:
- Around line 693-697: The centerOrigin() function is defined but never invoked
anywhere in the codebase, making it dead code. Either add an HTML button element
in the toolbar that calls centerOrigin() when clicked (since the PR description
mentions this as a toolbar action), or remove the entire centerOrigin() function
definition if this feature is not needed. Choose based on whether the center
origin functionality should be exposed to users.
- Around line 843-855: The onRawInput function has a logic error where line 846
immediately overwrites eq.raw with the string value, making the Array.isArray
check on line 849 always evaluate to false. To fix this, check if eq.raw is
currently an array before overwriting it on line 846, then preserve the array
structure appropriately when assigning the new value. Store the original array
status before the assignment, and in the debounce callback, use that stored
information to correctly restore eq.raw to either an array (if it was originally
an array) or a single string value, ensuring that multi-part equations like
circles maintain their structure during editing.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository: alphaonelabs/coderabbit/.coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: b8e1d606-9ee7-4e85-b063-6d2b41df536d

📥 Commits

Reviewing files that changed from the base of the PR and between 0afb97e and 5891401.

📒 Files selected for processing (1)
  • public/graphing-calculator.html

@A1L13N

A1L13N commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

@ghanshyam2005singh please fix the conflicts

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (7)
public/graphing-calculator.html (3)

419-419: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Make fullscreen graph navigation keyboard-accessible.

The keyboard handler is registered only on the main canvas, while fs-canvas has no tabindex or equivalent key handler. After entering fullscreen, keyboard users cannot use the documented arrow, +, or - controls. Make both canvases focusable and route them through the same handler.

As per path instructions, review HTML templates for accessibility (ARIA attributes and semantic elements).

Also applies to: 763-775

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@public/graphing-calculator.html` at line 419, Make the fullscreen graph
canvas fs-canvas keyboard-focusable and connect it to the same keyboard handler
used by the main canvas, preserving the documented arrow, plus, and minus
controls. Update the corresponding canvas markup and handler registration so
both canvases share identical keyboard navigation behavior.

Source: Path instructions


751-756: 🩺 Stability & Availability | 🟡 Minor | ⚡ Quick win

Guard degenerate pinch distances before zooming.

If the two touch points coincide, d2 becomes zero and touch.dist / d2 becomes Infinity, corrupting V and breaking subsequent rendering. Ignore or reset the gesture when d2 <= 0 before calling zoomAround.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@public/graphing-calculator.html` around lines 751 - 756, Update the two-touch
pinch handling around d2 and zoomAround to guard against non-positive distances.
When d2 <= 0, ignore or reset the gesture before calculating the zoom ratio;
only call zoomAround and update touch.dist for valid distances.

611-614: 🎯 Functional Correctness | 🟠 Major | 🏗️ Heavy lift

Adapt curve sampling to the visible x-range.

Because steps is based only on canvas width, dx grows as the x-range expands. After zooming out, functions such as sin(x) and tan(x) can be undersampled, causing aliasing, missing oscillations, or incorrect curves. Use adaptive subdivision or a bounded x-step with a maximum sample cap, and add a zoomed-out trigonometric regression test.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@public/graphing-calculator.html` around lines 611 - 614, Update drawCurves so
sampling density is based on the visible x-range, keeping the x-step
sufficiently small during zoomed-out views while enforcing a maximum sample
count for performance. Preserve correct rendering across normal and zoomed-in
ranges, and add a regression test covering zoomed-out trigonometric functions
such as sin(x) and tan(x).
public/partials/navbar.html (4)

281-283: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Preserve the Graphing Calculator mobile link.

public/partials/navbar.html only has 106 lines, so the referenced mobile LEARN accordion entry is missing. Add it under the LEARN section so learners can reach /graphing-calculator.html from the mobile nav.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@public/partials/navbar.html` around lines 281 - 283, Add a mobile LEARN
accordion entry in public/partials/navbar.html for the Graphing Calculator,
linking to /graphing-calculator.html and matching the existing mobile navigation
structure and styling.

71-73: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Expose the mobile menu state to assistive technology.

Add aria-controls="mobile-menu" and a dynamically updated aria-expanded value to the toggle. The current static “Open menu” label does not communicate whether the menu is open.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@public/partials/navbar.html` around lines 71 - 73, Update the mobile menu
toggle button in the navbar to include aria-controls="mobile-menu" and an
aria-expanded value that dynamically reflects the menu’s open or closed state.
Update the toggleMobileMenu behavior to keep aria-expanded synchronized and
replace the static aria-label with an appropriate state-aware label.

Source: Path instructions


34-34: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

Declare non-submit buttons explicitly.

Add type="button" to the dark-mode, profile, logout, and mobile-menu buttons. HTMLHint flags these omissions, and the default submit behavior can become problematic if this partial is rendered inside a form.

Also applies to: 53-53, 65-65, 71-71, 102-102

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@public/partials/navbar.html` at line 34, Add type="button" to the dark-mode,
profile, logout, and mobile-menu button elements in the navbar partial,
including the elements corresponding to the referenced locations, so none can
default to submit behavior when rendered inside a form.

Source: Linters/SAST tools


45-47: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Restore the desktop Graphing Calculator navigation entry.

In the supplied final markup, Lines 45-47 are the Signup link, while the PR change description says this range should add the Graphing Calculator entry. Do not replace Signup; ensure /graphing-calculator.html is present in the desktop LEARN menu after resolving the merge conflict.

#!/bin/bash
rg -n -C 5 'Graphing Calculator|/graphing-calculator\.html|requests\?kind=learn|login\?tab=register' public/partials/navbar.html
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@public/partials/navbar.html` around lines 45 - 47, Restore the desktop LEARN
menu entry for Graphing Calculator at /graphing-calculator.html, resolving the
merge conflict without removing or replacing the existing Signup link. Verify
the final navbar markup contains both the Signup link and the Graphing
Calculator navigation item.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@public/graphing-calculator.html`:
- Around line 840-842: Update the existing-array branch of the equation edit
logic around wasArray and eq.raw so val is split only on commas at nesting depth
zero, preserving commas inside function arguments such as atan2(1, 2). Trim and
remove empty top-level parts as before, while leaving scalar equation handling
unchanged before compileEq.

---

Outside diff comments:
In `@public/graphing-calculator.html`:
- Line 419: Make the fullscreen graph canvas fs-canvas keyboard-focusable and
connect it to the same keyboard handler used by the main canvas, preserving the
documented arrow, plus, and minus controls. Update the corresponding canvas
markup and handler registration so both canvases share identical keyboard
navigation behavior.
- Around line 751-756: Update the two-touch pinch handling around d2 and
zoomAround to guard against non-positive distances. When d2 <= 0, ignore or
reset the gesture before calculating the zoom ratio; only call zoomAround and
update touch.dist for valid distances.
- Around line 611-614: Update drawCurves so sampling density is based on the
visible x-range, keeping the x-step sufficiently small during zoomed-out views
while enforcing a maximum sample count for performance. Preserve correct
rendering across normal and zoomed-in ranges, and add a regression test covering
zoomed-out trigonometric functions such as sin(x) and tan(x).

In `@public/partials/navbar.html`:
- Around line 281-283: Add a mobile LEARN accordion entry in
public/partials/navbar.html for the Graphing Calculator, linking to
/graphing-calculator.html and matching the existing mobile navigation structure
and styling.
- Around line 71-73: Update the mobile menu toggle button in the navbar to
include aria-controls="mobile-menu" and an aria-expanded value that dynamically
reflects the menu’s open or closed state. Update the toggleMobileMenu behavior
to keep aria-expanded synchronized and replace the static aria-label with an
appropriate state-aware label.
- Line 34: Add type="button" to the dark-mode, profile, logout, and mobile-menu
button elements in the navbar partial, including the elements corresponding to
the referenced locations, so none can default to submit behavior when rendered
inside a form.
- Around line 45-47: Restore the desktop LEARN menu entry for Graphing
Calculator at /graphing-calculator.html, resolving the merge conflict without
removing or replacing the existing Signup link. Verify the final navbar markup
contains both the Signup link and the Graphing Calculator navigation item.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository: alphaonelabs/coderabbit/.coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: a14c1833-ca7e-4f41-a034-60f9ca3a5e14

📥 Commits

Reviewing files that changed from the base of the PR and between 5891401 and e1daa5b.

📒 Files selected for processing (2)
  • public/graphing-calculator.html
  • public/partials/navbar.html

Comment thread public/graphing-calculator.html Outdated

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@public/calculator.html`:
- Around line 832-845: Update the debounced callback in onRawInput so it
recompiles and refreshes only the edited row’s error-state styling in place,
without calling renderFunctionList() or replacing the active input element.
Preserve the existing draw() and showErrors() behavior while retaining focus and
caret position during editing.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository: alphaonelabs/coderabbit/.coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 418caab6-c33f-42ac-8427-ae7187d9cc24

📥 Commits

Reviewing files that changed from the base of the PR and between e1daa5b and 7d0799b.

📒 Files selected for processing (2)
  • public/calculator.html
  • public/partials/navbar.html

Comment thread public/calculator.html
@ghanshyam2005singh

Copy link
Copy Markdown
Contributor Author

@A1L13N i have resolved the merge conflicts and also updated the code to extend base.

@A1L13N
A1L13N merged commit 01c9528 into alphaonelabs:main Jul 23, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants