# Example of a hybrid Python-Julia package, based on Julia code

**URL:** https://discourse.julialang.org/t/example-of-a-hybrid-python-julia-package-based-on-julia-code/126720
**Category:** General Usage
**Tags:** interoperability, python, juliacall, pythoncall
**Created:** [March 8, 2025, 8:34pm UTC](https://discourse.julialang.org/t/example-of-a-hybrid-python-julia-package-based-on-julia-code/126720 "2025-03-08T20:34:21Z")
**Posts on this page:** 6
**Page:** 1

<div class="post-metadata">

### Author: ![cdsousa](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/cdsousa/32/215553_2.png) [@cdsousa](https://discourse.julialang.org/u/cdsousa)
#### Post date: [March 8, 2025, 8:34pm UTC](https://discourse.julialang.org/t/example-of-a-hybrid-python-julia-package-based-on-julia-code/126720/1 "2025-03-08T20:34:21Z")

</div>

> **[GitHub - cdsousa/HybridPyJlPkgExample.jl: Example of a hybrid Python-Julia package, based...](https://github.com/cdsousa/HybridPyJlPkgExample.jl)**
>
> Example of a hybrid Python-Julia package, based on Julia code with a Python wrapper done with JuliaCall

How cursed can this be? 😅

---

<div class="post-metadata">

### Author: ![ufechner7](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ufechner7/32/51363_2.png) [@ufechner7](https://discourse.julialang.org/u/ufechner7)
#### Post date: [March 8, 2025, 9:51pm UTC](https://discourse.julialang.org/t/example-of-a-hybrid-python-julia-package-based-on-julia-code/126720/2 "2025-03-08T21:51:59Z")

</div>

I think it looks pretty clean… Only the name is a bit complicated.

---

<div class="post-metadata">

### Author: ![terasakisatoshi](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/terasakisatoshi/32/9187_2.png) [@terasakisatoshi](https://discourse.julialang.org/u/terasakisatoshi)
#### Post date: [March 9, 2025, 12:32pm UTC](https://discourse.julialang.org/t/example-of-a-hybrid-python-julia-package-based-on-julia-code/126720/3 "2025-03-09T12:32:25Z")

</div>

I recall that I had also created a repository that is similar to yours.

> **[GitHub - terasakisatoshi/jldev\_rye: (Julia + Python/Rye) --\> That is gomagoma kyukkyu](https://github.com/terasakisatoshi/jldev_rye)**
>
> (Julia + Python/Rye) --\> That is gomagoma kyukkyu

---

<div class="post-metadata">

### Author: ![sylvaticus](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/sylvaticus/32/203883_2.png) [@sylvaticus](https://discourse.julialang.org/u/sylvaticus)
#### Post date: [March 9, 2025, 8:26pm UTC](https://discourse.julialang.org/t/example-of-a-hybrid-python-julia-package-based-on-julia-code/126720/4 "2025-03-09T20:26:30Z")

</div>

Now you need to add the necessary to load it as an R package too… 🙂

---

<div class="post-metadata">

### Author: ![cjdoris](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/cjdoris/32/213133_2.png) [@cjdoris](https://discourse.julialang.org/u/cjdoris)
#### Post date: [March 9, 2025, 10:39pm UTC](https://discourse.julialang.org/t/example-of-a-hybrid-python-julia-package-based-on-julia-code/126720/5 "2025-03-09T22:39:36Z")

</div>

Not cursed at all - PythonCall and JuliaCall themselves are hosted in a single joint repo.

---

<div class="post-metadata">

### Author: ![cdsousa](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/cdsousa/32/215553_2.png) [@cdsousa](https://discourse.julialang.org/u/cdsousa)
#### Post date: [March 9, 2025, 11:21pm UTC](https://discourse.julialang.org/t/example-of-a-hybrid-python-julia-package-based-on-julia-code/126720/6 "2025-03-09T23:21:55Z")

</div>

Wow, that’s right, I see that in dev mode the juliapkg.json ([PythonCall.jl/pysrc/juliacall/juliapkg-dev.json at main · JuliaPy/PythonCall.jl · GitHub](https://github.com/JuliaPy/PythonCall.jl/blob/main/pysrc/juliacall/juliapkg-dev.json)) points to the package folder itself… nice!
