# ფაილების სახელების კონვენცია

* ჰუკების ფაილები უნდა იწყებოდეს use-ით და უნდა იყოს .ts/.js ექსტენშენი, გამონაკლის შემთხვევებში დასაშვებია .jsx/.tsx ექსტენშენი თუ ჰუკის ფაილში გამოყიენება jsx, რაც იშვიათია მაგრამ ხდება
* კომპონენტის ფაილის სახელი უნდა იყოს PascalCase-ში და სულ უნდა ემთხვედოეს ფაილიდან დაექსპორტებულ დეფოლტ კომპონენეტს
* კოფინგის ფაილები უნდა იყოს camelCase-ში
* context-ის ფაილი უნდა იყოს camelCase-ში და უნდა ემთხვოდეს კონტექსტის სახელს
* თუ რედაქს ვიყენებთ მაშინ slice-ის ფაილის სახელი უნდა ემთხვოდეს slice-ს
* სურათის, ფონიტს, ვიდეოს, ხმის ჩანწაერის და ასე შემდეგ. ფაილის სახელი უნდა იწერებოდეს kebasb-case-ში, (მაგ pear-smilling.svg)
* utility/helper ფაილები უდნა იწერებოდეს camelCase-ში
* რიცხვებს უნდა მოვერიდოთ ფაილების სახელში მაგრამ თუ აურიდებელია მაშინ არაუშავს, აურიდებელი ქეისი იგულსიხმება როცა ცნობილი კონვენცია არის და დარღვევა არ გსურთ, მაგალითად e2e.ts ფაილის შექმნა შეიძლება მაგრამ HighlightWith3Columns არ შეიძლება (და არა მარრტო იმის გამო რაოდენობაზე არ უნდა იყოს დალოკილი კომპონენტი)
* ტესტების/spec  ფაილებისთვის ჯობია გაყვეთ თქვენ მიერ არჩეული სატესტო ფრეიმვორკის კონვენციას, თუ არ აქვს kebeb-case.cy.{js,.ts} ჯობია გამოიყენეოთ
* თუ barrel-ებს ვიყენებთ  მაშინ აუცულებად index ფაილი უნდა გამოიყენოთ
* თუ რამე კონფიგურაცია არსებობს რომელიც არ გვინდა რომ გითზე ავიტანოთ მაშინ მაგის ეკვივალენტი ფაილი (მაგალითი) რომელიც შეიძლება ავიტანოთ უნდა იყოს დასრულებული .example-ით (მაგ. .env.example)
* რიმდი ფაილის სახელი უნდა იყოს README.md
* ტიპების ფაილი უნდა იყოს camelCase-ში
* ტიპების მოდულის ფაილი უნდა იყოს camelCase-ში, ტიპების მოდული არის (.d.ts) ფაილიw
* სქემების ფაილი უნდა იყოს PascalCase-ში, სქემებსი იგულისხმება yup/zod-ის სქემები

