Gelişimi yönlendirmek için bir yaşam tarzı rehberi (LSG) kullanmak, çok popülerlik kazandıran bir uygulamadır çünkü kod verimliliği ve UI tutarlılığı dahil birçok avantajı vardır. Ama nasıl bir tane oluşturabilirsin? Ne eklemelisiniz? Nereden başlıyorsun? Bu derste, bir yaşam stili yaratmanın en cesur ayrıntılarını inceliyorum. DocumentCSS .

Yaşam Tarzı Kılavuzlarının Güzelliği

Standart bir stil kılavuzuna benzer şekilde, bir yaşam stili rehberi, bir uygulama için stillerin kullanımı ve oluşturulması için bir dizi standart sağlar. Standart bir stil kılavuzu olması durumunda amaç, markaların birbirine bağlılığını korumak ve grafiklerin ve tasarım öğelerinin yanlış kullanımının önlenmesidir. Aynı şekilde LSG'ler bir uygulamadaki tutarlılığı korumak ve uygulamalarını yönlendirmek için kullanılır. Ancak, bir LSG'yi farklı ve daha güçlü kılan, bilgisinin çoğunun kaynak koddan gelmesidir, bu da bir uygulamanın gelişen durumunu yansıtmayı kolay ve verimli kılar.

1-giphy-Kramer

Bugün bile, stil rehberinizi oluşturmak için uygulamanızın kaynak kodunu kullanabileceğinizi öğrenmek ümit ediyor.

Aşağıdaki örneklere bakarsanız, bir LSG'nin ortak paydasını göreceksiniz:

  • Belgelenen öğelerin listesi
  • Kod parçacıkları ve etkileşimli UI gösterileri ile özlü belgeler
2-örnek-yalnız-planet

Lonely Planet Style Kılavuzu

3-örneğin satış gücü

Satış Gücü Stili Kılavuzu

LSG'nin bir diğer önemli unsuru, işlemi otomatikleştirmek için bir stil kılavuzu jeneratörü kullanabilmenizdir. Bir stil kılavuzu oluşturucusu, uygulama kaynak kodunuzu LSG belgelerinizin büyük bir kısmını beslemek ve kodunuzda yapılan değişiklikleri izlemek için uygular ve uygulamada yaptığınız değişiklikler sonucunda stil kılavuz belgelerinizi güncellemeye dikkat eder.

Stil Kılavuzu Jeneratörler

Belge oluşturmak istediğiniz kod diline veya proje kurulumunuza bağlı olarak seçim yapabileceğiniz birçok lezzet vardır. Seçenekler için bakabileceğiniz bazı yerler:

Bu eğitim için, LSG'nizi oluşturmak için DocumentCSS'i nasıl kullanabileceğinizi göstereceğim. Bitovi tarafından oluşturulan bu araç açık kaynak kodludur ve CSS'yi belgelemek için herhangi bir projede kullanılabilir (Daha az ve SASS gibi ön işlemciler de desteklenir). Javascript ve diğer dilleri belgelemekle ilgileniyorsanız, bu araç DocumentJS'in bir alt kümesi olduğundan, bunu DocumentCSS ile kolayca yapabilirsiniz. Bu derste bu bölümü ele almayacağım, ama akılda tutmak güzel.

Stil Kılavuzunuzu Planlama

LSG'nizi oluşturmaya başlamadan önce, ilk adım içinde ne olacağını planlamaktır. İyi bir web sitesi gibi, iyi yapılandırılmış bir Bilgi Mimarisi (IE) de anahtardır.

Bu yüzden, örnek uygulamanızın “Vintage Shop” adlı aşağıdaki örnek tasarımlarını kullanarak başlayalım ve kullanıcı arayüzündeki kalıcı öğeleri gözlemleyelim:

5-vintage dükkanı-maket

Vintage Dükkanı Mockups

Bu noktada navigasyon, araba ya da form gibi daha büyük eleman gruplarıyla başlamanızı tavsiye ederim. Örneğin, tasarımımızı şu üç gruba ayıracağız: adımlar göstergesi, mini araba ve sepetteki ürünler:

6-eski-alışveriş elemanları

