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

Improve MvvmCross.StarterPack #1659

Closed
9 of 11 tasks
heytherewill opened this issue Mar 26, 2017 · 5 comments
Closed
9 of 11 tasks

Improve MvvmCross.StarterPack #1659

heytherewill opened this issue Mar 26, 2017 · 5 comments
Assignees
Milestone

Comments

@heytherewill
Copy link
Contributor

heytherewill commented Mar 26, 2017

Part of the 5.x milestone (Check #1415)

I think the StarterPack NuGet could have a lot more cool stuff to help those who never used MvvmCross and improvements in general to make starting a new project simpler. I'm opening this issue so we can discuss together what needs to be implemented. IMO, the ideal StarterPack package should:

  • Name the ViewModel/View pair MainViewModel/MainView, since those names are much more likely to be used in a real app
  • Show how the Init method should be implemented, something that confuses newcomers
  • Show how the Start method should be used
  • Have an example showing how to use the ShowViewModel<TViewModel> method[1] Leave this for the docs
  • Have MvxCommands in the ViewModels
  • Consume the command from each one of the clients
    • Android
    • iOS
    • WPF
    • Forms
    • macOS

This is of course not written in stone and any ideas are welcome. Once we agree on a good set of features I'm more than willing to tackle this one myself

Note: I began working on porting the content files to F# on #1658, VB people are welcome to join and do the same.

[1] This could be done by either having a commented snipped or by adding two ViewModel/View pairs (Main and Detail), but I'm not sure if that's too many files.

@martijn00
Copy link
Contributor

I like all your suggestions! Not sure if we should add more then one ViewModel, but go ahead with all the other changes!

@vvolkgang
Copy link
Contributor

Thumbs up for additional languages support! Most of the other points should really be in tutorial / documentation form, keep in mind that the most common usecase for the starter pack is "I just need a quick way to get a clean state without repeating the same steps every time". With that in mind, adding an additional VM is just adding an additional delete.

@heytherewill
Copy link
Contributor Author

@vvolkgang My idea was to have the samples as very small (and easy to delete) code snippets in the MainViewModel, mostly showing how things should be done, as I am also concerned about having to delete it all the time 😄

@heytherewill
Copy link
Contributor Author

So: The contentFiles element, needed for supporting multiple languages, needs minClientVersion to be 3.3. Which means people using NuGet 2.X wouldn't be able to update.

Since I don't know the numbers regarding adoption of NuGet 3.X, I'll wait for maintainers' approval before changing the nuspecs.

@martijn00
Copy link
Contributor

Go ahead with changing that. We have a minimum of 2.8.7 already, and that just barely works. Newer versions of Xamarin Studio and Visual studio support Nuget 3.x so with MvvmCross 5.0 we can make this breaking change.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

3 participants