yeoman / Hackathons

Running a Yeoman hackathon? Start here for ideas, tips, and goals
BSD 2-Clause "Simplified" License
10 stars 5 forks source link

[new project] Integrate Yeoman in an external tools (editor, node-webkit, atom-shell) #7

Open SBoudrias opened 10 years ago

SBoudrias commented 10 years ago

What?

Yeoman provide a programmatic API and an interface abstraction that allow users to integrate it inside graphical user interfaces: standalone apps, IDE, editors, web app, etc etc

Unfortunately, we don't have any working right now. Want to dig into this not so well known API? Then it's probably a good occasion!

Features?

Whatever you want really!

Helping document this feature along the way would also be very useful.

Prior art

@zenorocha got a basic prototype using node-webkit (not sure about the status)

What you really need to know:

  1. The Yeoman Environment is orchestrating running generators and discovery.
  2. Adapters are in charge of rendering content. Yeoman provide a terminal adapter by default, but it could be replace by an adapter creating HTML or to an IDE interface.
stefanbuck commented 9 years ago

Since 2 days I'm working on a yeoman integration in atom-shell. It's far from ready but a first sneak peek is available https://github.com/stefanbuck/yoapp

ahmadnassri commented 9 years ago

nice job @stefanbuck excited to see the final product!

SBoudrias commented 9 years ago

Hey @stefanbuck, nice use of the API. It'd be great to have feedback on some parts of our programmatic API so we can improve it and make these apps easier to build.

You may want to speak with @ruyadorno and @zenorocha, they've been working on a similar project on top of node-webkit. There's probably tools you can extract in reusable components and share between your projects.

zenorocha commented 9 years ago

That's true, I've discussed w/ @ruyadorno about a separated module to handle this conversion between inquirer prompts to html tags.

stefanbuck commented 9 years ago

@zenorocha I had the same idea in mind. If you and @ruyadorno want we can chat these days about it.

ruyadorno commented 9 years ago

:+1:

Funny to see that I had started working on it around the same time, I guess telepathy across the globe still a thing these days :smile:

@stefanbuck I can only see benefits on cooperating, I don't know if you would be willing to help on the node-webkit implementation but we can sure try to share some of the middleware modules.

Our current implementation for the Inquirer prompts are slightly more robust but for now they still very coupled with what we expect in our visual layer. We can try to turn that into a separated module like @zenorocha sugested but I would like some advise from @SBoudrias on that too. I'm not 100% sure that this is the way to go as it would enforce some html structure on both projects thus limiting our development on the front-end side somehow.

Anyways, feel free to ping me anytime on #yeoman at Freenode, also I'm ruyadorno on Twitter

sindresorhus commented 9 years ago

I would go with atom-shell. I've used both. node-webkit has this weird coupling that results in weird perf problems and bugs. atom-shell is also more actively developed as Atom editor depends on it being good and fast.

ruyadorno commented 9 years ago

@sindresorhus good piece of advice, I never gave it too much thought as I just jumped right into the existent structure but it might be a good time to make the switch.

SBoudrias commented 9 years ago

I think it'd be good to give access to the yeoman-app private repo to @stefanbuck. - cc @sindresorhus mind opening the gate?

Also, IMO, we could just make the repo public even if it's not finished.

sindresorhus commented 9 years ago

done

stefanbuck commented 9 years ago

Thank you. You made my day :wink:

SBoudrias commented 9 years ago

@stefanbuck Feel free to comment and contribute if you feel like it - maybe the best would be to combine our efforts in a single tool? I let you judge of that.

stefanbuck commented 9 years ago

No worry, i will do. Working together one one tool make definitely more sense.

ruyadorno commented 9 years ago

:+1:

@stefanbuck like I said before, feel free to contact me :)

I have just finished converting our current app to atom, so you should feel at home there.