Skip to content
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

New landing page #37

Merged
merged 22 commits into from
Sep 25, 2024
Merged

New landing page #37

merged 22 commits into from
Sep 25, 2024

Conversation

leostera
Copy link
Member

Not much to see here yet, just started drafting this page.

Moved us to MLX so its easier to see the final output of the page, and started using the dev preview to build this website. Works great!

The workflow is pretty annoying, since I have to run a while true; do dune exec sandworm -- ...; done and a separate server, and then manually reload the browser on every change.

This would be super smooth with something like astro.build but I want to honor the code we've written in OCaml so far – HOWEVER, there's a few things that'd be a lot better if we reused from JS world, like live-reloaders for styles.

I'm also using tailwind css.

This is based off the designs from Claire, with some content/structure adjustments based off Go's and Bun's websites.

Ref: https://www.figma.com/design/vSRUcQqOVTmRZqF1tD2Ov5/Dune-Download-Website?node-id=11-3&node-type=frame&t=LFqNbmPvTj45pZVv-0

image

@leostera
Copy link
Member Author

Also yes I am quite jetlagged.

@leostera leostera force-pushed the new-landing-page branch 2 times, most recently from b5df3c1 to 5ce70cc Compare September 19, 2024 13:28
@leostera
Copy link
Member Author

Some more changes here:

  • assume all releases have commit + certificate, we don't really care about older ones
  • add a install script based off bun.sh
  • prioritize a quick start but still show how to manually install + verify
  • make room for a FAQ section

@leostera
Copy link
Member Author

Updated screenshot:

Screenshot 2024-09-19 at 15 33 24

@leostera leostera marked this pull request as ready for review September 19, 2024 13:59
Copy link
Member Author

Choose a reason for hiding this comment

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

I'll remove this file before we merge.

Copy link
Collaborator

@maiste maiste left a comment

Choose a reason for hiding this comment

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

This is a first batch of review, I'll focus on the HTML and testing tomorrow 👍
I still believe we shouldn't push the dune.lock as it is not considered to be portable (in the current situation).

install Show resolved Hide resolved
Comment on lines +58 to +59
install_dir=$HOME/.dune
bin_dir=$install_dir/bin
Copy link
Collaborator

@maiste maiste Sep 19, 2024

Choose a reason for hiding this comment

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

question (general, blocking): Why not install it to ~/local/bin as many programs do? It would let you not having to touch the path :)

Copy link
Member Author

Choose a reason for hiding this comment

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

Cargo, bun, npm, yarn, and other tools use ~/.<toolname>/bin for this so it seems like a well-known pattern.

install Show resolved Hide resolved
install Outdated
case $(basename "$SHELL") in
fish)
# Install completions, but we don't care if it fails
IS_dune_AUTO_UPDATE=true SHELL=fish $exe completions &>/dev/null || :
Copy link
Collaborator

Choose a reason for hiding this comment

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

I may be mistaken, but I don't thunk we have completion, no?

Copy link
Member Author

Choose a reason for hiding this comment

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

Ah yes, remnants from the original bun.sh install script :D will remove.

Copy link
Collaborator

Choose a reason for hiding this comment

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

todo (blocking): remove the completion part to avoid script error.


echo

case $(basename "$SHELL") in
Copy link
Collaborator

@maiste maiste Sep 19, 2024

Choose a reason for hiding this comment

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

question (ux, non-blocking): Instead of directly exporting, what do you think about asking the user? It would prevent people that tries to install the newer version to have the export multiple times and also change the location for the people who want. WDYT?

sandworm/lib/metadata.ml Show resolved Hide resolved
sandworm/sandworm.opam Outdated Show resolved Hide resolved
yarn.lock Outdated Show resolved Hide resolved
sandworm/dune-project Show resolved Hide resolved
sandworm/.gitignore Outdated Show resolved Hide resolved
@maiste
Copy link
Collaborator

maiste commented Sep 20, 2024

suggestion (ui,non-blocking): For the header, what do you think about adding more margin to the left and to the right, as in ocaml.org? It's definitely an aesthetic question, though.
image

Copy link
Collaborator

@maiste maiste left a comment

Choose a reason for hiding this comment

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

And here is the second round about the web page 😸

sandworm/lib/web.mlx Outdated Show resolved Hide resolved
Comment on lines 69 to 76
<pre>
"
$ dune init proj hello_world
$ cd hello_world
$ dune pkg lock
$ dune exec hello_world
"
</pre>
Copy link
Collaborator

@maiste maiste Sep 20, 2024

Choose a reason for hiding this comment

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

issue (ux,non-blocking): For the sake of readability, I would add a background to this. Uniformity is good, and you already put a gray background to the curl cmd.

Do you thing we should extract this to figma?

let faq () =
<section id="faq" class_="flex flex-col py-10 gap-2">
<h2 class_="text-3xl font-black pb-4"> "Frequently Asked Questions" </h2>
</section>
Copy link
Collaborator

@maiste maiste Sep 20, 2024

Choose a reason for hiding this comment

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

thought (non-blocking): One answer we can put it is the fact that they are unstable. It's most to protect us against any unsatisfied user 😄

sandworm/lib/web.mlx Outdated Show resolved Hide resolved
sandworm/lib/web.mlx Outdated Show resolved Hide resolved
sandworm/lib/web.mlx Show resolved Hide resolved
sandworm/lib/web.mlx Outdated Show resolved Hide resolved
sandworm/lib/web.mlx Outdated Show resolved Hide resolved
sandworm/lib/web.mlx Outdated Show resolved Hide resolved
sandworm/lib/web.mlx Show resolved Hide resolved
Copy link
Collaborator

@christinerose christinerose left a comment

Choose a reason for hiding this comment

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

LGTM!

@maiste
Copy link
Collaborator

maiste commented Sep 24, 2024

suggestion (blocking): I don't see any problem with using our own dune to build the website. However, I would suggest that we do it in another PR, related to the CI. It would make the diff much cleaner for the future, and the PR less heavy. Thus, my suggestion is to remove the dune.lock and reintroduce it later.

I have pushed two more commits to fix small stuffs as you suggested 👍

+ feedback on copying command by swapping icons
+ limit release list to ~10
+ fix background of getting started commands
Copy link
Collaborator

@maiste maiste left a comment

Choose a reason for hiding this comment

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

Pair programming with @leostera to solve and merge this 👍

@maiste maiste merged commit 300233d into main Sep 25, 2024
@maiste maiste deleted the new-landing-page branch September 25, 2024 14:20
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.

3 participants