Bu daha büyük eleman grupları ile daha fazla ayrıntıya girmeye ve devam eden “stilleri” tanımlamaya başlayabilirsiniz. Örneğin, genel olarak tipografi ve daha özel olarak başlıklar, alt başlıklar ve normal metinler arasındaki bağlantılar için bir sözleşme vardır. Düğmelerin rengi de sayfalar boyunca devam eder.

7-vintage dükkanı-stilleri

Hepsini bir araya getirerek, bu grupları bir diyagram kullanarak yazalım:

8-diyagramı tarzı kılavuzu-1

Bu gruplara daha derin bir bakış atmak için onları ince ayarlayabilir ve stil rehberinizde büyüdükçe kullanabileceğiniz kategorilere dönüştürebilirsiniz. Örneğin:

  • “Elementler”, herhangi bir HTML öğesine başvurabilecek çok belirsiz bir terimdir, bu nedenle bu grup için daha iyi bir isim “Bileşenler” veya “Modüller” olabilir. Bunlar hala geniş terimlerdir, ancak kapsayacak unsurların türünde daha spesifiktir.
  • “Birincili vs İkincil” düğmeleri “Temel Unsurlar” ın parçası olabilir ve renk yönü “Renk Paleti” kategorisine girebilir.

Ayrıca, stil rehberiniz hakkında daha genel bilgiler içerebilecek bir kategori hakkında düşünebilirsiniz. Bunun iyi bir örneği, uygulamanızı tasarlarken ve uyguladığınızda göz önünde bulundurulması gereken, markanızla ilgili kurallar ekleyebileceğiniz stil rehberine veya “Markalama” bölümüne nasıl katkıda bulunabileceğinizi açıklayabileceğiniz bir “Kılavuzlar” bölümü olabilir.

Bunu akılda tutarak, şemanın şöyle görüneceği yer:

9-diyagramı tarzı kılavuzu-2

Bu diyagramın, yaşam stili rehberinizi oluştururken temel olarak bir plan olarak kullanmak istediğiniz şey olan bir site haritasının şeklini nasıl gördüğünü görebilirsiniz.

Şimdi, tasarımlara dalın ve kendi site haritanızı çizin. Gelecek için yararlı olacağını düşündüğünüz birçok kategori dahil. Diğer stil rehberlerinden fikir edinebilirsiniz ( styleguides.io/examples harika bir kaynaktır). İşiniz bittiğinde, bu daha kapsamlı sürümü kontrol edin ve karşılaştırın.

Yaşam Tarzı Kılavuzunda Sayfa Oluşturma

LSG belgelerinizin büyük kısmı kaynak koduna eklediğiniz özel yorumlardan gelmekle birlikte, kodla ilgili olmayan diğer içerik türlerini barındırabileceğiniz bağımsız sayfalar da oluşturabilirsiniz (tasarım ilkelerini, erişilebilirlik yönergelerini düşünün, veya istek kurallarını çekin). Bu, belgelerinizi tek bir yerde merkezileştirme avantajı sağlar: uygulamanızın yaşam tarzı rehberi.

Yaşam tarzı rehberini uygulamanızın “oyun kuralları” olarak düşünebilirsiniz. “Kurallar” ın içinde, oyunun “nasıl oynanacağına” dair gerekli tüm bilgiler yer alır: Yapı blokları ve yeni bloklar oluşturma ve yaratma kuralları. Ekibinizin diğer üyelerinin buna nasıl katkıda bulunabileceğini ve bunu yaşayan bir belge olarak sürdürmeye yardımcı olarak dahil etmek.

1-giphy

Yas! Buna inan. Tüm dokümanlarınızı tek bir yerde birleştirebilirsiniz!

Bunu düşünerek, bu eğitim için kullanacağımız örnek uygulamayı yükleyerek başlayalım.

Örnek Uygulamanın Kurulması

Yükleme işleminin 3 adımı vardır:

1. Düğümün Kurulması

Önce, sahip olduğunuzdan emin olun. düğüm Kurulmuş. En az 6. sürümüne ihtiyacınız olacak.

2. Uygulamanın Kurulması

Ardından, bu zip dosyasını indirin: sgdd-tutorial.zip Masaüstünüze ve unzip . Başka bir konum yükleme komutlarını kırdığı için bu önemlidir.

