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

About this project #8

Closed
cooljith91112 opened this Issue Feb 12, 2015 · 30 comments

Comments

Projects
None yet
@cooljith91112
Copy link

cooljith91112 commented Feb 12, 2015

Will this ever release? Because there are many developers(you can't imagine how much! Some includes Aliens too...) waiting to see Semantic UI in Angular JS. If so when can we expect the first release?

@caitp

This comment has been minimized.

Copy link
Member

caitp commented Feb 12, 2015

@m0t0r owns this now, but he's probably busy with work. It would probably speed things up if other contributors started submitting pieces

@m0t0r

This comment has been minimized.

Copy link
Member

m0t0r commented Feb 12, 2015

I am back after Feb. 15. It will be released!

@m0t0r m0t0r added the question label Feb 12, 2015

@cooljith91112

This comment has been minimized.

Copy link
Author

cooljith91112 commented Feb 16, 2015

kool!

@samrad

This comment has been minimized.

Copy link

samrad commented Feb 17, 2015

Any news?

@Semantic-Pusher-Robot

This comment has been minimized.

Copy link

Semantic-Pusher-Robot commented Feb 17, 2015

We need more contributors to step up.

On Tue, Feb 17, 2015 at 2:29 PM, Sam Rad notifications@github.com wrote:

Any news?


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

@m0t0r

This comment has been minimized.

Copy link
Member

m0t0r commented Feb 22, 2015

Hi. I am currently alone in this project and taking into account that I am not dedicated full time to this project but rather on free time which is pretty often catastrophically insufficient. It would be _just terrific_ to get any support from the community!

@speedingdeer

This comment has been minimized.

Copy link

speedingdeer commented Mar 4, 2015

Hi. I like your job! I would like to start trying to contribute to the project. Should I start from this repository or the old one (https://github.com/caitp/angular-semantic) ?

@caitp

This comment has been minimized.

Copy link
Member

caitp commented Mar 4, 2015

You should start from this one. I'm happy to review patches, so don't hesitate to ping me if you've got something =]

@speedingdeer

This comment has been minimized.

Copy link

speedingdeer commented Mar 4, 2015

Awesome! Many thanks!

@Xample

This comment has been minimized.

Copy link

Xample commented Apr 8, 2015

Is there a roadmap somewhere ? Trello ? A good idea would be to have a first version covering at least the same features as https://angular-ui.github.io/bootstrap/

@caitp

This comment has been minimized.

Copy link
Member

caitp commented Apr 8, 2015

@Xample there isn't currently, would you be interested in owning that?

@Darkeye9

This comment has been minimized.

Copy link

Darkeye9 commented Apr 8, 2015

I am very interested in collaborating. I've using Semantic + Angular for some months, and I'd have loved to have something like this.

@Semantic-Pusher-Robot

This comment has been minimized.

Copy link

Semantic-Pusher-Robot commented Apr 8, 2015

Plenty of room to take leadership if you are interested.

Not much has happened on angular integration since 1.0 launched.

On Wed, Apr 8, 2015 at 4:31 PM, ⭐caitp⭐ notifications@github.com wrote:

there isn't currently, would you be interested in owning that?


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

@Xample

This comment has been minimized.

Copy link

Xample commented Apr 9, 2015

@caitp it is interresting but I really do not have the ressources yet to do so, at least not at as a leading position. What is Semantic-UI-Angular expecting to build ? A directive based framework or replacing jQuery with angular ? @Darkeye9 how are you using semantic-ui ? There is definitely a lot of interest for the project, + 400 stars if we count the former version one.

@Darkeye9

This comment has been minimized.

Copy link

Darkeye9 commented Apr 9, 2015

@Xample I am writing the templates in HTML and including the Semantic stuff by hand, I ussually add some logic to Semantic using ng-class or ng-if attributes from Angular. For the JS components Im calling the Semantic constructors in the Angular controllers.

Where I have done the most hard work is at integrating the forms validation into Angular, by following some of the advices exposed here. But it needed some tinkering nevertheless.

If you are interested in seeing some of my results, I can email you the Dev. Server URL, as I dont want to disclosure it to the broad public.

@ethansure

This comment has been minimized.

Copy link

ethansure commented Apr 12, 2015

I like Semantic-ui!! I hope can contribute to this project.

@caitp

This comment has been minimized.

Copy link
Member

caitp commented Apr 12, 2015

@ethansure you absolutely can and should contribute. I'm a bit preoccupied with other projects atm, but I'm happy to review code and offer some guidance if needed. It would be great if some volunteers took up a strong roll in driving the project forward

@HackedByChinese

This comment has been minimized.

Copy link
Contributor

HackedByChinese commented Apr 15, 2015

I would like to dig into this. I think there needs to be a discussion about goals, scope, development guidelines, and some of the housekeeping stuff (organization, namespacing, conventions, etc.) because that stuff is harder to change once people start slamming in commits. If nothing else, I think we should borrow heavily from, or at least use as the baseline, ui-bootstrap because they've already established a decent working project.

@jlukic

This comment has been minimized.

Copy link
Member

jlukic commented Apr 15, 2015

Anything you guys need to help organize, let me know. Perhaps start with gitter?

@caitp

This comment has been minimized.

Copy link
Member

caitp commented Apr 15, 2015

I think there needs to be a discussion about goals, scope, development guidelines, and some of the housekeeping stuff (organization, namespacing, conventions, etc.)

Personal opinion, but whoever is able to take more time on this is welcome to disagree:

  1. scope: strong primitives which enable developers to build good looking, functional, accessible applications with ease. This means, provide good fundamentals, and make sure those fundamentals are easy to use, and accessible by default. More interesting stuff built ontop of those fundamentals are allowed also, but start with the fundamentals (form controls, layout/navigation helpers (like modal windows, tab controls, whatever you like), etc).
  2. development guidelines. this is mostly covered above, aim for accessibility, performance, and extensibility. Some more general API guidelines, prefer dictionaries of options to lists of formal parameters (it's easier on everyone). Try to avoid duplicated code as much as possible. Try to keep "hot" internal methods monomorphic, so that VMs can do a better job of optimizing them --- but avoid premature optimizations, always measure. This is basically the same general stuff you'd tell anybody on any software project, so hopefully none of it is too surprising.
  3. housekeeping stuff. There are some things that we probably want here. @jlukic can talk about their CLA strategy, if any --- other devops-y stuff like release schedules, code reviews, ownership, etc, should be discussed on gitter or irc, generally.
  4. organization. I mean, whatever makes sense --- since @m0t0r has already gotten started with this, it's fine to follow his lead. If it gets too crazy in a few months, don't hesitate to re-org, just make sure other contributors are on the same page, so that you don't step on anyones feet.
  5. namespacing. I'm not too keen on "namespacing", but I think @m0t0r has started prefixing things with "sm" (is that right?) --- whatever you want to do is fine, just try to be consistent.
  6. conventions. In terms of code style, my preferences are: linewrap at 100 cols, no single-letter variable names, concise but descriptive method names, 2 space indentation, no space bettwen "function" and "(" or function-name and "(", space before left-braces and all other left-parentheses, single-statement blocks (like if (foo) return bar;) are okay if the single statement is a return statement, otherwise always put them in braces (embrace them!) --- space before and after all binary operators, space before and after conditional ? and :, no space to the left of : for labels or property names... I think most of these rules are covered in some of the default jscs configs, but ymmv. If people have their own preferred styles, can certainly absorb some of it in, just try to keep the project consistent. clang-format is a big help, but might be too much to ask most people to do.

In terms of API conventions, I think a lot of this is covered above. If you're not sure about something in particular, don't hesitate to ask.

I think that covered all of those --- the answer is basically "whatever, but here's what I like", so for sure everyone interested is welcome to chime in and provide their own opinions.

@m0t0r

This comment has been minimized.

Copy link
Member

m0t0r commented Apr 15, 2015

Hi! @caitp made a good overview. What I can add is the project already has .jscsrc with established conventions based on the one from angularjs. Yes, I started prefixing directives with sm, that is correct.
@HackedByChinese mentioned about module naming. Well, particularly about .elements part I can tell that I took it from Semantic-UI itself, as they have a few categories such as: Elements, Collections, Views, etc. So I thought to be closer to the framework way. But we can discuss on this, absolutely.

As an additon, I try to keep angular material project as a baseline for this project, with all respect to ui-bootstrap project. But everything is open for discussion.

@mdgs

This comment has been minimized.

Copy link

mdgs commented May 13, 2015

Hi, I like the way semantic ui works and love to use the integrated version with angular. I want to contribute some code in this project if possible.

@caitp

This comment has been minimized.

Copy link
Member

caitp commented May 13, 2015

Hi @mdgs, it's totally possible, and you can totally do it, and we will even review it, check it in, and publish it on npm and bower. By all means, contribute =)

@m0t0r

This comment has been minimized.

Copy link
Member

m0t0r commented May 20, 2015

Do we still need this issue being open?

@stevenkampen

This comment has been minimized.

Copy link
Contributor

stevenkampen commented May 20, 2015

Maybe handy until the information in it is represented in the readme.

@RomainLanz

This comment has been minimized.

Copy link

RomainLanz commented May 22, 2015

Dear everyone,

I think that you should create a CONTRIBUTING.md file and put all of your guideline on it for all new contributors.

You can take a look at Contributing Guidelines from Github blog.

@AddoSolutions

This comment has been minimized.

Copy link

AddoSolutions commented Jun 11, 2015

For those that are interested, why not just start with something like this and then build on it?

  $.each($.site.settings.modules, function(index, module){

    var fn = $.fn[module];
    //var options = $.fn[module].settings;

    if(module == 'form' || module == 'api' || module == "state" || module=='visibility'){
      var name = 'se' + module.charAt(0).toUpperCase() + module.substring(1);
    }else{
      var name = module;//'se' + _(module).ucfirst();
    }

    app.directive(name, function() {
      return {
        restrict: 'AC',
        //require: 'ngModel',
        seModule: {
          'name': module,
          'fn': fn
          //'options': options
        },
        scope: {
          options: '&',
          ngModel: '='
        },
        controller: ['$scope', '$http', function($scope, $http) {

          //$scope.getTemp = function(city) {}

        }],
        link: function(scope, iElement, iAttrs, ctrl) {

          if(!scope.options){
            scope.options = {};
          }

          scope.options.directive = scope;

          scope.options.onChange = function(value, text){
            scope.ngModel=value;
            if(!scope.$$phase) scope.$apply();
          }

          $(iElement)[module](_.clone(scope.options));

        }
      }
    });

  })

This gives us full access to ALL of the modules in semantic as well as full access to all of the options. As we develop, we can create more advanced templates, but this is at least a good start.

@m0t0r

This comment has been minimized.

Copy link
Member

m0t0r commented Jun 11, 2015

@AddoSolutions thank you for your contribution, we may think about similar solution later on.
NOTE:
Use of

if(!scope.$$phase) scope.$apply();

is a known old anti-pattern. Don't use such things in your code.


Thank you everyone who contributed to this issue but I am closing it as it gets similar to a garbage bin. If you have any questions/problems/suggestions/ideas create a new issue or PR.

@m0t0r m0t0r closed this Jun 11, 2015

@AddoSolutions

This comment has been minimized.

Copy link

AddoSolutions commented Jun 12, 2015

@m0t0r Indeed, that was some ghetto code. Curious though, how I would get the scope.$apply() higher in the call stack?

@sheyooo

This comment has been minimized.

Copy link

sheyooo commented Mar 26, 2016

I think waiting or writing for angular 2 instead, wont be a waste of effort

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