jeromeetienne / AR.js

Efficient Augmented Reality for the Web - 60fps on mobile!
MIT License
15.8k stars 2.22k forks source link

Ensure the future of AR.js #469

Closed janpio closed 4 years ago

janpio commented 5 years ago

Hey,

I want to start a discussion on how to keep AR.js alive.

I used it in a project, and the current state of the repo is not optimal for "selling" the usage of AR.js to clients. Even if there is no (big) future development, it would still make sense to get the current working software in a better environment.

There have been initiatives for this in the past, see https://github.com/jeromeetienne/AR.js/issues/253 (Move AR.js repositories to a github organisation) or https://github.com/jeromeetienne/AR.js/issues/374 (Lack of maintenance and inviting to fork).

I just today had restarted this a bit in https://github.com/jeromeetienne/AR.js/issues/376#issuecomment-462277271, but thought it would be better to move it to its independent issue.

So, how can we ensure a stable future for AR.js?

janpio commented 5 years ago

Personally I think there are 3 big options:

  1. No change needed, stuff is okay like it is right now.
  2. Fork the repo, continue improvements there. Maybe direct people there.
  3. Move the repo to the independent GitHub org, and continue work there. (Needs initial support from @jeromeetienne)

I absolutely prefer option 3, as it help to not split the community, links, issues, and so on. We "just" have to find out how to go about it, and get @jeromeetienne 's support when we figured out all the technical details.

Did I miss any further options? What do you think?

nicolocarpignoli commented 5 years ago

Option 3 for me is the better chance. AR.js is the fantastic work of Jerome, and there's no doubt about that, but the truth is that the library is currently trending, a lot in fact, but he was not supporting it anymore. I was in touch with him, months ago, but now no more.

The only problem with option 3 is the 3. (Needs initial support from @jeromeetienne). I hope this can become possible. Without his support, instead of letting the library at the actual state, I prefer to manage it (and with me, whoever wants to do it) on a personal repository where I can have all permissions - and give them to contributors.

My 2 cents: wait for Jerome. If he's not showing up, let's try independent ways with a fork.

navanchauhan commented 5 years ago

@nicolocarpignoli I think an org would be better, rather than once individual having the rights ( not everyone is Torvalds :p )

Sadly, I am in midst of my exams :( therefore I won’t be able to devote as much time as I want to ( these pesky things will end in March :/ ).

I think we should first change the hardcoded links into relative links. There are about a hundred such links. Once, we do that it’ll be easier to move the repo into an organisation without breaking the links

janpio commented 5 years ago

Orf accounts are free, so no reason to use a personal one (again). With Jerome's help it could be the one he created a few years ago.

@nicolocarpignoli What are your current permissions here? You are not an admin, correct?

I investigated the limitations of a move/transfer of the repository in https://github.com/jeromeetienne/AR.js/issues/253#issuecomment-462303826 - the biggest problem are GitHub pages, but there are solutions for that as well - so from a Github/technical side this should be possible.

What @navanchauhan said of course is true - doing preparatory work here in the repository would definitely be a good idea. So "Change absolute to relative links" is a first work item (By the way: Important to consider that the .md files can be shown via GitHub UI and via GitHub Pages - so the links have to work in both).

I think we should do some more preparation here, think it all through and maybe also do a mock transfer of a test repository to see if everything works, and then send a nice email to Jerome with an explanation and all the individual steps he should/could take to make the transfer happen. I don't assume he wants AR.js to just wither away, so if we make it as easy as possible for him to play his part in this, we should be good.

commentatorboy commented 5 years ago

Thank you bringing this up. In terms of ensuring the future of this.

  1. I suggest using https://trello.com/ to track the work and move/transfer. Or at least have a better overview of tasks/milestones etc. I am willing to take that responsibility.
  2. The README.md should be updated with an "table of contents".
  3. Update: arjs examples (f.x. holographic message is a dead link)
  4. Tango is outdated and is now called ARCore. outdated article. But it would be nice if we could use ARCore with a-frame and arjs. Even this is outdated: https://webxr.io/webar-playground/. Point being: We should update them somehow.
  5. At some point in the future arjs should also support webxr.

Another notice: A-frame now supports webXR. https://github.com/aframevr/aframe/releases/tag/v0.9.0 It would be nice if AR.js could support it in some way.

Other resources: https://medium.com/@urish/web-powered-augmented-reality-a-hands-on-tutorial-9e6a882e323e (using ARCore in the web) https://github.com/chenzlabs/aframe-ar (three.ar.js and a-frame)

I might be able to help a little, since I am currently looking for jobs. @janpio I am currently trying to sell my own web app using this library. I made the web app in Laravel. It currently supports uploading 3D files and shows them in the front end with animations. This proves that this library has a HUGE potential to be used in business.

navanchauhan commented 5 years ago

@commentatorboy #473 adds an index

nicolocarpignoli commented 5 years ago

JFY, the fact is, @jeromeetienne is not showing up anymore, sadly. I hope I will, but I do not know when it will be possible ANY action that involves him.

kalwalt commented 5 years ago

Hi to all, nice and cool ideas! I hope for nice development of AR.js, it gives me the possibility to do AR with a little effort. It will be interesting the migration to a Org, i vote :+1: for this, if i can i will contribute to the project. I hopeful that everything goes well, and, that the mantainer @jeromeetienne gives his opinion.

janpio commented 5 years ago

I think it is fair that we put in some work first.

@nicolocarpignoli, how does the merge process from dev to master work?

nicolocarpignoli commented 5 years ago

honestly, jerome did leaveme very few directions. I do only know that dev is the branch where to merge all new PRs and features, and do not modify master. I only merged on master README enhancements, so people can see them when first arrive on AR.js repo.

Another thing to enhance is the npm package and set an automatic flow of deploy. But is better to start from easy things :)

