ReactVision / viro

ViroReact: The AR and VR library for React Native 📳💙💛🤍💚
MIT License
1.36k stars 157 forks source link

Request for Support #204

Closed JorgeArmandoMT closed 9 months ago

JorgeArmandoMT commented 1 year ago

Hi everyone,

I'm reaching out today to request support for the Viro project on GitHub. As many of you may have noticed, this project hasn't received any updates or support in a while, despite being a really useful tool for many people.

I understand that maintaining an open-source project can be a lot of work, and I don't want to put any pressure on those who have been involved with the project in the past. However, I think it would be great if we could brainstorm some ideas for how to give this project the support it needs to keep growing and improving.

I'm open to suggestions on how we can move forward as a community to support this project. Maybe we could reach out to new contributors who could help with bug fixes or feature requests, or perhaps we could explore funding options to support the ongoing maintenance of the project.

I'd love to hear your thoughts and ideas on this topic, and I hope we can work together to support this important project. Thank you all for your time and consideration.

codynhat commented 1 year ago

Thanks for posting this @JorgeArmandoMT

I have just come across the Viro project recently while doing research on cross-platform AR solutions and specifically React Native and share many of the same observations and concerns. The project I am working on is looking to build or contribute to open, cross-platform AR solutions.

The project is called the Geo Web. We are working on building an open, shared augmented reality network. The two main components are 1) building a property rights system to have some default, shared consensus on what content should exist where, as well as 2) allowing content to be viewed on any system, platform and framework. The project is entirely open-source. I have found my way here to Viro because of the shared value of having an open, cross-platform solution for AR. I believe we share many of the same goals as folks here in the Viro community and would like to propose some ideas.

First, I mention the property rights system as it may be a potential source of funding for a project like Viro. We have implemented a property rights system called Partial Common Ownership. In short, this has a side effect of generating a source of funds for public goods. A project like Viro or any other open-source AR project can be a recipient of these funds. We are just getting started and the funds are small, but we hope to grow this over time to help public goods be competitive with closed solutions that the big players are building.

Second, we are experimenting with a concept we are calling Augmented Worlds as a way to make it easier for people to build cross-platform augmented reality experiences with little to no coding or development experience required. This could potentially be its own open-source project that the Geo Web or anyone else uses, built on top of Viro. We have started experimenting with implementations using WebXR, ARKit, and ARCore. I think it would be great to get something working that uses React Native in some way, which is why I started looking into Viro.

Our team may be interested in contributing to Viro, forking it, or perhaps developing a new React Native AR library. In addition, the Geo Web as a whole could help fund any or all of these. Some of the features we are looking for specifically is having support for geo anchors (#174) and potentially a ReactDOM implementation that uses WebXR.

After looking into Viro in more detail, I have some concerns around the underlying implementation being a bunch of C++ code that nobody has seemed to touch for awhile. Is this accurate and/or a valid concern? Perhaps this has contributed to nobody being able to maintain Viro? Does anyone have thoughts on forking Viro or potentially starting a new React Native library?

JorgeArmandoMT commented 1 year ago

Hi @codynhat,

Thank you for sharing your thoughts and ideas on how we can support the Viro project with Geo Web. I appreciate your interest in contributing to the project and your proposal for potential funding through the property rights system.

Regarding your concern about the underlying implementation of Viro being a bunch of C++ code that nobody has touched for a while, it's true that Viro is built using C++. However, I believe this is one of the strengths of the project as it allows for better performance and compatibility across different platforms.

Certainly! I think your idea of supporting geo anchors in ViroReact is a great one. This feature would allow for even more immersive and location-based AR experiences, and I think it would be well-received by the community.

That being said, I agree that there is a need for more active maintenance and support for the project. I think forking Viro or potentially starting a new React Native library could be good options to explore, but I also believe that it's important to consider the existing community around Viro and how we can leverage their contributions to support the project moving forward.

I'm open to hearing more about your ideas and potential contributions to the project, and I hope that we can work together to find a way to support this important project for the community.

macrozone commented 1 year ago

i codeveloped https://github.com/react-native-ar/react-native-arkit eons ago, because i needed it for a project. i had no ar project since then unfortunatly.

I used a simple react-native to arkit bridge, basically i created components to create the various scenekit-elements in arkit. I used a fairly naive approach to reflect the react-component-tree a a scenekit-tree. that worked fairly well. it gets a bit tricky if you want to animate the objects using code though. (arcore for android was never implemented as that initially did not exist when i started. Someone forked it and added arcore as far as i remember, but they never contributed back to my dissapointement)

but bottom line is that i came rather far without any previous scenekit knowledge (or even ios development knowledge). While having c++ in viro might be a benefit performance wise, its probably very hard to find enough developers to maintain it as an open source library.

so a more classic react-native bridge might be easier

JorgeArmandoMT commented 1 year ago

We've made some great progress and it seems like there is still a lot of potential for community support. However, I've noticed that many of the pull requests are not being addressed and merges are not being completed. This is a bit concerning as it can hinder the progress of the project.

I believe it's important for us to communicate with the administrators or contributors of the project to ensure that the proposals from the community are properly reviewed and followed up on. It's important that we work together to ensure that this project reaches its full potential.

cjmcassar commented 9 months ago

Hey all, myself and some other devs have recently teamed up with @adelarsq to work on this full time. We're hoping to get some of the major issues with iOS completed in order to get it running on the latest version.

We're looking to get iOS ready but open to hearing any other features or major issues you think should be solved first.

adclark1 commented 9 months ago

That's great news. We appreciate your efforts. Would love to see things work with the latest version of Expo to enable a GeoAR use case such as this:

https://github.com/ViroCommunity/geoar