tauri-docs icon indicating copy to clipboard operation
tauri-docs copied to clipboard

Roadmap to Documentation for Tauri 2.0

Open lorenzolewis opened this issue 1 year ago • 16 comments

As we're prepping for Tauri 2.0 we're also switching over our documentation platform. Now is an awesome time to get involved in Tauri documentation!

Check the milestone for the overall status to having 2.0 docs ready: https://github.com/tauri-apps/tauri-docs/milestone/4

Writing Contributions

Below is the outline for the new docs. If there is no name next to one feel free to claim it so we can mark your name and then open a PR so that we can start crafting the doc together.

  • [ ] Quick Start
    • [x] What is Tauri? @lorenzolewis
    • [x] Prerequisites
    • [ ] Create a Project
      • [ ] Using CTA
      • [ ] Manually using Tauri CLI
      • [ ] Add mobile to an existing project
      • [x] ...Frontend framework-specific guides
    • [ ] Upgrade and Migration
      • [x] From Tauri v1 @lucasfernog https://github.com/tauri-apps/tauri-docs/pull/1340
      • [ ] Electron to Tauri
      • [ ] ...any other framework suggestions?
    • [ ] Core Concepts
      • [ ] SPAs, SSGs, etc.
      • [ ] ...what else?
    • [x] Plugins @lucasfernog
      • [x] What is a Plugin? @lucasfernog
      • [x] Developing a Plugin @lucasfernog
      • [x] List of plugins (This page should cover that: https://beta.tauri.app/features/) @lucasfernog
    • [ ] Troubleshooting
  • [ ] Guides
    • [x] #1468
    • [x] #1469
    • [x] #1470
    • [ ] #1471
  • [ ] Features & Recipes (all listed under https://beta.tauri.app/2/guide/list)
    • [ ] #1473
    • [x] #1474
    • [x] #1475
    • [x] #1476
    • [x] #1477
    • [x] #1478
    • [x] #1479
    • [x] #1480
    • [x] #1481
    • [x] #1482
    • [ ] #1483
    • [x] #1484
    • [x] #1485
    • [x] #1486
    • [x] #1487
    • [x] #1488
    • [x] #1489
    • [x] #1490
    • [x] #1491
    • [x] #1492
    • [x] #1493
    • [x] #1494
    • [x] #1495
    • [x] #1496
    • [x] #1497
    • [x] #1547
    • [x] #1548
    • [ ] #1949
    • [ ] #1948
  • [x] References
    • [x] https://github.com/tauri-apps/tauri-docs/issues/1363
    • [x] #1472

Technical Contributions

  • [x] Upstream contributions to Starlight to allow overriding components (footers, etc.)
  • [x] Create a plugin index page for the reference section
  • [ ] https://github.com/tauri-apps/tauri-docs/issues/1362
  • [ ] Dynamic OG images (depends on https://github.com/withastro/starlight/issues/415). Reference: https://github.com/JonasKruckenberg/JonasKruckenberg/blob/main/src/pages/social-image/%5B...path%5D.png.ts #1616

Translations (i18n)

Check out the https://github.com/tauri-apps/tauri-docs/blob/next/.github/TRANSLATING.md guide

Transition Checklist

Here's what we need to remember to do as part of the transition over:

  • [x] Remove ~~beta~~ and next branches and respective search indexes
  • [x] Turn off Crowdin and remove any references, redirect them back to the repo
  • [ ] Add CI to deploy the next/latest version of documentation when upstream dev changes for live previews (and to make sure nothing upstream causes issues)

Upstream Issues

External

  • [x] https://github.com/withastro/starlight/pull/473: Noticed some non-nested tabs are also broken, hoping this fixes it when released
  • [x] https://github.com/withastro/astro/issues/8018: Tabs not working when using components with imports on the same page
  • [x] https://github.com/withastro/starlight/issues/461
  • [x] https://github.com/CloudCannon/pagefind/issues/215: Surface headings in search results
  • [x] https://github.com/CloudCannon/pagefind/issues/225: Better search results for more code-like things
  • [x] https://github.com/withastro/starlight/issues/415: Support overriding translated locale pages to highlight if translates are out of date
  • [ ] https://github.com/tgreyuk/typedoc-plugin-markdown/issues/463
  • [ ] https://github.com/withastro/starlight/pull/640
  • [ ] https://github.com/sindresorhus/internal-ip/issues/48

Internal

  • [x] https://github.com/tauri-apps/tauri/issues/7572
  • [x] https://github.com/tauri-apps/tauri/issues/7696
  • [x] https://github.com/tauri-apps/tauri/pull/7744
  • [x] https://github.com/tauri-apps/tauri/issues/7749
  • [x] ~https://github.com/tauri-apps/tauri/tree/refactor/jsdoc~ Not planned

Open Items

  • [ ] Build out NixOS instructions and other Linux distros (do we want to allow any and all Linux distros into the docs? Can we support that effectively?)
  • [ ] Does the version number in the code block below change over time? Do we need to make a note on that? https://github.com/tauri-apps/tauri-docs/blob/c46d1f2ad6ac2724d1e0d327b8641ec7468d0e3a/src/content/docs/2/guide/prerequisites/index.mdx#L250-L253 https://github.com/tauri-apps/tauri-docs/blob/c46d1f2ad6ac2724d1e0d327b8641ec7468d0e3a/src/content/docs/2/guide/prerequisites/index.mdx#L260-L263
  • [ ] Can we optimise the Android steps: https://github.com/tauri-apps/tauri-docs/blob/c46d1f2ad6ac2724d1e0d327b8641ec7468d0e3a/src/content/docs/2/guide/prerequisites/index.mdx#L208-L210
  • [ ] Build plugin dev CLI section https://github.com/tauri-apps/tauri-docs/blob/2d970c97d0908bd1a4d02c9ef29489cbc00443d9/src/content/docs/2/guide/plugins/index.mdx#L6

lorenzolewis avatar Aug 01 '23 13:08 lorenzolewis

Core Concepts SPAs, SSGs, etc.

Happy to help with this piece 🙌

clearlysid avatar Aug 25 '23 10:08 clearlysid

I'd be happy to help with the NextJS specific guides!

OscarArranz avatar Aug 25 '23 12:08 OscarArranz

@OscarArranz Awesome! I've started on some framework specific guides in #1405, you can check out the preview here https://deploy-preview-1405--tauri-docs-starlight.netlify.app/2/guide/framework/nextjs/

@lorenzolewis feel free to correct me on any of this:

Note that we for 2.0 want to keep the framework specific stuff as limited as possible, preferably the information on that one page should be all you need. So no super long articles about the frameworks and not a lot of code samples beyond getting set up, because once you're set up it's up to the framework in question to instruct you on how to e.g. import and run javascript functions. The docs in v1 are quite overkill for just letting people know what they need to be aware of about the framework and most of the contents in v1 is duplicated across the frameworks. We want to avoid such duplication, have the framework setups short and sweet, then focus on actual meaningful framework agnostic docs.

I'm no expert on Next.js and most of the content on the Next.js page is just copied over from the next branch, so would love to hear from you on whether the contents are correct and if there are any other gotchas that should be added to the checklist 🙂

There's more wiggle room for writing blog posts if you want to do something like a deep dive into things like best practises for hooking up Next.js with Tauri, so there's room on the website for the content you might want to write, just maybe not on those specific pages 🙂

simonhyll avatar Aug 25 '23 15:08 simonhyll

Core Concepts SPAs, SSGs, etc.

Happy to help with this piece 🙌

@clearlysid amazing! I'll put a few points here from @simonhyll that would be good to cover for SPA, SSG, SSR. Feel free to open a draft PR with a first stab and then I'll tag your name on it above.

  • SPA: What is it? Why is it nice to have?
  • SSG: What is it? Why is it the only Tauri supports?
  • SSR: What is it? Why does Tauri NOT support it?

For docs try to keep any non-Tauri concepts fairly high-level (what is SPA, SSG, SSR, etc.) and link out where relevant for the reader to find more info. The docs should really focus as much as possible on Tauri-specific ideas.

If you have any questions then feel free to hop on to our Discord and ping us in the #docs channel there 🎉

CC @FabianLars because I know you've fought the dragon a few times on this in support, so I'm sure any advice would be appreciated.

lorenzolewis avatar Aug 25 '23 18:08 lorenzolewis

@OscarArranz +1 to everything @simonhyll said. We're currently churning through the first plugin-specific guide (https://github.com/tauri-apps/tauri-docs/pull/1379) to get it just right, and then maybe we could try to polish up #1405 and get it merged to make it easy for people to contribute to.

And like I mentioned on Discord, we'll open up translations ASAP once we get a few more things across the finish line. If you'd like to have a peek feel free to take a look at https://github.com/tauri-apps/tauri-docs/blob/next/.github/TRANSLATING.md. We've tested that whole flow a few times but any feedback would be greatly appreciated!

Happy to have you join us 🥳

lorenzolewis avatar Aug 25 '23 19:08 lorenzolewis

@lorenzolewis Definitely hit me up when you need to start translating and I'll make sure to work on Spanish translations.

As for writing English docs, I'm realizing maybe I'd need to mess around with the latest version of Tauri as I'm currently using 1.4. If you've got any guidance on how to get familiar with the latest version and it's code it'd be amazing.

I'm really excited to help with anything I can but I also feel a bit intimidated by the size of the project 😅

OscarArranz avatar Aug 27 '23 08:08 OscarArranz

@OscarArranz the sections to get someone up and running are what we're going to laser-focus on next week starting Tuesday. We'll probably discussion in #docs on Discord so I'll give you a shout there if you're interested in joining the discussion.

The prerequisite page should be all ready and functional for 2.0, so maybe give that a walk through and see if it gets you setup for success.

lorenzolewis avatar Aug 27 '23 09:08 lorenzolewis

Sorry, Github doesn't notify me well enough 🥲. Would love to continue in Discord but I don't seem to be able to send messages in #docs.

Yes,I'll take a first pass and draft a PR. Is there a timeline we're looking at? I'll be able to get to this over the coming weekend.

clearlysid avatar Aug 29 '23 21:08 clearlysid

@clearlysid give me a mention in #general on Discord (@lorenzolewis over there) and I can make sure to get you all set up there.

There aren't any real strict timelines per se, but I'm personally going to be out on vacation for about a month starting Sept 10, so it would be amazing to get a few rounds of feedback with anything you have to share and then the rest of the team could help to push it through from there

lorenzolewis avatar Aug 29 '23 21:08 lorenzolewis

Note about window customization, there's currently a guide for custom titlebars which implements window controls in HTML/CSS. For macOS this is flawed/bad behavior as users lose standard features. imo users should be warned about this, and potentially recommend transparent title bar + custom window background color like this image

probablykasper avatar Aug 31 '23 23:08 probablykasper

Thanks @probablykasper , I added a stub for a window customisation guide in https://github.com/tauri-apps/tauri-docs/pull/1455 and included a reference to your comment so we can be sure to incorporate it 💪

lorenzolewis avatar Sep 01 '23 10:09 lorenzolewis

#1456 is now up! I'll continue discussions, feedback and writing more on there directly.

clearlysid avatar Sep 02 '23 11:09 clearlysid

I propose adding WASM to the guides for the frontend UI / API to the v2.0 docs alongside the docs examples in JS - it'd be ideal if there was a tabbed interface for examples (letting the reader choose between the docs' examples presented in either JS or WASM/Rust), though I'd settle for second billing for WASM frameworks if we have to 😋

This issue is important for users who would like to use WASM-based frameworks like Yew, Leptos, Dioxus, etc.

diversable avatar Nov 09 '23 08:11 diversable

To answer the question about the NDK version number. The answer is yes it changes over time. At the time of writing this, I have NDK version 26.2.11394342

TylerJMcLean avatar Mar 04 '24 15:03 TylerJMcLean

  • Electron to Tauri

Happy to atleast start a chunk of this, should I fork and pr this repo?

WhyFenceCode avatar Apr 09 '24 02:04 WhyFenceCode

@WhyFenceCode yeah pretty much it, fork and open a PR, thanks for the help; Tauri v2 docs currently is on next branch. If you need any help setting up ask here or on Tauri discord.

The docs are made with Starlight.

"Electron to Tauri" page is src/content/docs/guides/upgrade-migrate/from-electron.mdx

more details here: https://github.com/tauri-apps/tauri-docs/blob/next/.github/CONTRIBUTING.md


updating here as @WhyFenceCode requested, https://discord.com/channels/616186924390023171/662624589037436928/1232722043498397736, he isn't working on it anymore. "Electron to Tauri" is open

vasfvitor avatar Apr 09 '24 03:04 vasfvitor