Skip to content
This repository was archived by the owner on Jan 23, 2026. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 18 additions & 16 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,18 @@

Thank you for your interest in contributing to Jumpstarter! This document outlines the process for contributing to the project and provides guidelines to make the contribution process smooth.

## Getting Help

If you have questions or need help, here are the best ways to connect with the community:

### Community Resources

- **Matrix Chat**: Join our [Matrix community](https://matrix.to/#/#jumpstarter:matrix.org) for real-time discussions and support
- **Weekly Meetings**: Participate in our [weekly community meetings](https://meet.google.com/gzd-hhbd-hpu) to discuss development and get help
- **Etherpad**: Check our [Etherpad](https://etherpad.jumpstarter.dev/pad-lister) for meeting notes and collaborative documentation
Comment thread
raballew marked this conversation as resolved.
- **GitHub Issues**: [Open an issue](https://github.com/jumpstarter-dev/jumpstarter/issues) in the repository for bug reports and feature requests
- **Documentation**: Visit our [documentation](https://jumpstarter.dev/) for comprehensive guides and tutorials

## Code of Conduct

Please be respectful and considerate of others when contributing to the project.
Expand All @@ -17,7 +29,7 @@ Please be respectful and considerate of others when contributing to the project.

## Development Setup

```bash
```shell
# Install dependencies
make sync

Expand Down Expand Up @@ -59,13 +71,13 @@ If you are working on a driver or adapter library of general interest, please co

To create a new driver scaffold, you can use the `create_driver.sh` script:

```bash
```shell
./__templates__/create_driver.sh vendor_name driver_name "Your Name" "your.email@example.com"
```

This will create the necessary files and structure for your driver in the `packages/` directory. For example:

```bash
```shell
./__templates__/create_driver.sh yepkit Ykush "Your Name" "your.email@example.com"
```

Expand Down Expand Up @@ -109,7 +121,7 @@ After creating your driver skeleton:

To test your driver during development:

```bash
```shell
# From the project root
make sync # Synchronize dependencies
cd packages/your_driver_package
Expand Down Expand Up @@ -144,7 +156,7 @@ To contribute to the documentation, you'll need to set up your development envir

To build and preview the documentation locally:

```bash
```shell
cd docs
make html # Build HTML documentation
make docs-serve # Serve documentation locally for preview
Expand Down Expand Up @@ -241,16 +253,6 @@ Once your documentation changes are complete:
To add a new example:

1. Create a new directory in the `examples/` folder with a descriptive name
2. Include a comprehensive README.md with setup and usage instructions
2. Include a comprehensive `README.md` with setup and usage instructions
3. Follow the structure of existing examples
4. Ensure the example is well-documented and easy to follow

## Getting Help

If you have questions or need help, please:

1. Check the [documentation](https://docs.jumpstarter.dev/)
2. Open an issue in the repository
3. Reach out to the maintainers

Thank you for contributing to Jumpstarter!
43 changes: 19 additions & 24 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,55 +1,50 @@
# ![bolt](./assets/bolt.svg) Jumpstarter

[![badge](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/jumpstarter-dev/jumpstarter/main/assets/badge/v0.json)](https://github.com/jumpstarter-dev/jumpstarter)
Comment thread
raballew marked this conversation as resolved.
[![ci](https://img.shields.io/github/actions/workflow/status/jumpstarter-dev/jumpstarter/build.yaml?branch=main&logo=github&label=CI)](https://github.com/jumpstarter-dev/jumpstarter/actions)
[![release](https://img.shields.io/github/v/release/jumpstarter-dev/jumpstarter)](https://github.com/jumpstarter-dev/jumpstarter/releases)
[![versions](https://img.shields.io/python/required-version-toml?tomlFilePath=https%3A%2F%2Fraw.githubusercontent.com%2Fjumpstarter-dev%2Fjumpstarter%2Fmain%2Fpackages%2Fjumpstarter%2Fpyproject.toml)](https://github.com/jumpstarter-dev/jumpstarter/blob/main/packages/jumpstarter/pyproject.toml)
[![license](https://img.shields.io/github/license/jumpstarter-dev/jumpstarter)](https://github.com/jumpstarter-dev/jumpstarter/blob/main/LICENSE)
[![uv](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/uv/main/assets/badge/v0.json)](https://github.com/astral-sh/uv)
[![Matrix](https://img.shields.io/matrix/jumpstarter%3Amatrix.org?color=blue)](https://matrix.to/#/#jumpstarter:matrix.org)
[![Etherpad](https://img.shields.io/badge/Etherpad-Notes-blue?logo=etherpad)](https://etherpad.jumpstarter.dev/pad-lister)
[![Community Meeting](https://img.shields.io/badge/Weekly%20Meeting-Google%20Meet-blue?logo=google-meet)](https://meet.google.com/gzd-hhbd-hpu)

An open source and cloud native Hardware-in-the-Loop testing tool that enables you to test your software stack on both real hardware and virtual environments using CI/CD principles.
A free, open source tool for automated testing on real and virtual hardware with CI/CD integration. Simplify device automation with consistent rules across local and distributed environments.

## Highlights

- 🚀 A single, unified testing tool for local, virtual, and remote hardware testing.
- 🐍 Write test scripts in Python with familiar frameworks such as [pytest](https://docs.pytest.org/en/stable/).
- 🛠️ Use [drivers](https://docs.jumpstarter.dev/introduction/drivers.html) to abstract complex hardware interfaces for testing.
- 🚀 **Unified Testing** - One tool for local, virtual, and remote hardware
- 🐍 **Python-Powered** - Leverage Python's testing ecosystem
- 🛠️ **Hardware Abstraction** - Simplify complex hardware interfaces with drivers
- 🔌 Built-in support for common interfaces such as [CAN](https://github.com/jumpstarter-dev/jumpstarter/tree/main/packages/jumpstarter-driver-can), [IP](https://github.com/jumpstarter-dev/jumpstarter/tree/main/packages/jumpstarter-driver-network), [GPIO](https://github.com/jumpstarter-dev/jumpstarter/tree/main/packages/jumpstarter-driver-raspberrypi), [U-Boot](https://github.com/jumpstarter-dev/jumpstarter/tree/main/packages/jumpstarter-driver-uboot), [SD Wire](https://github.com/jumpstarter-dev/jumpstarter/tree/main/packages/jumpstarter-driver-sdwire), etc.
- 💻 Collaborate with developers around the world on shared test hardware.
- ☸ Integrates with your existing [Cloud Native](https://www.cncf.io/) development environment.
- 🔄 Run hardware tests with your existing CI/CD pipelines in the cloud.
- 📦 Support for containerized test runners with Podman/Docker.
- 🖥️ Supports Linux and macOS.
- 💻 **Collaborative** - Share test hardware globally
- 🔄 **CI/CD Ready** - Works with cloud native developer environments and pipelines
- 🖥️ **Cross-Platform** - Supports Linux and macOS

## Installation

Install all the Jumpstarter Python components:

```console
pip install --extra-index-url https://docs.jumpstarter.dev/packages/simple jumpstarter-all
```shell
pip install --extra-index-url https://pkg.jumpstarter.dev/ jumpstarter-all
```

Or, just install the `jmp` CLI tool:

```console
pip install --extra-index-url https://docs.jumpstarter.dev/packages/simple jumpstarter-cli
```shell
pip install --extra-index-url https://pkg.jumpstarter.dev/ jumpstarter-cli
```

To install the [Jumpstarter Service](https://docs.jumpstarter.dev/introduction/service.html)
in your Kubernetes cluster, see the [Service Installation](https://docs.jumpstarter.dev/installation/service/index.html)
To install the [Jumpstarter Service](https://jumpstarter.dev/introduction/service.html)
in your Kubernetes cluster, see the [Service Installation](https://jumpstarter.dev/installation/service/index.html)
documentation.

## Documentation

Jumpstarter's documentation is available at [docs.jumpstarter.dev](https://docs.jumpstarter.dev).
Jumpstarter's documentation is available at [jumpstarter.dev](https://jumpstarter.dev).

Additionally, the command line reference documentation can be viewed with `jmp --help`.

## Contributing

Jumpstarter welcomes contributors of all levels of experience and would love to
see you involved in the project. See the [contributing guide](https://github.com/jumpstarter-dev/jumpstarter/blob/main/CONTRIBUTING.md) to get started.
see you involved in the project. See the [contributing guide](CONTRIBUTING.md) to get started.

## License

Jumpstarter is licensed under the Apache 2.0 License ([LICENSE](https://github.com/jumpstarter-dev/jumpstarter/blob/main/LICENSE) or [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0)).
Jumpstarter is licensed under the Apache 2.0 License ([LICENSE](LICENSE) or [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0)).
2 changes: 1 addition & 1 deletion __templates__/create_driver.sh
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ cat > "${README_FILE}" << 'EOF'

## Installation

```bash
```shell
pip install jumpstarter-driver-${DRIVER_NAME}
```

Expand Down
13 changes: 13 additions & 0 deletions docs/source/_static/css/custom.css
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,17 @@
/* Hide the Furo attribution text */
.made-with-furo {
display: none !important;
}

/* Fix version name overflow in sidebar */
.sidebar-brand .sidebar-brand-text {
white-space: normal;
word-break: break-word;
}

.sidebar-brand .sidebar-brand-text a {
display: inline-block;
max-width: 100%;
overflow: hidden;
text-overflow: ellipsis;
}
Loading