janpio commented 5 years ago

Ok, so there is no defined merge strategy for dev->master yet. That's what I wanted to know.

navanchauhan commented 5 years ago

Which board will you guys prefer? Gitkraken Glo or Trello?

Edit: I prefer Glo as I have it’s pro version ( Thanks to GitHub Education )

nicolocarpignoli commented 5 years ago

Trello for me

janpio commented 5 years ago

Same here. Identical username as on Github.

navanchauhan commented 5 years ago

https://trello.com/b/63F7JlvD/arjs

Green: Doxumentation Yellow: Coding

Just tell your emails so I can add you guys

raywu commented 5 years ago

Happy to help with keeping Trello organized. I'm interested to see this library grow!

ghost commented 5 years ago

my email is micahtinklepaugh@gmail.com

I don't know how good I'd be at contributing code but I could help with documentation

On Fri, Feb 15, 2019 at 6:52 AM Navan Chauhan notifications@github.com wrote:

https://trello.com/b/63F7JlvD/arjs

Green: Doxumentation Yellow: Coding

Just tell your emails so I can add you guys

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/jeromeetienne/AR.js/issues/469#issuecomment-464057612, or mute the thread https://github.com/notifications/unsubscribe-auth/AGU1tDCkfztDqbx96uOe_GJABrwXRRSiks5vNruzgaJpZM4a0AeY .

-- Micah Tinklepaugh

commentatorboy commented 5 years ago

Mine is commentatorbot@gmail.com I am currently working with using arjs in "business" settings. So I can help experiment to some extent.

@entrebot That is also ok. Everything helps.

kalwalt commented 5 years ago

Mine is github@kalwaltart.it, i would contribute if i can.

CueContext commented 5 years ago

Mine is bill@cuecontext.com. Will also contribute when I can.

navanchauhan commented 5 years ago

Hi @CueContext couldn’t find you via email please give your trello username

nicolocarpignoli commented 5 years ago

nicolocarpignoli@gmail.com please add. There was also slack channel but honestly is is better to start over with trello and github. Thanks!

CueContext commented 5 years ago

Hi @navanchauhan I’ve just updated my Trello profile so bill@cuecontext or bill_sterling should work. Thanks!

navanchauhan commented 5 years ago

I have added everyone here, @nicolocarpignoli if you could somehow contact @jeromeetienne so he could configure the GitHub power up with this repo, we will be able to better integrate all the PRs and Issues

https://trello.com/power-ups/55a5d916446f517774210004/github

1A214824310226

janpio commented 5 years ago

I suggest not bother Jerome until we have a state that is stable and finished enough to be transferred to the repo. He obviously has different priorities right now, so maybe we should limit our pondering to when we have something actionable that really needs to be done.

nicolocarpignoli commented 5 years ago

I agree with not bothering Jerome for now. I also propose, if you agree, to make Trello board public (publicly visible, not modifiable by everybody). we can then link the board here on README master to make progress visible to users.

andreyrd commented 5 years ago

I'd like to be part of the Trello board as well, username @andreyrd

JamesLMilner commented 5 years ago

