valence icon indicating copy to clipboard operation
valence copied to clipboard

Valence could use a website

Open rj00a opened this issue 2 years ago • 28 comments

I don't have any webdev experience. Also, I have the valence.rs domain name.

Edit: Here's what I would expect the website to have once finished:

  • Dedicated page for documentation with a tutorial-like guide (markdown).
  • FAQ page.
  • A clean landing page with the Valence logo and links to github, discord, crates.io, etc. It should have a short summary of Valence's goals and capabilities.
  • A page for announcing releases including patch notes (markdown).
  • Minimal design. Nothing too flashy.
  • Uses the valence.rs domain name.
  • Available in a website directory at the root of the Valence repository. If it would make more sense to be in a separate repo we could discuss that.
  • Hosted on GitHub for easy edits?

Sources of Inspiration

  • Minestom: https://minestom.net/ I quite like the simplicity of the landing page. I'm indifferent about the use of gitbook for the docs.
  • Feather: https://feathermc.org/ This one is a bit bare-bones but it's worth mentioning.
  • Rocket: https://rocket.rs/ Not Minecraft related, but It's got all the ingredients for a good site.

rj00a avatar Sep 02 '22 09:09 rj00a

Hi, This project is something that I have been actually thinking about but I don't have enough rust expeirience. I still would like to contribute to this project and since I'm a web dev I could help with this.

You got any particular ideas on your mind?

UltimateDoge5 avatar Sep 04 '22 08:09 UltimateDoge5

We could make a Hugo website?

Also your bio website seems down

Can you apply for GitHub sponsors so I can sponsor you?

Also, would you mind creating a valence github organization and moving the project into it? It would avoid some bus factor we can observe in the rust ecosystem :)

williamdes avatar Sep 04 '22 08:09 williamdes

Yea, I was thinking about using hugo or astro. And making an organisation seems a good idea too.

UltimateDoge5 avatar Sep 04 '22 09:09 UltimateDoge5

Yea, I was thinking about using hugo or astro.

You can copy paste everything from my website: https://github.com/wdes/website

And making an organisation seems a good idea too.

Yayy

One question, it's not clear why you say it's a framework but in fact you have a runnable server. How is this all built together?

williamdes avatar Sep 04 '22 09:09 williamdes

You could say that the word framework in web dev is really stretched. With astro you can make a mostly static site and sprinkle js components wherever you want. This results in low bundle sizes and quick load times.

It supports markdown and MDX. You can even use other frameworks like react and vue.

UltimateDoge5 avatar Sep 04 '22 09:09 UltimateDoge5

You could say that the word framework in web dev is really stretched.

Indeed, this is why I think it will confuse some people browsing this Rust project

williamdes avatar Sep 04 '22 09:09 williamdes

It is in reality a rust implementation of a java minectaft server with easy "plugin" expansion in mind but it does sound quite long.

On a hero section it would be quite akward.

UltimateDoge5 avatar Sep 04 '22 09:09 UltimateDoge5

Also, would you mind creating a valence github organization and moving the project into it? It would avoid some bus factor we can observe in the rust ecosystem :)

Thanks for the suggestion. I've done this now.

I will also move the serde_nbt crate to a separate project under the organization.

Can you apply for GitHub sponsors so I can sponsor you?

I will be applying to GitHub sponsors shortly ❤️

Also your bio website seems down

Yeah, it's a placeholder for now. (no webdev experience and all that)

rj00a avatar Sep 04 '22 09:09 rj00a

Alright, we need a repo for the web site, it doesn't need to be public but can, that is not a problem.

We need to choose the framework for it. Do you plan any dynamic content on the site or only static?

UltimateDoge5 avatar Sep 04 '22 10:09 UltimateDoge5

Alright, we need a repo for the web site, it doesn't need to be public but can, that is not a problem.

We need to choose the framework for it. Do you plan any dynamic content on the site or only static?

To use GitHub pages without paying it will need to be public. Static would be a good idea because of how easy the setup will be : basically a CNAME to GitHub.

williamdes avatar Sep 04 '22 10:09 williamdes

I mean a free hosting in 2022 is not a problem. We can use vercel/netlify or github pages as you said. I would use astro as its great at static content and gives us some flexability in the future if we want to do something dynamic/use state frameworks.

UltimateDoge5 avatar Sep 04 '22 10:09 UltimateDoge5

@UltimateDoge5 and @williamdes, since we've mainly setttled on a framework choice, do y'all want to continue the development details on Valence's discord?

LeoDog896 avatar Sep 04 '22 14:09 LeoDog896

If you would give me an invite link that would be awesome!

UltimateDoge5 avatar Sep 04 '22 14:09 UltimateDoge5

@UltimateDoge5 and @williamdes, since we've mainly setttled on a framework choice, do y'all want to continue the development details on Valence's discord?

Sure, let's continue to discuss on Discord. URL ?

williamdes avatar Sep 04 '22 14:09 williamdes

For anyone else, it's on the README: https://discord.gg/8Fqqy9XrYb

LeoDog896 avatar Sep 04 '22 16:09 LeoDog896

I think VitePress would be great for the site as it'd make writing docs dirt easy. https://vitepress.vuejs.org/

RihanArfan avatar Sep 04 '22 22:09 RihanArfan

