First and foremost, thank you for wanting to contribute to Iris.
The Ojos Project is a research project started at the University of California, Irvine with the goal of making the hospice experience less complicated. Carlos Valdez's grandmother was in hospice, and he witnessed firsthand some of the difficulties that can arise in hospice care.
With the help of Professor Mark S. Baldwin, the Ojos Project team researched academic articles, conducted interviews, and collected data about hospice care to ensure we create something meaningful.
Iris is the outcome of that effort.
This repository is the primary space for the Developers team of the Ojos Project to work on Iris. Since day 1, the Ojos Project has been transparent about our work, and that does not change with this repository.
We file issues in this space, we collaborate in this space, send commits in this space, and more.
Tip
Want to talk with the team? Feel free to join our Discord server!
You can contact the team via [email protected] or through our Discord server.
This is a reminder that Iris is under the GNU General Public License v3. Please
view the LICENSE
file for more information.
Submitting Issues may be the easiest way to contribute to the Ojos Project. If you want to submit an issue, please be sure to be clear, concise, and responsive.
Here's a few good examples:
- Bug report: ojosproject/website#24
- Feature request: ojosproject/website#13
- Documentation change: ojosproject/docs#21
Warning
Reminder regarding security vulnerabilities:
Please do not submit security vulnerabilities using GitHub Issues. Please
review the SECURITY.md
file for more information.
Since Iris is not yet production-ready, we are keeping all Iris-related
documentation in the docs
folder at the root of the repository. It's written
in simple Markdown!
Once Iris is production ready, we will be publishing the documents on ojosproject.org.
The Ojos Project primarily uses Figma for our designs. You can visit the Iris Software Design page to see various examples of designs by us.
If you'd like to help with this aspect of the project, please contact Carlos so that he gives you access to the Figma projects and gets you set up.
Ojos Project primarily uses Figma for our designs. Our main designer is Jesse.
The Ojos Project doesn't just want to be centered around UCI. If you'd like to start your own team of contributors at your university or institution, please contact Carlos Valdez so that we can coordinate our efforts. We can't wait to work with you!
And, of course, you can contribute to Iris directly by writing code. Please view the Code Contributions section below for more information.
Please make sure to follow our git policies.
It may be useful to read the following resources before development:
- Quick Start - React
- Thinking in React
- NextJS App Routing Fundamentals
- Clear explanation of Rust’s module system
- Creating an Iris feature
Before you clone the repository, please:
- Install NodeJS using nvm or an equivalent tool
- Follow Tauri's prerequisite guide
- Follow the Rust install guide
- Install the Tauri CLI:
cargo install tauri-cli --version "^2.0.0" --locked
- VSCode (Optional)
- Install recommended plugins with
@recommended
- Install recommended plugins with
# Clone the repository with SSH (or HTTPS)
git clone [email protected]:ojosproject/iris.git
cd iris
Iris is written with a lot of different tools; however, we primarily use the Tauri toolkit, which requires Rust.
Because of Tauri, we're also allowed to write the frontend using Next.js using React and Typescript.
Please install the npm dependencies:
nvm use
npm i
... then run this to run the full program:
cargo tauri dev
# npm run tauri dev <-- also works!
When developing, you may want to clear the data produced by Iris to get a fresh experience. To do so, you should run the following commands on the terminal:
- Windows:
rm -r -fo ~/AppData/Roaming/org.ojosproject.Iris
- macOS:
rm -fr ~/Library/'Application Support'/org.ojosproject.Iris
- Linux:
rm -fr ~/.local/share/org.ojosproject.Iris; rm -fr ~/.config/org.ojosproject.Iris
Start programming! A good place to start may be the Creating an Iris feature doc.