Skip to content

Commit ec89e52

Browse files
committed
Migrate contributing docs to docs site
+ Use more astro components, remove AI content + Document how to fix cache corruption
1 parent da6bdd6 commit ec89e52

13 files changed

Lines changed: 1026 additions & 636 deletions

File tree

.bazelrc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@ common --experimental_google_legacy_api
2727
build --noincremental_dexing --fat_apk_cpu=armeabi-v7a,arm64-v8a,x86,x86_64
2828
mobile-install --start=warm
2929

30+
# Cache Config for Build: the cache occassionally becomes corrupted. Comment out this block to disable caching.
31+
# Then build (wait for success), uncomment the block, and build again. This should fix the issue.
3032
build --bes_results_url=https://app.buildbuddy.io/invocation/
3133
build --bes_backend=grpcs://remote.buildbuddy.io
3234
build --remote_cache=grpcs://remote.buildbuddy.io

CONTRIBUTING.md

Lines changed: 10 additions & 97 deletions
Original file line numberDiff line numberDiff line change
@@ -1,105 +1,18 @@
1-
# How to Contribute
1+
# Contributing to Player
22

3-
If you find something interesting you want contribute to the repo, feel free to raise a PR, or open an issue for features you'd like to see added.
3+
Thank you for your interest in contributing to Player!
44

5-
[For first time contributors](./newCONTRIBUTORS.md)
5+
## 📖 Documentation
66

7-
## Proposing a Change
7+
**Complete contributing documentation lives on our documentation site: 👉 [Contributing Guide](https://github.intuit.com/pages/player/docs/latest/contributing/)**
88

9-
For small bug-fixes, documentation updates, or other trivial changes, feel free to jump straight to submitting a pull request.
9+
## Quick Links
1010

11-
If the changes are larger (API design, architecture, etc), [opening an issue](https://github.com/player-ui/player/issues/new/choose) can be helpful to reduce implementation churn as we hash out the design.
12-
13-
## Requirements
14-
15-
- [bazelisk](https://github.com/bazelbuild/bazelisk)
16-
- [pnpm >= 9.0.0](https://pnpm.io/installation)
17-
18-
- [Swift >= 5.5](https://www.swift.org/download/)
19-
- [Xcode 15.3](https://developer.apple.com/download/all/)
20-
21-
- [Android NDK 27.1.12297006](https://github.com/android/ndk/releases/tag/r27b). You'll need to add `ANDROID_NDK_HOME` to your environment manually. It will look like `export ANDROID_NDK_HOME=/Users/{USERNAME}/Library/Android/sdk/ndk/27.1.12297006`
22-
- Python < 3 (recommended 2.7.18) - you can use [pyenv](https://realpython.com/intro-to-pyenv/) to manage different python versions with ease.
23-
24-
- [Signed Commits](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification). For convenience it is recommended to set git to sign all commits by default as mentioned [here](https://docs.github.com/en/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key)
25-
26-
## Building and Testing Locally (All platforms)
27-
28-
> This project also contains [just](https://github.com/casey/just) recipes for many common commands. They can be listed using `just -l`
29-
30-
### Player
31-
32-
For speed and consistency, this repo leverages `bazel` as its main build tool. Check out the [bazel](https://bazel.build/) docs for more info.
33-
34-
After forking the repo, run builds using bazel to test, build and run:
35-
36-
## Docs Sites
37-
38-
These require the [Android NDK](https://developer.android.com/ndk).
39-
The docs site can be run locally using:
40-
41-
```bash
42-
bazel run //docs/site:dev
43-
```
44-
45-
which will run an instance on `http://localhost:4321`.
46-
47-
When a PR is merged, any `docs/site` changes will be deployed to the `next` folder in [https://github.com/player-ui/player-ui.github.io](https://github.com/player-ui/player-ui.github.io), which stores the built files for the site.
48-
49-
The OSS site is deployed with the following route logic:
50-
51-
- The `next` route correlates to the doc site generated by the latest build of Player.
52-
Every PR merged into the main branch (unless opted out) will generate a next build so that functionality can be immediately consumed.
53-
- The `latest` route correlates to the doc site generated from the last non-next release of Player.
54-
These are releases that are we intentionally choose to cut and have a non-tagged semvar version.
55-
- The `0` route contains the docs for the last `0.x.x` release.
56-
For every major release, we preserve the doc site for the last version released for it to allow folks who can't upgrade immediately to still have access to docs that are relevant for them.
57-
58-
## For Android Only Builds
59-
60-
If you are interested in only contributing for android, follow our [android guide](https://github.com/player-ui/player/blob/main/android/demo/README.md)
61-
62-
## For iOS Only Builds
63-
64-
### Xcode Project Generation
65-
66-
Generate the `.xcodeproj` to open and work in Xcode. Builds and tests will be executed through bazel, to ensure behavioral parity.
67-
68-
```bash
69-
bazel run //ios:xcodeproj
70-
open -a Xcode ios/PlayerUI.xcodeproj/
71-
```
72-
73-
### Demo Application
74-
75-
#### Xcode
76-
77-
The first time the Xcode project is generated, the default selected target is `PlayerUI`, for a runnable target select `PlayerUIDemo` to run the demo application in the simulator.
78-
79-
#### Bazel
80-
81-
The demo app can also be built and launched in a simulator from the command line with bazel:
82-
83-
```bash
84-
bazel run //ios/demo:PlayerUIDemo
85-
```
86-
87-
## Submitting a Pull Request
88-
89-
Prior to submitting a pull request, ensure that your fork and branch are up to date with the lastest changes on `main`.
90-
91-
Any new features should have corresponding tests that exercise all code paths, and public symbols should have docstrings at a minimum. For more complex features, adding new documentation pages to the site to help guide users to consume the feature would be preferred.
92-
93-
When you're ready, submit a new pull request to the `main` branch and the team will be notified of the new requested changes. We'll do our best to respond as soon as we can.
94-
95-
## Releases
96-
97-
When a PR is merged, it will generate a `next` release, so something like `0.12.0-next.0` which can then be used in your project. This is done so that you can consume the latest changes without having to wait for a release to be cut.
98-
99-
### Canary Releases
100-
101-
To trigger a canary release, collaborators can add a `/canary` comment to any PR. Note: Canary builds can only be requested by collaborators.
11+
- 🐛 [Report a Bug](https://github.com/player-ui/player/issues/new?assignees=&labels=bug&template=bug_report.md&title=)
12+
- 💡 [Request a Feature](https://github.com/player-ui/player/issues/new?assignees=&labels=enhancement&template=feature_request.md&title=)
13+
- 🔧 [Troubleshooting Guide](https://github.intuit.com/pages/player/docs/latest/contributing/troubleshooting/)
14+
- 💬 [Join Discussions](https://github.com/player-ui/player/discussions)
10215

10316
---
10417

105-
Inspired by react's [How to Contribute](https://reactjs.org/docs/how-to-contribute.html)
18+
*For the most up-to-date and comprehensive contributing information, please visit our [documentation site](https://github.intuit.com/pages/player/docs/latest/contributing/).*

DEV_GUIDE.md

Lines changed: 0 additions & 158 deletions
This file was deleted.

android/demo/README.md

Lines changed: 0 additions & 67 deletions
This file was deleted.

docs/site/astro.config.mjs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,15 @@ export default defineConfig({
116116
},
117117
],
118118
},
119+
{
120+
label: "Contributing",
121+
items: [
122+
{
123+
label: "Contributing",
124+
autogenerate: { directory: "contributing" },
125+
},
126+
],
127+
},
119128
{
120129
label: "Plugins",
121130
items: [

docs/site/src/components/Sidebar.astro

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ type SidebarEntry = (typeof sidebar)[number];
1111
1212
/** Get the icon for a group. Update the icon names in the array to change the icons associated with a group. */
1313
const getIcon = (index: number) =>
14-
(["seti:video", "puzzle", "setting"] as const)[index];
14+
(["seti:video", "pencil", "puzzle", "setting"] as const)[index];
1515
1616
function getFirstEntry(entry: SidebarEntry) {
1717
if (entry.type === "group") {

0 commit comments

Comments
 (0)