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

Adding a UI framework #199

Closed
manavsehgal opened this issue Jan 5, 2016 · 32 comments
Closed

Adding a UI framework #199

manavsehgal opened this issue Jan 5, 2016 · 32 comments

Comments

@manavsehgal
Copy link

This issue combines several prior issues around Scss/jQuery/Bootstrap integration.

Angular community has a choice of UI frameworks to consider. Bootstrap, Semantic UI, Ionic, Material UI... among others. Can we showcase (with sample components, webpack integration...) integration of one UI framework using best practices followed by the starter...

  • Using Scss in modular way - selective UI framework components for minimal payload.
  • Integrating UI framework JS modules honoring Angular and Webpack requirements.

We need to vote on one such framework for integration, before considering the implementation.

  • Bootstrap, Material will most likely be implemented in a project similar to Angular Bootstrap or Angular Material...
  • Ionic is self-contained and already implementing Angular 2 + Ionic 2 integration on their own...
  • Among the UI frameworks I find Semantic UI to be most comprehensive and flexible in terms of integration and customization surface...

+1 Semantic UI

@RainingNight
Copy link

+1 Angular Material

@PatrickJS
Copy link
Owner

I have a version of the repo with ng2-material working. I ended up not merging it since there was a lot of overhead. I probably need to write a how to extend wiki

@manavsehgal
Copy link
Author

Writing a wiki to explain integration with various UI frameworks seems a good idea as well.

@quanterion
Copy link

I vote for Material Design. Also It would very helpful to add authentication with UI. IMHO it is very useful in starter kits.

@manavsehgal
Copy link
Author

@RemKolomna Thanks for voting. Auth seems to be a separate thread, I agree an important one.

@fesor
Copy link

fesor commented Jan 6, 2016

I agree, there is not so many examples of how to implement it with angular. At least some strategies should be described in wiki.

@manavsehgal
Copy link
Author

Official Angular guidance doc for ng-material 2.

@MurhafSousli
Copy link

I vote for angular2 material

@manavsehgal
Copy link
Author

Thanks for adding Wiki on Bootstrap 4 integration

@manavsehgal
Copy link
Author

Just started coding a sample app forking this starter. Demo use of sass/scss at app level and component level (see feature component). Simple example introducing theming and flexbox layouts using scss. https://github.com/manavsehgal/AngularPages

@dsebastien
Copy link

+1 for Angular material :)

@manavsehgal
Copy link
Author

Quick count on votes, wiki and issues:

Angular Material = 5 votes > Bootstrap 4 = 1 wiki, 2 issues > Semantic UI = 1 vote
Sass/Scss = 5 issues > Less = 1 issue

@PatrickJS
Copy link
Owner

I rather include instructions on how to install either one than force developers to start off with one

@ollwenjones
Copy link

+1 for instructions / example to add either one. A good starter project shouldn't be saddled with too many dependencies a dev may or may not need for his/her next project.

@phil-lgr
Copy link

+1 for instructions / example to add either one, I think it is better to
show example on how to install sass css, fonts (as new to Webpack, it was
not so easy to load fonts) and let devs decide :)

On Fri, Jan 22, 2016 at 9:23 AM, Sam Jones notifications@github.com wrote:

+1 for instructions / example to add either one. A good starter project
shouldn't be saddled with too many dependencies a dev may or may not need
for his/her next project.


Reply to this email directly or view it on GitHub
#199 (comment)
.

Philippe Léger

Programmer (front-end) | [image: LinkedIn]
https://ca.linkedin.com/pub/philippe-l%C3%A9ger/29/57/14b|
pleger2@gmail.com | 514-799-8461

@phil-lgr
Copy link

@manavsehgal thank you for https://github.com/manavsehgal/AngularPages, really helped me figure out how to generate style for components! Potentially a great addition to the boilerplate..

@manavsehgal
Copy link
Author

@phil-lgr cheers for the note. I will discuss with @gdi2290 for inclusion into core (smiles).

@clouless
Copy link

regarding boostrap 4. I think there is a little mistake in the doc:
https://github.com/AngularClass/angular2-webpack-starter/wiki/How-to-use-Bootstrap-4-and-Sass-(and-jQuery)

You should not use bootstrap-sass package since it is bootstrap 3. And use config file .bootstraprc to tell bootstrap-loader that it is bootstrap v4 (which already contains scss files): https://github.com/shakacode/bootstrap-loader/blob/master/.bootstraprc-4-default

I will try to figure it out myself but it will take some time.

UPDATE: ✅ I got it working without bootstrap-sass by adding the following to main.ts

import 'zone.js';
import 'reflect-metadata';
import 'jquery';
import 'bootstrap-loader';

Without zone and reflect-metadata angular won't run. With the two lines included it runs but I got some other weird errors which I will ignore for now.

image

I used:

  "dependencies": {
    "angular2": "2.0.0-beta.6",
    "bootstrap": "^4.0.0-alpha.2",
    "bootstrap-loader": "^1.0.8",
    "es7-reflect-metadata": "^1.5.5",
    "zone.js": "0.5.14"
...

@NickClark
Copy link

My biggest issue right now with styles, is keeping the source maps. Otherwise, I've been opting for the following config:

{ test: /\.scss$/,  loaders: ['to-string', 'css?sourceMap', 'sass?sourceMap'] },

This allows me to keep using the css-loader to resolve url()s.

@cagataycivici
Copy link

How about PrimeNG?

http://www.primefaces.org/primeng/

@alvipeo
Copy link

alvipeo commented Apr 9, 2016

Let's add every UI lib to the project! ;)

@fesor
Copy link

fesor commented Apr 9, 2016

@alvipeo this is actually good idea, it just means that we should make yoman generator.

@alvipeo
Copy link

alvipeo commented Apr 9, 2016

Exactly. Let's leave the project alone and not make it fat.

@joshwiens
Copy link
Contributor

Having done quite a bit of this lately and I would suggest going the route @gdi2290 suggested.

Fork it and create a walkthrough on how to add, material2/ng2-bootstrap/sass/whatever
Open a PR for the readme and have the repo added to a list of projects that have been extended.

It simplifies pulling in updates from the upstream repository ( this one ) and still provides value to the community using it without bloating upstream.

@MurhafSousli
Copy link

@cagataycivici did you find a way to integrate it? I can't get it to work

@msegers
Copy link

msegers commented May 27, 2016

Sooo where did Material2 go It's gone from the project?

@PatrickJS
Copy link
Owner

there's a material2 branch that is always up-to-date
https://github.com/AngularClass/angular2-webpack-starter/tree/material2

@VivekWisdom
Copy link
Contributor

So Just to confirm we need to clone the material2 branch to use the material UI?

@joshwiens
Copy link
Contributor

@VivekWisdom - You need to checkout the material2 branch. The modifications you need to use @angular-material2 exist there.

@holms
Copy link

holms commented Dec 11, 2016

Anyone PLEASE can tell me where the hell is material2 branch???

@VivekWisdom
Copy link
Contributor

Looks to me that material 2 is integrated in default branch :)

@romelgomez
Copy link

@holms it was deleted #1199 , To add material see this gist: https://gist.github.com/romelgomez/106625de08bbf68a2ca2b5c8aa93dcc8

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

No branches or pull requests