Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

create new Aurelia 2 project GUI #108

Open
1 of 7 tasks
eriklieben opened this issue Aug 18, 2019 · 2 comments
Open
1 of 7 tasks

create new Aurelia 2 project GUI #108

eriklieben opened this issue Aug 18, 2019 · 2 comments
Labels
✨ vNext ✨ functionality for the vNext extension

Comments

@eriklieben
Copy link
Contributor

create new Aurelia 2 project GUI

The existing CLI will be replaced with the command

npx makes aurelia

This is a perfect option if you would like to generate a project from the command prompt, but it would be nice if there was a GUI/ wizard to create a project from vs code in the same way.

The great thing about the makes package is that we can supply it with command-line options and activate the silent mode (which won't ask questions, just runs unattended), so we could easily run it from predefined options in the GUI.

In vs code, we have the option to create a web view to run an Aurelia 2 app that can communicate with vs code using postMessage. So we will create an Aurelia 2 app that lives within the extension and inherits the style of visual studio code itself (the selected theme).

image

POC: https://youtu.be/JJvTWoeOK_4

Todo:

  • execute the makes process and directly display the results in the app
  • fix layout/ make it look nice
  • create wizard logic
  • check if we can read the questions.json, before.js, ````after.js``` and base the option on that.
  • provide more information about the app you are about to create in the 'your new app section', like richer information about for example webpack.
  • create logic to add it directly to a vs code workspace
  • create logic for --here command
@eriklieben eriklieben added the ✨ vNext ✨ functionality for the vNext extension label Aug 18, 2019
@eriklieben eriklieben self-assigned this Aug 18, 2019
@EisenbergEffect
Copy link
Contributor

Sweet!

@3cp
Copy link
Member

3cp commented Aug 22, 2019

I thought about providing a GUI front for makes, but opted out for simplicity.
The GUI can be implemented by an alternative implementation of the makes inner prompts (where all user interactivity happens).
If you want to drive it from outside by peeking into the questions and other files, it feels too hacky. And you have to duplicate all conditional logic available in questions.

If it is doable, one thing you can try is, when spawn('npx', ['makes' ...], opts), build a special stdio in opts so you can render stdout in vscode. The stdio would better to be in TTY mode, so prompts can repaint the screen. It's something like how vscode implemented internal terminal.

@eriklieben eriklieben reopened this Aug 23, 2019
@eriklieben eriklieben removed their assignment Jun 4, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
✨ vNext ✨ functionality for the vNext extension
Projects
None yet
Development

No branches or pull requests

3 participants