Skip to content

Document site architecture and other useful concerns for contributing #10

@ChristopherBiscardi

Description

@ChristopherBiscardi

The thisweekinbevy site combines multiple disciplines and tools to work. Rust, CSS, HTML, JavaScript, SSR/hydration, "Islands", Dockerfiles, etc. No piece should be taken for granted in the contributing documentation: A person skilled in Rust may not know anything about CSS (and vice-versa). Expectations should be set for how the site works so that people aren't expecting a folder of markdown files.

The following is a brief, potentially incomplete, list of areas that need to be documented for potential contributors.

What/Why is thisweekinbevy

  • Why does thisweekinbevy exist?
    • The Bevy community is very active. This is too much for some people to keep track of and there should be a lower-cadence summary for them. "check thisweekinbevy once a week" vs "read all of the discord messages for all of the relevant topics"
    • Discord is great, but many people don't use Discord. New or soon-to-be Bevy users are also more likely to find Bevy and what they can do with Bevy if the great work the community is doing is visible outside of Discord.
    • I (Chris) need to keep up to date anyway, so sharing the work that I do to keep up to date means that work doesn't need to be duplicated, if I can summarize it well enough.
  • What form does thisweekinbevy take?
    • website, newsletter, rss feed, video, etc
    • multiple formats make the issues more accessible. Video/audio can be good for people who want to keep up to date while performing another activity. Written word can be better for up-to-date and experienced Bevy practitioners to scan through.

Contributing Content

The goal of thisweekinbevy is to be part of the community, not separate, therefore community members should prioritize using official channels. The discord channels for showcases, devlogs, crate releases, etc should be the first option for the bevy community when sharing updates. thisweekinbevy also acknowledges that some members of the community do not use discord, and we should support them as well through being able to submit directly.

Technologies

Where do people go to find out about each piece? MDN, docs links, etc.

Concepts

  • Why does the site use a database?
    • tldr; To be able to render multiple views (web, email, rss, etc)
    • Also unlocks search in the future.
  • What is "islands" and why are we using it?
  • How do PRs/Issues on the Bevy repo get included in each issue?
  • What are GH Actions doing and why
  • What are Fly and Netlify?

Building/running

  • todo: We use mysql, and need a non-production mysql with some data for developing
  • cargo-leptos is the standard tool for building/testing/developing leptos apps.

This is a bit of a "mega issue" so after the first documentation push I will likely close this and create separate issues for anything left over. In the meantime, questions can be left in the comments here and I'll try to address them.

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentation

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions