tauri/docs/usage/contributor-guide.md

53 lines
1.8 KiB
Markdown
Raw Normal View History

---
title: Contributor Guide
---
todo: make this friendlier and more complete
Tauri is a polyglot system that uses:
- git
- Node.js
- Rust
- GitHub actions
It can be developed on macOS, Linux and Windows.
## Contribution Flow
1. File an Issue
2. Fork the Repository
3. Make Your Changes
4. Make a PR
### A Note About Contributions to the Rust Libraries
When contributing to the Rust libraries `tauri`, `tauri-api`, and `tauri-updater`; you will want to setup an environment for RLS (the Rust Language Server). In the Tauri root directory, there is a `.scripts` folder that contains a set of scripts to automate adding a couple temporary environment variables to your shell/terminal. These environment variables point to directories in the test fixture which will prevent RLS from crashing on compile-time. This is a necessary step for setting up a development environment for Tauri's Rust libraries.
##### _Example Instructions_
1. Navigate to the Tauri Root directory.
2. Execute a script based on your Operating System from this folder: `.scripts/init_env.bat` for Windows Cmd, `.scripts/init_env.ps1` for Windows Powershell, `. .scripts/init_env.sh` for Linux/macOS bash (note the first `.` in this command).
3. Open your text editor/IDE from this shell/terminal.
## Hands On Example
Let's make a new example. That's a great way to learn. We are going to assume you are on a nixy type of environment like Linux or macOS and have all of your development dependencies like rust and node already sorted out.
```sh
git clone git@github.com:tauri-apps/tauri.git
cd tauri/cli/tauri.js
yarn
mkdir ../../examples/vanillajs && cd "$_"
```
```json
"tauri:source": "node ../../../cli/tauri.js/bin/tauri",
```
```ini
[dependencies.tauri]
path = "../../../../core/tauri"
features = [ "all-api" ]
```