For those of you are interested I have been rewriting the Three.js (dropping support for AFrame) part of this repository as a standalone library written in TypeScript. It's main aim is to support installation as module via npm, bundle via Webpack/Rollup/etc and also to explicitly use and bundle artoolkitjs as the core (dropping Tango/Aruco).

One of my big hopes is that by integrating with modern web development work flows it will be easier to get people using the project. I also hope to auto generate docs and overall improve the documentation story going forward.

It's still early days but you can see it here: https://github.com/JamesMilnerUK/THREEAR. I am happy to take questions and contributions over there :)

ShawnOakley commented 5 years ago

Hello all, It's great that you guys are stepping up. I'd love to help where I can. @navanchauhan (or whomever else is managing the board) -- please add me to the trello board whenever you have a moment. Thanks! @ShawnOakley, contact shawnoakley@gmail.com

Wavewash commented 5 years ago

I'd also appreciate to be added to the trello board (wavewash)

I'm looking at ways to extend AR.js to do more performant nft.

janpio commented 5 years ago

I invited all the people that asked for it. The board URL is: https://trello.com/b/63F7JlvD/arjs

janpio commented 5 years ago

And I created a Google spreadsheet that we can use to collect better browser/app compatibility information:

https://docs.google.com/spreadsheets/d/1e5YimbF_D1Sou2bx2vdBH58s1WdB_LgzBVYYD_uQLJk/edit?usp=sharing

I prefilled it with all the devices and apps I own and could think of. When we have enough data, we can rewrite the "browser support" section of the README.

thor-brickman commented 5 years ago

I will gladly help in any way I can. :-)

markslingerland commented 5 years ago

@janpio Would you be able to invite me to the trello board?

janpio commented 5 years ago

Leave your username or email address here, and someone with access to the board can invite you.

thor-brickman commented 5 years ago

Could someone add thorbrickman to the Trello board, please?

thor-brickman commented 5 years ago

I see Jerome submitting things in to another repo as recently as January...and from LinkedIn, it seems he's busy with Amazon Sumerian ( Which is awesome for him! ). Has anyone tried reaching out there to see if he has any input?

nicolocarpignoli commented 5 years ago

I tried but no luck at all. For now we just have to set things up, prepare for an eventually migration to a github org. The trello board is a great start, I see so many people willing to help. If we can make things on the board done, then we can see if it is possible to reach jerome again, or if we are forced to act without him (hopefully, not :) )

janpio commented 5 years ago

@thor-brickman https://github.com/jeromeetienne/AR.js/issues/469#issuecomment-464448991

JamesLMilner commented 5 years ago

Just wanted to give you an update on what I've been up to on THREE AR:

Cheers!

Gauzz commented 5 years ago

Hey, guys please add me to trello board too @gauravrozatkar

ghost commented 5 years ago

I used AR.js on a project before. But at the time I felt like it was abandoned. It is a good thing to see so many people want it to get better.

rodrigocam commented 5 years ago

I've been using AR.js on a current project and I decided to build my own lib because it was getting pretty exaustive use AR.js. My lib is using only jsartoolkit and threejs with web components. I can help this iniciative with the knowledge I acquired building this lib (:

pablodiegoss commented 5 years ago

I've checked out @rodrigocam work with AR, https://github.com/rodrigocam/ar-gif looks like a pretty solid iniciative to build some projects with AR and GIFs o/

nicolocarpignoli commented 5 years ago

@rodrigocam If you want you may explain your project with 2 lines or so and a link, and make a PR to add it to AR.js Readme. I will be glad to merge it :)

JamesLMilner commented 5 years ago

@nicolocarpignoli would you be willing to do that for THREE AR also? Thanks!

janpio commented 5 years ago

The easiest way to to this would probably be via a Wiki page (which unfortunately seems to be limited to administrators or commiters?) or an additional .md file (e.g. alternatives.md). The most important aspect of such a list of course would be to make clear what exactly the project is and how it relates to AR.js. Is it a modern rebuild? Or additional functionality? Why does it exist?

nicolocarpignoli commented 5 years ago

@JamesMilnerUK yes of course :)

@janpio yes, I can write on wiki but not add anyone else or make it publicly editable

janpio commented 5 years ago

Shame :/ Let's go with a new .md file then for now.

dejaviewdujour commented 5 years ago

@janpio would you please add me to the Trello board? I am inspired to see so many people want to help fill in the gaps and I'd like to help out where I can.