Ardından terminali açın ve aşağıdaki komutu girin:

cd ~/Desktop/vintage-shop-sgdd-tutorial && npm install

Uygulamanın ve bağımlılıklarının yüklenmesi birkaç saniye sürecektir.

3. App Koşu

Yükleme tamamlandığında, aşağıdaki komutları girin:

  1. npm run develop
  2. Yeni bir sekmede şunu girin: npm run document

Şimdi, şunu kıralım:

npm run develop

Uygulamanızı çalışırken görebileceğiniz bir sunucu başlatır: 8080: http://localhost. Terminalde göreceksiniz:

2-terminal sunucu yürütülmesini

Ve tarayıcıda:

3-app-ev
npm run document

Yaşayan stil kılavuzunu oluşturur. http://localhost: 8080 / Stil Kılavuzu. Bayrağı ekleyebilirsiniz -- -w Kodunuzdaki değişiklikleri izlemek için bu komuta ve ardından aşağıdaki gibi yaşayan stil kılavuzunda bir güncelleme oluşturun:

npm run document -- -w

Görmeniz gereken tarayıcıya geçiş:

4-style-rehber-karşılama

Oluşturulan yaşam tarzı kılavuzu kullanır DocumentCSS , o zaman bu nasıl çalıştığına bir bakalım.

DocumentCSS nasıl çalışır?

DocumentCSS bir statik site üretecidir. Bu, kodunuzda özel olarak biçimlendirilmiş yorumlar arar ve statik bir web sitesi oluşturur. Bu siteye “statik” denir çünkü bir komut (bu durumda bir komut) değişmeden kalır. documentjs ) tekrar çalıştırılır. Bu iş akışı, stil sayfalarınızdaki değişikliklerin Yaşam Tarzı Kılavuzu statik sitelerinde de değişiklikler yaptığı için bir yaşam stili kılavuzu oluşturmak için iyi bir şekilde çalışır.

