-
-
Notifications
You must be signed in to change notification settings - Fork 39
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(UI): create night mode #942
base: main
Are you sure you want to change the base?
Conversation
New and removed dependencies detected. Learn more about Socket for GitHub ↗︎
|
Thanks for working on this @a2937! I am requesting @huyenltnguyen to review this. Please note that it could be a while because there is a lot happening this week. |
Hey I just remember this pull request also resolves this at least partially. #877 |
396401f
to
fa7fccb
Compare
Thanks for the PR. I have fixed the merge conflicts. I checked the CSS is off (both before & after fixing the conflicts) – could be dues changes we may have introduced - IDK. In any case please check. That said I think this PR is doing way too much than it should be? I do not think we should move to TypeScript yet. This is an old project (CJS) and relies on Node 18 but it a stable one. Moving to TS will need a lot of work on QA. I think you should consider simpler, smaller PRs. Pending what @ahmaxed wants to confirm:
|
Yeah I did get a little excited. I really need to remember my limits. I think it's more likely I managed to get a few things wrong when making the CSS. As for the three things. There is a menu. I needed a place for my button as it broke the look of the navbar. I then added a few other elements I could. While making the PR, I couldn't remember how we checked to see if the user is in Nightmode on the main site. The Typescript was added to make writing the Cypress tests a lot easier. I need the intellisense to make sure I was doing things right. I had not converted the main site files and had no plans to this PR. |
I apologize for over-complicating this PR and going outside of the scope. I will try my best to focus on one thing at a time in the future. |
I have removed Typescript from this PR. |
Hey no apologies needed. If anything we are incredibly grateful for your contributions :) We will review this soon. Thanks |
Thanks for the hard work and looking forward to seeing this live. This feature is coming along really well. Here is some feedback to incorporate into your solution:
|
@a2937, the theme switcher needs to save the user preferences in localStorage so it can be applied between pages. Also for the color to background paring, the highest contrast should be secondary font on secondary background similar to learn. Let us know if you need clarification with the specifications or need help with the implementation. |
Ahmad - I think this will cause a lot of unwanted confusion and support requests. We should just defer the night mode until we can tackle it from learn, and implement everything else in #942 (comment) - in other PRs if needed. |
What key do you recommend I use to store the value? |
The key could be called |
Thanks for the hard work here, @a2937. |
I have one in the works. freeCodeCamp/freeCodeCamp#56243 However, I am not sure if I used the Redux actions correctly. That was something in the curriculum I more or less struggled with the first time and it's been a while since I messed with it. |
Checklist:
Update index.md
)Closes #828
I am very very close to being finished. I just need to add a couple Cypress tests and to fix the spacing on the menu; provided the elements I added into the menu were acceptable.