Skip to content

New landing page design #119

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

Open
wants to merge 84 commits into
base: main
Choose a base branch
from
Open

New landing page design #119

wants to merge 84 commits into from

Conversation

shravanngoswamii
Copy link
Member

@shravanngoswamii shravanngoswamii commented Apr 14, 2025

Continuing #105
Preview the changes: https://turinglang.org/pr-previews/119

Copy link
Contributor

Preview the changes: https://turinglang.org/pr-previews/119
Please avoid using the search feature and navigation bar in PR previews!

@shravanngoswamii
Copy link
Member Author

If anyone is interested, then please feel free to take on this PR!

@shravanngoswamii shravanngoswamii linked an issue Apr 19, 2025 that may be closed by this pull request
simonsteiger and others added 22 commits April 21, 2025 22:54
* very basic redesign

* make buttons interactive
* add dangling code example

* add code example section
* quickfix alignment

* add news and clean up scss
* improve colors

* better link hover color
* paste in svg

* responsive svg header
using the same background colour for the team "cards" as for the non-hoverable cards on the landing page
- added links to discourse and slack to the buttons at the top of the page
- moved link to libraries page to "Learn more" section
@simonsteiger
Copy link
Collaborator

I will definitely have time to finish this in July. Which points would you like to see addressed before this PR can be merged?

@penelopeysm
Copy link
Member

Revisiting this. Is there a reason why the old PR was closed?

Also, I'd personally be happy to merge if some of the placeholder content is removed. Honestly, it's not like the existing front page has any resources, so even a fairly clean slate would be a huge improvement over the current one.

@yebai yebai requested a review from mhauru July 11, 2025 10:40
Copy link
Member

@mhauru mhauru left a comment

Choose a reason for hiding this comment

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

Looks really neat, good work @shravanngoswamii!

Only thing I would change is that in the News section, I'm not sure how the items that are displayed are picked, but currently it shows e.g. a post from 2019 announcing our blog. Maybe it could instead just show the three newest ones?

@shravanngoswamii
Copy link
Member Author

shravanngoswamii commented Jul 11, 2025

Only thing I would change is that in the News section, I'm not sure how the items that are displayed are picked, but currently it shows e.g. a post from 2019 announcing our blog. Maybe it could instead just show the three newest ones?

We just have to put on_landing: true in metadata of post to make it appear on landing page! I chose 2 latest newletters, 1 GSoC post, 1 research blog, and the blog announcement! Latest 6 post which have on_landing: true appears!

@simonsteiger
Copy link
Collaborator

Great work @shravanngoswamii !

What do you think about changing the justify-content: center property in .panel-wrapper to justify-content: space-between? This would align the outer borders of the section headers like "What is Turing.jl? [...]" with those of the cards following below.

The aligned version is more appealing to my eyes, but once again this is of course subjective to some degree.


With justify-content: center:

image

With justify-content: space-between:

image

@shravanngoswamii
Copy link
Member Author

shravanngoswamii commented Jul 12, 2025

Great work @shravanngoswamii !

All thanks to you @simonsteiger!

What do you think about changing the justify-content: center property in .panel-wrapper to justify-content: space-between? This would align the outer borders of the section headers like "What is Turing.jl? [...]" with those of the cards following below.

I did think of that first, but using justify-content: space-between messes up the layout on some other screen sizes, like see:

justify-content: center justify-content: space-between
image image

We can try something else, but I thought having bit space make the content look nested under titles so I kept it!

@simonsteiger
Copy link
Collaborator

I did think of that first, but using justify-content: space-between messes up the layout on some other screen sizes, like see

Ouch! I didn't think of that, hmm. The current solution is definitely better then.

Maybe there's a way to shrink the card width and force one row until it collapses into the mobile layout with a single column? I'd be happy to tinker with this a bit in the next days; if it doesn't work, we can simply stick with your current solution. :)

@shravanngoswamii
Copy link
Member Author

shravanngoswamii commented Jul 13, 2025

Maybe there's a way to shrink the card width and force one row until it collapses into the mobile layout with a single column? I'd be happy to tinker with this a bit in the next days; if it doesn't work, we can simply stick with your current solution. :)

Feel free to experiment and push directly to this branch—I’ve added you as a collaborator!

One more favor @simonsteiger, if you have some time: Could you modularize the styles.css and convert all the styles to SCSS, like you did in your original PR? That approach was more optimized than what I’m using now, and I’m not much familiar with SCSS or design principles myself.

here is the your modularized theming code from that old PR for reference, incase you try: theming.zip

@simonsteiger
Copy link
Collaborator

Could you modularize the styles.css and convert all the styles to SCSS, like you did in your original PR?

Oh, I'd be happy to help, yes! I should be able to find the time for this. :)

@shravanngoswamii
Copy link
Member Author

Oh, I'd be happy to help, yes! I should be able to find the time for this. :)

Let me know if you need my help!

@simonsteiger
Copy link
Collaborator

No worries, I'm on it :)

@simonsteiger
Copy link
Collaborator

simonsteiger commented Jul 25, 2025

@shravanngoswamii How much "liberty" do I have regarding the specific colours / grey tones that are currently used in the styles.css document? I would try to match the current ones as best as possible, but instead of specifying two or more different hex codes, I'd try get as close as possible with one base colour and then lighten($color, 5%) or so.

@shravanngoswamii
Copy link
Member Author

shravanngoswamii commented Jul 25, 2025

@simonsteiger Please feel free to change the colors to whatever looks best — we arrived at this grey based on your earlier experiments. Your UI/UX and color sense are far better than mine 😅! We just need to make sure that docs site matches this one: TuringLang/docs#613

EDIT: (I will update docs PR based on your changes, no worries)

@simonsteiger
Copy link
Collaborator

simonsteiger commented Jul 27, 2025

Alright, so far so good I guess. I think I've managed to transfer all the CSS styles to SCSS styles. I definitely didn't figure out how to change the hover color of the icons in the navbar, asked Claude and it wasn't of much help either (likely also me not working hard enough to prompt it properly). I felt it was minor enough to leave it for now, but if you @shravanngoswamii recall how you did that, I'd be happy to correct it of course.

The most notable style change I've made is probably to the hover effect of the cards. I found the hover effect of the buttons interesting (grey border by default, no border + translateY + stronger shadow on hover), and applied the same to the hover effects of the cards in both light and dark mode. I like it how it "feels" and also that it's similar effects across the website.
Happy to switch back to the light blue borders though if you prefer this! :)

@shravanngoswamii
Copy link
Member Author

I definitely didn't figure out how to change the hover color of the icons in the navbar, asked Claude and it wasn't of much help either (likely also me not working hard enough to prompt it properly).

Previously, I wasn't using !important for links (a:hover {}) so that was being applied to it, now in your updated SCSS, _layouts.scss is setting the color for all .nav-link elements using an !important tag. This prevents the hover effect from applying. We need to add a more specific rule that targets the links on hover and also uses !important to override the base style.

I felt it was minor enough to leave it for now, but if you @shravanngoswamii recall how you did that, I'd be happy to correct it of course.

I have updated it, no worries!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Redesign the landing page!
5 participants