Skip to content

Global dark/light theme support using ThemeProvider & AppShell#50

Open
ashtag3696 wants to merge 3 commits intoAshrockzzz2003:v2from
ashtag3696:v2
Open

Global dark/light theme support using ThemeProvider & AppShell#50
ashtag3696 wants to merge 3 commits intoAshrockzzz2003:v2from
ashtag3696:v2

Conversation

@ashtag3696
Copy link

Summary

  • Created global ThemeProvider with persistent dark/light mode
  • Introduced AppShell for clean, modular layout of code
  • Centralized Navbar with theme toggle (removed previous Navbar created which was conflicting with current one, also two Navbars were present that's why)
  • Applied consistent theming across Home, Login, and Register pages

Why?

  • Removes page-level theme duplication (Conflicting with current global setup which was the task given)
  • Ensures scalable and maintainable UI architecture
  • Beginner-friendly and follows Next.js best practices

Result =>

  • Personalized NavBar and respective inline css removed. So all three pages have same navbar.
  • Theme behaviour is consistent (across all 3 pages) and predictable.

Limitations !

  • Dashboard pages (Admin / Manager / Student) were not modified since they require backend access to test authenticated routes

Tested Pages

  • Home
  • Login
  • Register

@Devpool-soc
Copy link
Collaborator

Hey @ashtag3696! Thank you for opening a pull request. Make sure to tag the maintainers and link the issue you are solving in your pull-request description if you have not already and they'll review as soon as possible.

@ashtag3696
Copy link
Author

@Ashrockzzz2003

@Ashrockzzz2003
Copy link
Owner

Share a Screen recording?
Try running the backend to login and see if you can apply for other components as well

@ashtag3696
Copy link
Author

Actually I can't able to submit the screen recording today as I'm in travel. Also when I tried to launch with backend it asks for Database.

@Ashrockzzz2003
Copy link
Owner

Actually I can't able to submit the screen recording today as I'm in travel. Also when I tried to launch with backend it asks for Database.

Yeah
We didn't dockerise it at the time as it was kinda the first project

@Ashrockzzz2003
Copy link
Owner

I'll try to test it then

@ashtag3696
Copy link
Author

I'll share the Screen recording within 2 hrs bro

@ashtag3696
Copy link
Author

Uploading Screen Recording 2026-01-09 at 7.02.15 PM.mov…

@ashtag3696
Copy link
Author

Uploading Screen Recording 2026-01-09 at 7.02.15 PM.mov…

Sorry for the Delay bro, my network was bad during travel.

@ashtag3696
Copy link
Author

demo.mp4

demo.mp4…

@Ashrockzzz2003
Copy link
Owner

Ashrockzzz2003 commented Jan 10, 2026

@ashtag3696

The visibility of text/design in dark mode is not there? Fix it ... Feels like a 100% vibe coded pr

@ashtag3696
Copy link
Author

Hey bro @Ashrockzzz2003,
I've made the require changes what you've asked. If there's anything left you can ask me.

@ashtag3696
Copy link
Author

ashtag3696 commented Jan 10, 2026

Also I wanted to ask you bro. These websites would take months maybe a year just by HTML, CSS, and js. May I know How you guys have done this. It was so difficult to read at first for me.

@ashtag3696
Copy link
Author

@Ashrockzzz2003
Fix dark mode visibility and unify theming across public pages 74ec32e

Copy link
Owner

@Ashrockzzz2003 Ashrockzzz2003 left a comment

Choose a reason for hiding this comment

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

Before

Screen.Recording.2026-01-11.at.15.57.09.mov

After

Screen.Recording.2026-01-11.at.15.55.09.mov

@ashtag3696 do you notice the extra scroll your change has added? Fix it.

@Ashrockzzz2003
Copy link
Owner

@ashtag3696

Your changes still feel 100% AI driven to me
Try to understand the change, don't just make it work, make it work the best way possible - understand and learn from what you do. Don't be dependent on AI 100% - instead learn to learn from it and improve 200%

@Ashrockzzz2003
Copy link
Owner

For trying
I'm giving you half bounty

@Ashrockzzz2003
Copy link
Owner

/bounty 35 @ashtag3696

@Devpool-soc
Copy link
Collaborator

Another day, another coin. Way to get that bounty @ashtag3696 you glorious keyboard-tapping, coffee-sipping, vibe-coding witcher!

@ashtag3696
Copy link
Author

@Ashrockzzz2003 I've made those changes you've asked for globally for 3 pages.

@ashtag3696
Copy link
Author

At first I thought it was like that from the very beginning, then I found out it was due to recent architecture change that led to this. Thanks for pointing it out!

@Ashrockzzz2003
Copy link
Owner

Architecture change??

@ashtag3696
Copy link
Author

ashtag3696 commented Jan 14, 2026

Architecture change??

Yes, this change was done at the first commit itself. The Appshell acts as structural backbone, hosts Global UI(Navbar and Theme). That's why it took me so long to find out why the themes were not working and it took me 3 days to fix it. And that's also the reason why other problems have arise.

I wished to change the Navbar according to pages but it was taking too long main objective. So I've avoided for that now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Create a toggle that will switch the configured colors to dark/light.

3 participants