heiseonline / shariff

👮 Shariff enables website users to share their favorite content without compromising their privacy.
http://ct.de/-2467514
MIT License
1.4k stars 177 forks source link

jquery als externe dependency #1

Closed xat closed 9 years ago

xat commented 9 years ago

Ich denke es macht mehr Sinn jQuery nicht mit in den build zu packen. Das blaeht die lib nur unnoetig auf (200KB unminimiert) und jQuery hat ohnehin fast jede Webseite schon eingebunden. D.h. die meisten haetten durch diese Lib jQuery dann doppelt eingebunden.

telepath commented 9 years ago

Wer shariff in eine Site mit jQuery einbaut, kann das ja entsprechend anpassen. jQuery wird nunmal benötigt, d.h. bei Seiten die noch keins haben müsste es manuell eingebunden werden. Manuell entfernen ist da einfacher. Und externes Einbinden wiederspräche dem Sinn der lib.

xat commented 9 years ago

das waere ung. so wie wenn jedes jquery plugin noch ne kopie von jquery ins plugin reinrechnen wuerde :) Vielleicht zumindest noch nen build mit dazu rausrechnen lassen welches kein jquery mit drinne hat? Die meisten werden sich mit Grunt nicht auskennen und daher nicht wissen wie man einen build ohne jquery erstellt.

MRuy commented 9 years ago

Der Meinung von xat bin ich ebenfalls. Wenn ihr einen build anbietet, dann aber beide varianten wobei die mit jQuery speziell markiert werden sollte im Dateinamen.

killphi commented 9 years ago

Kann man jQuery nicht auch als "Geschwister"-Dependency deklarieren, sodass für das Projekt jQuery neben shariff installiert wird, wenn man das via npm zieht? Siehe NPM API package.json

Wenn ich das richtig verstehe, würde das zumindest das Problem mit der doppelten jQuery-Installation lösen.

Viel interessanter fände ich jedoch bower Support; dazu mach ich gleich mal ein Ticket auf.

pmb0 commented 9 years ago

Hi, ein Build ohne enthaltenes jQuery ist eine gute Idee. Werde ich spätestens Montag nachliefern. Bower-Support sollte auch machbar sein.

xat commented 9 years ago

Vielleicht wuerde sich das module hier fuer die Umsetzung anbieten: https://github.com/thlorenz/browserify-shim

und dann mit

{
  "browserify-shim": 
  {
    "jquery": "global:jQuery"
  }
}
derhuerst commented 9 years ago

Wie sieht es mit ZeptoJS aus? Das ist eine deutlich leichtgewichtigere Bibliothek, deren API mit jQuery weitgehend kompatibel ist.

pmb0 commented 9 years ago

Hi,

jQuery ist ab jetzt nur noch in "shariff.complete.js" enthalten:

https://github.com/heiseonline/shariff/commit/7a049a9ce63b82515c06aeda527b053c167b53d8

Somit kann dieses Ticket wohl geschlossen werden.