Idk, SPA for docs doesn't connect for me. And as I can see its still in alpha. Does it even support SEO?

UltimateDoge5 avatar Sep 04 '22 22:09 UltimateDoge5

Idk, SPA for docs doesn't connect for me. And as I can see its still in alpha. Does it even support SEO?

from https://vitepress.vuejs.org/guide/getting-started:

VitePress is currently in alpha status. It is already suitable for out-of-the-box documentation use, but the config and theming API may still change between minor releases.

It's still an SSG so SEO will be great, and it's very lightweight so web vitals score highly. But mainly good DX so writing docs won't be a pain because of framework/tooling.

RihanArfan avatar Sep 04 '22 22:09 RihanArfan

I think VitePress would be great for the site as it'd make writing docs dirt easy. https://vitepress.vuejs.org/

If we're talking purely about docs, docusaurus might be worth taking a look at. It basically takes markdown such as this and turns them into a static page like this. (Notice: This is my own project. I really don't want to self-ad, but its the best demo I had on hand)

oleggtro avatar Sep 10 '22 10:09 oleggtro

had a crazy thought.. could make the "website" a valence minecraft server with all the information provided in creative ways in-game. and for a plus have the "real" website run have a wasm compatible minecraft client connected to the server :P (more on the marketing side ofc :D docs would probably best in the old fashined way 🙃)

XBagon avatar Sep 11 '22 15:09 XBagon

had a crazy thought.. could make the "website" a valence minecraft server with all the information provided in creative ways in-game. and for a plus have the "real" website run have a wasm compatible minecraft client connected to the server :P (more on the marketing side ofc :D docs would probably best in the old fashined way upside_down_face)

That's brilliant!

williamdes avatar Sep 11 '22 15:09 williamdes

had a crazy thought.. could make the "website" a valence minecraft server with all the information provided in creative ways in-game. and for a plus have the "real" website run have a wasm compatible minecraft client connected to the server :P (more on the marketing side ofc :D docs would probably best in the old fashined way 🙃)

While I like the idea I feel like it would kinda make accessibility or finding certain pieces of information pretty hard, it would probably give me this vibe of custom scrolling effects. Additionally I think it could kind of fail to show why you should even pick Valence over the default mc server (or bukkit, spigot etc.) which is especially performance. You probably wouldn't be able to simulate like 1000 cows with wasm in your browser especially since hardware acceleration is off by default iirc.

FussballAndy avatar Sep 13 '22 19:09 FussballAndy

While I like the idea I feel like it would kinda make accessibility or finding certain pieces of information pretty hard, it would probably give me this vibe of custom scrolling effects. Additionally I think it could kind of fail to show why you should even pick Valence over the default mc server (or bukkit, spigot etc.) which is especially performance. You probably wouldn't be able to simulate like 1000 cows with wasm in your browser especially since hardware acceleration is off by default iirc.

This definitely should only be an show-offy addition, information needs to be (also) displayed in a very accessible way. And I think it could showcase really cool stuff, even with no 1000 cows. And hardware acceleration being disabled by default for wgpu stuff would be new to me?

XBagon avatar Sep 14 '22 14:09 XBagon

And hardware acceleration being disabled by default for wgpu stuff would be new to me?

That was rather a hard guess sorry for that. Though it would seem a bit weird to me that browsers would allow gpu usage although hardware accel is disabled as the reason people disable it is exactly to not have their gpu used, but again I am not sure how it actually handles it 😅

FussballAndy avatar Sep 15 '22 20:09 FussballAndy

As the gameclient website would be a showoff addition anyway, moving forward with a hugo website (or sth like that) would be the way to go). We could even only build a docs site for now.

oleggtro avatar Sep 25 '22 09:09 oleggtro

Hey @rj00a let me know if this would be somewhat usable: https://d.kalr.tech/ source: https://github.com/kalrtech/valence/

kubo6472 avatar Oct 26 '22 10:10 kubo6472

@kubo6472 Hey, thanks for working on this! It looks nice. I've updated this issue with some of my expectations. Let me know what you think.

The website you made in its current state would need some adjustments before I'd be willing to accept it. In particular, the Valence logo repeated three times doesn't look so great. I also think a dark theme by default with a theme matching the logo would look nice. It would need to work well with the logo though. Perhaps the banner at the top could be lighter so the logo in the top left doesn't blend in? Just throwing out some ideas.

Can the site be adjusted to have a FAQ page and release notes page as described above?

rj00a avatar Oct 27 '22 23:10 rj00a

@rj00a let me know if it looks more okay. I went for some placeholder content. I think it is perfectly possible to host in from a directory and deploy from gh actions (if there's some problem with netlify). All custom content apart from the homepage is 100% markdown, so I think you should be able to work with it, and replace it for something real yourself. Let me know how should I structure the repo for a PR, then. Thanks

kubo6472 avatar Oct 28 '22 12:10 kubo6472

@kubo6472 Thanks. You can go ahead and make a PR that adds a website directory at the root of the repo. It should include a README.md describing the steps needed to use it (what is it, which commands necessary, etc).

We can make the website live once Valence 0.2.0 is around the corner.

rj00a avatar Oct 29 '22 00:10 rj00a

Okay, sure //edit: #138

kubo6472 avatar Oct 29 '22 04:10 kubo6472