Bir yaşam tarzı rehberi oluşturmak için DocumentCSS şunları yapar:

  • Yapılandırmasında belirtilen dosyalar aracılığıyla okur (bu .less ve .md Dosyalar)
  • Özel "etiketleri" kullanan yorumlara bakar (örneğin @page , @stylesheet veya @styles .
  • Html dosyaları oluşturur ve siteyi oluşturmak için onları bağlar.
6-style-rehber-jeneratör

Bunu akılda tutarak, LSG'de yeni bir sayfa oluşturmak için DocumentCSS kullanmaya başlayalım.

Sayfa Yaratmak

Başlamak için önce kod editörünüzdeki örnek uygulamayı açın. Aşağıdaki dosya yapısını görmelisiniz:

7-Proje-içindekiler

Src'ye aşağı inin ve bul base/markdown . Burada stil kılavuzunda zaten mevcut olan sayfaları bulacaksınız. Yeni bir işaretleme dosyası oluşturun ve “about” olarak adlandırın (uzantıyla birlikte) .md ). Dosya yapınız şu şekilde görünmelidir:

8-Proje-içerikleri-yaklaşık

Bu yeni dosyanın içinde etiketi ekleyin @page iki dizeyle takip etti:

@page about about

Şimdi şunu kıralım:

@page

Etiket @page dosyayı bir sayfa olarak bildirir ve DocumentCSS'e bu dosyadaki bilgilerin stil kılavuzunda bir sayfa olarak gösterilmesi gerektiğini bildirir. Bu, dokümantasyonunuzdaki stil sayfalarından, javascript veya diğer dosya türlerinden ayırt etmeye yarar.

about

Bu, sayfanın benzersiz adıdır ve diğer etiketlere referans olarak kullanılır. Bu yüzden, sayfanın URL'si olarak kullanılacak şekilde kısa, küçük harf ve basit tutun. Örneğimiz için yeni sayfamızın URL'si şöyle olacaktır: http://localhost: 8080 / Stil Kılavuzu / about.html

About

Bu, oluşturulan sitede görüntüleme amacıyla kullanılacak sayfanın adıdır. Burada boşluklarla veya başka karakterlerle birden fazla sözcük kullanabilirsiniz.

Yeni oluşturulan sayfa çalışması belgelerini tekrar terminalde görüntülemek için (değişiklikleri izlemek zorunda kalmazsanız) http://localhost: 8080 / Stil Kılavuzu / about.html yeni sayfayı görmek için

9-style-rehber-ilgili-1

Bir sonraki adım sayfanızı navigasyona eklemektir. Bunun için dosyanıza aşağıdaki gibi ikinci bir satır ekleyin:

@page about About@parent index

Etiket @parent belgeniz için bir ebeveyn belirtmenize izin verir. Bu durumda, "Hakkında" sayfasının ana bölüm altında gösterilmesini istiyoruz. Artık dokümanlar üzerinde yeniden çalışabilir ve sayfanın "Hoş Geldiniz" bağlantısının altında göründüğünü görebilirsiniz:

10-style-rehber-yaklaşık-2

"Hoş Geldiniz" bağlantısını tıklarsanız, başlangıç ​​sayfasına erişebilirsiniz:

11-style-rehber-yaklaşık-3

Şimdi, bu sayfaya işaretleme veya html kullanarak içerik eklemekte fayda var. Egzersizi bitirmek için, aşağıdaki kukla içeriği ekleyelim:

@page about About@parent index## Hello World!This is the first page of my style guide. Here I can add any type of content that shouldn’t live with the code. Like who are the main contributors of the style guide or contact info.For example here's an animated gif inside of an `iframe`:

Ve işte çıktı:

12-style-rehber-yaklaşık-4

Yaşam Tarzı Kılavuzunda bir Stil Sayfası Belgeleme

Bir LSG oluşturmanın kalbi, belgelerinizi ait olduğu yere doğru yerleştirebilmektir: kaynak kodunda. Şansınız, zaten kodunuzu belgelemenizdir. Bu, bu yorumları organize bir siteye dönüştürebilecek bir stil kılavuzu üreteci kullanarak bir sonraki seviyeye taşımak için harika bir fırsattır, başkalarının (ve gelecekten gelen) nedenini bilmesini sağlar. kodda ne yapıldı.

1-giphy-back-to-the-gelecek

Geçmişte yazdığınız dokümanlar okuduktan sonra gelecekten kendiniz.

Stil Sayfasını Belgelemek

Bir stil sayfasını belgelemek, bir sayfayı belgelemek Ancak bu durumda, belgeler kodun hemen yanında bir yorumun içine girecektir (bu güzellik!).

Başlamak için stil sayfasını açın: buttons-custom.less .

2-düğme-özel

Bu dosyanın içinde ve bir yorum bloğu içinde, etiketi ekleyin @stylesheet iki dizeyle takip etti:

/**@stylesheet buttons.less Buttons*/

Doküman yorumunun, ile başlaması gerektiğine dikkat edin. /** ayrıştırıcı için (bu durumda JSDoc ) tanımak.

Şimdi şunu kıralım:

@stylesheet

Etiket @stylesheet dosyayı bir stil sayfası olarak bildirir ve söyler DocumentCSS Bu dosyadaki bilgilerin stil kılavuzunda böyle gösterilmesi gerektiği. Bu, diğerlerinin yanı sıra sayfaları, bileşenleri ve modelleri gibi diğer belge türlerinden ayırt etmeye hizmet eder ( Belge türlerinin tam listesi hakkında buradan bilgi edinin ).

buttons.less

Bu, stil sayfasının benzersiz adıdır ve diğer etiketlere referans olarak kullanılır. Herhangi bir ad türünü kullanabilmeniz için, bu belgeyi referans alırken dosyanın bulunmasına yardımcı olacağından, stil sayfası dosyasının adını kullanmanızı öneririm. Bunun, belgenizin URL'sini etkileyeceğini unutmayın. Bu örnek için url: http://localhost: 8080 / Stil Kılavuzu / buttons.less.html

Buttons

Benzer sayfa oluşturuluyor Bu, oluşturulan sitede görüntüleme amacıyla kullanılacak stil sayfasının başlığıdır. Burada boşluklarla veya başka karakterlerle birden fazla sözcük kullanabilirsiniz.

Yeni oluşturulmuş sayfayı görüntülemek için, değişiklikleri izlemek istemediğiniz sürece aşağıdaki komutu çalıştırın:

documentjs

Ve sonra git http://localhost: 8080 / Stil Kılavuzu / buttons.less.html yeni sayfayı görmek için

3-style-rehber-düğmeleri-1

Şimdi, bu yeni dokümanı navigasyonumuza ekleyelim. Bunun için sayfayı kullanarak oluşturduğumuz aynı kuralı takip edeceğiz. @parent etiket:

/*** @stylesheet buttons.less Buttons* @parent styles.base*/

Bu durumda ekledik. .base Bu sayfayı belirtmek için kenar çubuğunda gösterilen “Baseline” grubunun altında yer almalısınız (ayrıca, altnınızda grup oluşturabilirsin! Bunu birazdan gireceğiz).

Dokümanların yeniden çalıştırılması ve sayfanın yenilenmesi şu şekilde görünmelidir:

4-style-rehber-düğmeleri-2

Şimdi etli kısmı için! Bizim sayfamız ile birkaç şey yapabiliriz:

  • Doküman için genel bir açıklama ekleyebiliriz
  • Hem markdown hem de düz HTML kullanarak her türlü içeriği ekleyebiliriz.
  • En iyisi, kodumuz için demolar ekleyebilir miyiz?

Düğmelerimiz için hızlı bir açıklama ve demo ekleyelim

/*** @stylesheet buttons.less Buttons* @parent styles.base* @description* Global style definitions for all button elements.* @iframe src/base/bootstrap-custom/buttons/buttons-custom.html*/

Dokümanları tekrar çalıştırın ve?:

5-style-rehber-düğmeleri-3

Gördüğünüz gibi @iframe etiketi, dokümanınıza demo içeren iframe eklemenize olanak tanır. Bu demo, çalışma zamanında uygulamanızın CSS'sini içe aktaran bir komut dosyası etiketiyle gerçekten basit bir html dosyasıdır.

Demoyu açalım buttons-custom.html  :

6-düğmeleri-demo

Ve kodun nasıl göründüğünü görün:

<script src="/node_modules/steal/steal.js" main="can/view/autorender/"><import "vintage-shop/styles.less";script> <a class="btn btn-default" href="#" role="button">Linka><button class="btn btn-default" type="submit">Buttonbutton><input class="btn btn-default" type="button" value="Input"><input class="btn btn-default" type="submit" value="Submit"><hr /><button type="button" class="btn btn-default">Defaultbutton><button type="button" class="btn btn-primary btn-checkout">Primarybutton><button type="button" class="btn btn-success">Successbutton><button type="button" class="btn btn-info">Infobutton><button type="button" class="btn btn-warning">Warningbutton><button type="button" class="btn btn-danger">Dangerbutton><button type="button" class="btn btn-link">Linkbutton>

Bu dosyada gerekli olan tek şey, bu uygulamada oluşturduğunuz herhangi bir demo için aynı olması gereken komut dosyası etiketidir. Kodun geri kalanı, demoda göstermek istediğiniz stillerle işaretlenir.

Ek olarak etiketi kullanabilirsiniz @demo Ayrıca kullanılan kod snippet'ini göstermek için. Bunun gibi:

/*** @stylesheet buttons.less Buttons* @parent styles.base** @description* Global style definitions for all button elements.* @demo src/base/bootstrap-custom/buttons/buttons-custom.html*/

Böyle çıkacak olan:

7-style-rehber-düğmeleri-4

Demos kredisi geçer Önyükleme Belgeleri Kodu çektiğimiz yer.

Şimdi, muz ile bunun üzerine gitmeden önce, avantajlarından yararlanabileceğiniz birkaç tane daha güzellik var:

  • Stil Bölümleri Oluşturma
  • Stil Sayfası Grupları Oluşturma

Stil Bölümleri Oluşturma

Bir stil bölümü oluşturmak için etiketi kullanabilirsiniz @styles . Bu etiket tatlıdır çünkü stil sayfanızın dokümanı hakkında konuşabileceğiniz ve daha iyi anlayabileceğiniz hassas parçalara ayırmanıza olanak tanır.

Örneğin, örneğimizde, kullanılan işaretlemeden bağımsız olarak, genel olarak düğmeleri tanımlamak için stillerimiz vardır.