GithubHelp home page GithubHelp logo

pingzing / xalami Goto Github PK

View Code? Open in Web Editor NEW
18.0 57.0 4.0 1.37 MB

A delicious way to kickstart your Xamarin Forms project

License: MIT License

C# 91.60% HTML 5.49% CSS 2.91%
xamarin xamarin-forms android ios uwp wp8 csharp template

xalami's Introduction

Xalami Logo

Xalami

Nobody loves boilerplate, especially if feels like you rewrite it every time you start a new project. Xalami is a starting point for Xamarin Forms projects that includes a lot of elements you'll use in every project. It's also delicious!

Included in the project are such tasty goodies as:

  • An emphasis on MVVM
  • A simple localization framework based on .resx files
  • A Navigation service which wraps a Xamarin Forms NavigationPage, support parameter passing, and navigation by View type or ViewModel type.
  • Several useful XAML markup extensions
  • An ItemsStack control
  • And more!

Platforms

Xalami supports: iOS, Android and UWP.

Getting Started with Xalami

Check out the Getting Started page on the wiki!

Or...

Windows

...just dive in and download it from the Visual Studio Marketplace.

You can also download it directly from inside the Visual Studio. Go to Tools -> Extension Manager -> Online, and search for Xalami. After you install it, when you go File -> New -> Project, Xalami will be in your list under Visual C# -> Cross-Platform.

Mac OSX

...get it from the Releases in the repo.

We're working on getting an addin uploaded to the Xamarin Studio/VS for Mac addin gallery!

Philosophy

Xalami is lightweight but opinionated. This means that we expect you to use the template as a starting point, and not a heavyweight framework that you must conform to. Xalami does however expect you to follow a few basic tenets:

  • You app is based around an MVVM architecture
  • You have a centralized navigation service
  • You have one ViewModel per view, and a view corresponds roughly to a single "page" in your app
  • You use XAML to define your UI

Contributing

Guidelines

[TBD]

Building

The Installer

The installer is made up of three projects:

  • The Xalami.VsixInstaller project, which generates a .vsix installer for Visual Studio.

  • The Xalami.XamarinStudioAddin project which generates (or will, anyway) an .mdpack installer for Xamarin Studio.

  • In order to build the templates, a .nupkg must first be generated from the .nuspec file in the project root:

nuget pack Xalami.nuspec
  • Then, simply right-click the project which builds the extension you're interested in and select Build!

Credits

Much love to Futurice for making this possible.

Proudly sponsored by Futurice's Spice Program (and its mascot, the Chilicorn)

Sponsored

Just as much love to the Pepperoni App Kit which served as this project's inspiration.

xalami's People

Contributors

pingzing avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

xalami's Issues

Documentation

ALL the public functions need XML doc at the very least.

It would be nice to get a list of methods and parameters for all the publicly accessible methods onto the wiki pages, in their respective locations.

VS 2017 support

Need to figure out what needs to change.

At least we need:

  • Identify dependencies that must be marked in the new manifest format
  • Generate a .vstman file in addition to our .vstemplate file

Make iOS project's Info.plist obey Solution name

Currently, the info.plist that the project templates generate doesn't change the Application Name from Xalami, nor does it change the Bundle ID from com.yourcompany.Xalami. Need to fix both of these things.

Finish the Xamarin Studio Addin

It's got a branch of it's own, and it's almost ready, but still needs polish. Still needs:

  • Don't copy the iTunesArtwork files when generating templates
  • Find out how to set the Strings.resx custom tool in project template .xpt.xml or, failing that, add a note about it in the setup docs
  • Package it up and get it published to the MonoDevelop addin repo.
  • Update wiki documentation links accordingly

Follow through on the IWakeUp interface

There needs to be a central registry of all classes that implement IWakeUp, and all of them need to have their WakeUp method called when the app's OnResume() fires.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.