From 7f8899530c31521184de08d79fb567c3bd05a1a5 Mon Sep 17 00:00:00 2001 From: Alex Wolfe Date: Sat, 28 Feb 2015 12:06:30 -0800 Subject: [PATCH] Features Page & Icons --- public/_data.json | 2 +- public/_includes/_head-include.jade | 2 +- public/features.jade | 103 +++- public/index.jade | 24 +- public/resources/css/base/_type.scss | 9 + public/resources/css/module/_code.scss | 3 +- public/resources/css/module/_cta-bar.scss | 1 - public/resources/css/module/_sticker.scss | 1 + .../css/vendor/icomoon/fonts/icomoon.eot | Bin 4476 -> 7076 bytes .../css/vendor/icomoon/fonts/icomoon.svg | 24 +- .../css/vendor/icomoon/fonts/icomoon.ttf | Bin 4312 -> 6912 bytes .../css/vendor/icomoon/fonts/icomoon.woff | Bin 4388 -> 6988 bytes .../css/vendor/icomoon/selection.json | 541 +++++++++++++++++- .../vendor/icomoon/{icons.css => style.css} | 102 +++- 14 files changed, 758 insertions(+), 54 deletions(-) rename public/resources/css/vendor/icomoon/{icons.css => style.css} (53%) diff --git a/public/_data.json b/public/_data.json index 8f39e45722..23073a1ce7 100644 --- a/public/_data.json +++ b/public/_data.json @@ -6,7 +6,7 @@ "features": { "title": "Features & Benefits", - "subtitle": "Production Grade Features" + "subtitle": "Powerful Features for Developing Apps" }, "contribute": { diff --git a/public/_includes/_head-include.jade b/public/_includes/_head-include.jade index 1cd994f2bf..e126d30459 100644 --- a/public/_includes/_head-include.jade +++ b/public/_includes/_head-include.jade @@ -1,4 +1,4 @@ link(rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/angular_material/0.7.1/angular-material.min.css") link(href='http://fonts.googleapis.com/css?family=Roboto:400,300,500,400italic,700' rel='stylesheet' type='text/css') -link(rel="stylesheet" href="/resources/css/vendor/icomoon/icons.css") +link(rel="stylesheet" href="/resources/css/vendor/icomoon/style.css") link(rel="stylesheet" href="/resources/css/main.css") \ No newline at end of file diff --git a/public/features.jade b/public/features.jade index 5ef7fbeca8..561f509ed9 100644 --- a/public/features.jade +++ b/public/features.jade @@ -1,23 +1,92 @@ -section(class="l-content-block" layout="row") - div(flex="20") + + +.grid-fluid.l-space-bottom-8 + .c3.text-center .sticker - div(flex="80") - h3.text-headline LIGHTWEIGHT & MOBILE READY - p.text-body High Life mustache bitters flannel paleo, Vice chia mumblecore tousled Williamsburg. Scenester whatever farm-to-table Kickstarter hella, lo-fi lumbersexual street art lomo swag Echo Park. High Life leggings tofu Intelligentsia bespoke, American Apparel selfies ennui. + .c7 + h3.text-headline.text-uppercase Mobile First + p.text-body Modular library design and mobile-specific routing keep things lean so users on low-bandwidth networks don't need to wait. First-class support for touch event gestures. Responsive, cross-device, material design UI components. Tuned for performance and low-memory usage on mobile platforms. -section(class="l-content-block" layout="row") - div(flex="20") - .sticker - div(flex="80") - h3.text-headline ADVANCED FILTERING - p.text-body High Life mustache bitters flannel paleo, Vice chia mumblecore tousled Williamsburg. Scenester whatever farm-to-table Kickstarter hella, lo-fi lumbersexual street art lomo swag Echo Park. High Life leggings tofu Intelligentsia bespoke, American Apparel selfies ennui. -section(class="l-content-block" layout="row") - div(flex="20") - .sticker - div(flex="80") - h3.text-headline INTERNATIONALIZATION (I18N & L10) - p.text-body High Life mustache bitters flannel paleo, Vice chia mumblecore tousled Williamsburg. Scenester whatever farm-to-table Kickstarter hella, lo-fi lumbersexual street art lomo swag Echo Park. High Life leggings tofu Intelligentsia bespoke, American Apparel selfies ennui. + +.grid-fluid.l-space-bottom-8 + .c3.text-center + .sticker + .c7 + h3.text-headline.text-uppercase Future Ready + p.text-body Angular 2 is written in written in ECMAScript 6, with the addition of TypeScript types and annotations. ES6 allows us to benefit from the best of JavaScript, while writing clean and easy-to-read code. + + + +.grid-fluid.l-space-bottom-8 + .c3.text-center + .sticker + .c7 + h3.text-headline.text-uppercase Flexible Development + p.text-body In addition to full support for ES6 and TypeScript, Angular 2 works equally well with today's ES5, Dart, CoffeeScript, and other languages that compile to JavaScript. The choice of language is up to you. + + + +.grid-fluid.l-space-bottom-8 + .c3.text-center + .sticker + .c7 + h3.text-headline.text-uppercase Speed & Performance + p.text-body Change detection is now 5x faster thanks to internal change detection tuned for top performance in modern JavaScript engines. If your application uses data structures that imply change guarantees (like immutables and observables), we will make use of them to help speed up your application. + + + +.grid-fluid.l-space-bottom-8 + .c3.text-center + .sticker + .c7 + h3.text-headline.text-uppercase Simple & Expressive + p.text-body Make your intention clear using natural, easy-to-write syntax. Reduce complexity for your team: new, structure-rich templates are readable and easy to understand at a glance. + + + +.grid-fluid.l-space-bottom-8 + .c3.text-center + .sticker + .c7 + h3.text-headline.text-uppercase Comprehensive Routing + p.text-body Design sophisticated views: map URL paths to application components, use advanced features like nested and sibling routes. Support for card stack navigation, animated transitions, and lazy loading for mobile users. Easy migration from routing in prior versions of Angular. + + + +.grid-fluid.l-space-bottom-8 + .c3.text-center + .sticker + .c7 + h3.text-headline.text-uppercase Animations + p.text-body Directly tap into to low-level animation support on mobile and desktop environments with easy-to-use Angular events. Make use of CSS, JavaScript, and the Web Animations API to intelligently handle changes to animations in response to user events. Plan complex animation flows by sequencing the behavior of an entire website on a timeline. + + + +.grid-fluid.l-space-bottom-8 + .c3.text-center + .sticker + .c7 + h3.text-headline.text-uppercase Hierarchical Dependency Injection + p.text-body Angular 2 ships with powerful, yet simple-to-use dependency injection, allowing you to maintain modular applications without writing tedious glue code. Dependency injection aids you when writing tests, by making it easy to inject test doubles. + + + +.grid-fluid.l-space-bottom-8 + .c3.text-center + .sticker + .c7 + h3.text-headline.text-uppercase Support for Web Components + p.text-body Angular 2 plays nicely with web components built using other libraries (Polymer, X-Tag and others), allowing you to pass data into them as easily as into Angular-native components. Angular components use web standards (e.g. shadow DOM and the HTML5 template tag) in browsers that support them. + + + +.grid-fluid.l-space-bottom-8 + .c3.text-center + .sticker + .c7 + h3.text-headline.text-uppercase Internationalization (I18N) & Accessibility + p.text-body Reach all your users. Use familiar ICU message format in Angular interpolation syntax ({{ }}), including pluralization and gender rules. Automate message extraction, pseudolocalization, and translation updates. Generate static applications for each locale. Easily promote accessibility via screen readers and assistive devices by automatically generating appropriate ARIA attributes. diff --git a/public/index.jade b/public/index.jade index acb2b842be..4122280306 100644 --- a/public/index.jade +++ b/public/index.jade @@ -1,24 +1,24 @@ -.grid-fluid.l-space-bottom-6 - .c8 +.grid-fluid.l-space-bottom-8 + .c7 h3.text-headline Build Incredible Applications p.text-body Angular is a development platform for creating applications using modern web standards. Angular includes a wealth of essential features such as mobile gestures, animations, filtering, routing, data binding, security, internationalization, and beautiful UI components. It's extremely modular, lightweight, and easy to learn. - .c4.text-center + .c5.text-center img(src="/resources/images/logos/html5/html5.png") -.grid-fluid.l-space-bottom-6 +.grid-fluid.l-space-bottom-8 .c7 h3.text-headline Start Quick, Build Fast - p.text-body Express your ideas with clean, understandable code. Angular is simple to build on, easy to change, and friendly to the way UX designers work. Create a UI that is beautiful by default, with material design and support for web components. + p.text-body Express your ideas with clean, understandable code. Angular is simple to build on, easy to change, and friendly to the way UX designers work. Create a UI that is beautiful by default, with material design and support for web components. Angular takes just minutes to learn. .c5 p(data-height="224" data-theme-id="12714" data-slug-hash="pvKKQa" data-default-tab="html" data-user="alexwolfe" class='codepen') script(async src="//assets.codepen.io/assets/embed/ei.js") -.grid-fluid.l-space-bottom-6 - .c8 +.grid-fluid.l-space-bottom-8 + .c7 h3.text-headline Open Source & MIT Licensed - p.text-body Angular is built by you, for you. Our community shapes Angular's direction: core contributions come from big companies and small ones, from students and independent experts. We do our work in the open so that you can help Angular improve, or extend and modify what we've built. - .c4.text-center + p.text-body Angular is built by you, for you. Our community shapes Angular's direction: core contributions come from big companies and small ones, from students and independent experts. We do our work in the open so that you can help Angular improve, or extend and modify what we've built. + .c5.text-center img(src="/resources/images/logos/license/mit.png") @@ -26,7 +26,5 @@ .grid-fluid.text-center .c8.a2.b2 h3.text-headline Loved by Millions of Developers - p.text-body But don’t take our word for it. Ramp up in minutes, and build an app today. - - -!= partial("/_includes/_cta-bar") \ No newline at end of file + p.text-body Join millions of devs who use Angular. Ramp up in minutes, and build an app today. + != partial("/_includes/_cta-bar") \ No newline at end of file diff --git a/public/resources/css/base/_type.scss b/public/resources/css/base/_type.scss index 9f0898816d..31476f3e46 100644 --- a/public/resources/css/base/_type.scss +++ b/public/resources/css/base/_type.scss @@ -10,10 +10,19 @@ body { color: $platinum; } +a { + color: $blueberry; +} + .text-center { text-align: center; } +.text-uppercase { + text-transform: uppercase; +} + + .text-display-4 { margin: 0px 0px ($unit * 2) 0px; font-size: 112px; diff --git a/public/resources/css/module/_code.scss b/public/resources/css/module/_code.scss index 10d1406516..e9c1d9014e 100644 --- a/public/resources/css/module/_code.scss +++ b/public/resources/css/module/_code.scss @@ -1,4 +1,3 @@ -.cp_embed { - border-radius: 4px; +.cp_embed_iframe { overflow: hidden; } \ No newline at end of file diff --git a/public/resources/css/module/_cta-bar.scss b/public/resources/css/module/_cta-bar.scss index 3fb49886d1..d029fdd8c4 100644 --- a/public/resources/css/module/_cta-bar.scss +++ b/public/resources/css/module/_cta-bar.scss @@ -6,7 +6,6 @@ .cta-bar { text-align: center; - padding-top: ($unit * 8); .button { margin: 0px ($unit * 1); diff --git a/public/resources/css/module/_sticker.scss b/public/resources/css/module/_sticker.scss index a6d993d457..2507e080f3 100644 --- a/public/resources/css/module/_sticker.scss +++ b/public/resources/css/module/_sticker.scss @@ -9,6 +9,7 @@ border-radius: 1000px; text-align: center; background: $mist; + margin: ($unit * 2) auto; .sticker-icon { position: absolute; diff --git a/public/resources/css/vendor/icomoon/fonts/icomoon.eot b/public/resources/css/vendor/icomoon/fonts/icomoon.eot index 3a23e79a580433aa3ac73d0678bcdc395900a23d..33449bcbfe40ffae9570592e4956718b01e759bd 100755 GIT binary patch delta 2966 zcmZWre{2)?6@Tw8v16b~ZRcW~&@|4)G2zxgeK<~q69Q2?qyPoRT|?EDB$N^=GN^!w zjcLABRbdm8+NDgZingjnX!5DrA57EK^$%BNQ!7=QhUV;_c8ywXXz8@6OzR(0{PjNX z90#V|>HF(_f8BfU^FHsEd#~n0SG$O)>*df;)0)Jd;g`o=DE{-^HwKA#1LP-;O`kr6 z_FjxHqHQ^L;+xMrwQ~wxeu=2#iP@vmPlq1(>;t02-ys~Dg`nk)rhgHw@58uncJ9o% zUsLo?81KUP{SzmTOuz7p@3a#oaV9-8H+}9DjZhKea~Su0eR?i=^s(f%e?ahKT=MX# zlc&#+jw$L~oPUDPZ=Xarh7Zz7Bc`6eZe05A()X5ru=K-PwN{gLkkOKNmyBzlbv7Aq z8P|+Aji1ins~Oi#?RSx)Mjnyw=?<-(D&-@-0?%2OrS$Ri6%S`?@IupUUVs(6~?X8WpsU=aW4lmsU z^-a#iO+Ah?bvv$GzWVvevR^LyykAr_-6Gf;MhFLGBiQ6y*%xOkbs}&4uMp=Y@1rJlb z)K*#!{H_)Pi;LBzY`QZd+|V%pI@(6NfDB5vci6D|)?&XYet=%xx?sZW9n=85d?L?A zDbH^ZvQf(YgJb`+9B_)Su0VHg*(d zFYSBu((yv!_@zfJwvw@EG8v5}6%`xZN?nqSX|8{uW$WIf!*YV0l$-9qRe(Rc#`jKc z-gjxXP(N&TM0t%pa<}vWG%@RC%|~p6iSiMK;Uetwv+76eN$oQXq_9w-WeIus-2rfX z07rb@N%s>-gX{QQfhRO)+c0x1k(e@bwvm&b?o{2rY_?A;NnLeIB`ztKOH8Gp)hTN# z3RWO`mG8QUTs$Qga0@=R=;#hE4pAGf1g7$d=m1Ai+tG~X%$y(j){MfYnfKjKb(%R} zI6otfo%uk$!^b|AP}Hb`(83FS<&1C;j2Q-G%tRhs;d`#0Q#!JmS2yrQi-5{ z6Zy59_=s-1n!%IHs72A{^5Lt?Fb_hEG{7=73|>hvG?8^ zxp;Bp77BX2Nx7I}7{}Faxgv;glJPo>aX-8t5HE51zUg# zQ_-ZPtDiRocTZ_Bx%z{MUcy$+GqjX>W>4*(x_ z(LhW~fl_g)Y$I%kWtbO<0WS+z8A0W^7VPMuvaCIOyxqIK1dtr_xKjH-Lec$ZP~8a99x7qEP*|hMD`&>X&s>>owAS{yeS=NSA7;%WXChzO0Ez;eN0UfD zoA*9+|CRxm>hzV#L$ArU*A7iyIXzz0TedxZW@kJT`_MA8Upvv+>&22zGKQ2Ki*G-0 zBscyI{J=!Wt5uNtya3VbSFx8RWYY91?9y<|HqOEC#hfs5+OT23I`hk-ApZmajl#C3 zp?N?8u!YNfJZ4t&(N!Q8c7qvAB6H$rKm+tjk};hice)7F<&y3%1C!!f*Hu`m;Bql8 z=yQdU>RAb2*hob|0z!f>)j)0U!oO*4lY9^TA@TcbciLJRT9+|y2_jD>7`80eAPc^q znifU!KTmdkSKATC!+D6*ph(|9F;NhUBx7l1UfRk^+t?#5q1?US$9+BXKWiJ`*4kWX zKG^(X^R?!WLb1?`q1Qtng;cmZ{B-!G@XeM`OSa`o%a@Vek!K^XME3$O-X LnZ5p>w&(f31?kOp delta 452 zcmY+7O-lk%6o%hBeq>*MqyuTQ(98l`Mg>viMrzq2r%h3l`4MCZMHCf@w8({^`4^;M zT-qWiQ2GZhf)?2(2$6_3Q44iCQ;X_exQFLC@3|*G-ssmKT7Y|VRzIdq8d1vnPLA(( zD-nPR0M;VXcATo2I6>7A+1L-SKVE+jp8{RwXh>Sq`NKpTClz#mpby+TMYNS}5Jk6f5Xj}U`#HX zCg0JiRoA0p&Ak0qrA&Lu#0GGxrNcl*DFZ)wddd7dLhhwEn7gq1?0Vg$uBKn1u9^{W RgpThdm&^89i_?w}`vMHqaDD&) diff --git a/public/resources/css/vendor/icomoon/fonts/icomoon.svg b/public/resources/css/vendor/icomoon/fonts/icomoon.svg index 79fc1e4d09..f5363a8a70 100755 --- a/public/resources/css/vendor/icomoon/fonts/icomoon.svg +++ b/public/resources/css/vendor/icomoon/fonts/icomoon.svg @@ -27,7 +27,29 @@ - + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/resources/css/vendor/icomoon/fonts/icomoon.ttf b/public/resources/css/vendor/icomoon/fonts/icomoon.ttf index 37288034c98d73abae4088f8c87894fb5930f6b2..0843cea0de23100001f6d00b497cfce9540f4766 100755 GIT binary patch delta 2974 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 Zzgi7shNraXTZG>?JWBXG`n$E0;(rXY(gy$l delta 472 zcmX?OwnRy!+~3WOfsp|S1XUQgLA1b)$%fJr6LsY4Q-Hjbt7R9{(-Vse7#JAO0QnqH zERdd4nFbWQ!oa|D0E9E|?f#yTnh4axHwCE141`%-(_%A#f