npm package: @haydar_rs4it/prettier-config
Description: DataTime organization Prettier configuration for consistent code formatting across all projects
Author: haydar_rs4it
Latest version: 1.0.0

# Prettier Configuration - DataTime

تكوين Prettier موحد لتنسيق الكود في جميع مشاريع مؤسسة DataTime.

## المميزات

- **تنسيق موحد**: معايير تنسيق متسقة عبر جميع المشاريع
- **دعم متعدد اللغات**: JavaScript, TypeScript, JSON, YAML, Markdown, CSS
- **تحسين للعربية**: دعم أفضل للنصوص العربية
- **ملفات مخصصة**: تكوين مختلف لأنواع الملفات المختلفة
- **سهولة التخصيص**: إمكانية التخصيص المحلي عند الحاجة

## التثبيت

```bash
npm install --save-dev @haydar_rs4it/prettier-config
```

## الاستخدام

### الطريقة الأولى: ملف التكوين التقليدي

أنشئ ملف `.prettierrc.js`:

```javascript
module.exports = require('@haydar_rs4it/prettier-config');
```

### الطريقة الثانية: ES Modules

أنشئ ملف `prettier.config.js`:

```javascript
import config from '@haydar_rs4it/prettier-config';

export default config;
```

### الطريقة الثالثة: JSON Configuration

أنشئ ملف `.prettierrc.json`:

```json
"@datatime/prettier-config"
```

## التبعيات المطلوبة

تأكد من تثبيت Prettier:

```bash
npm install --save-dev prettier@^3.0.0
```

## التخصيص المحلي

يمكنك تخصيص التكوين محلياً في مشروعك:

```javascript
// prettier.config.js
import baseConfig from '@datatime/prettier-config';

export default {
  ...baseConfig,
  // تخصيصات محلية
  printWidth: 100,
  singleQuote: false,
  overrides: [
    ...baseConfig.overrides,
    {
      files: ['*.vue'],
      options: {
        printWidth: 120,
      },
    },
  ],
};
```

## أمثلة الاستخدام

### مشروع JavaScript/TypeScript

```javascript
// prettier.config.js
import config from '@haydar_rs4it/prettier-config';

export default config;
```

### مشروع React

```javascript
// prettier.config.js
import config from '@haydar_rs4it/prettier-config';

export default {
  ...config,
  overrides: [
    ...config.overrides,
    {
      files: ['*.jsx', '*.tsx'],
      options: {
        printWidth: 100,
        jsxSingleQuote: true,
      },
    },
  ],
};
```

### مشروع Vue.js

```javascript
// prettier.config.js
import config from '@haydar_rs4it/prettier-config';

export default {
  ...config,
  overrides: [
    ...config.overrides,
    {
      files: ['*.vue'],
      options: {
        printWidth: 100,
        singleQuote: true,
      },
    },
  ],
};
```

## تكوينات الملفات المختلفة

| نوع الملف | عرض الطباعة | فواصل | ملاحظات |
|-----------|-------------|--------|---------|
| JavaScript/TypeScript | 80 | مفردة | إعدادات أساسية |
| JSON | 120 | لا | بدون فواصل زائدة |
| YAML | 100 | مفردة | تحسين للقراءة |
| Markdown | 100 | مزدوجة | تنسيق النصوص |
| CSS/SCSS | 100 | مفردة | تنسيق الأنماط |
| HTML | 100 | - | حساسية المسافات |

## نصائح للاستخدام

1. **استخدم مع Pre-commit Hooks**: تأكد من تشغيل Prettier قبل كل commit
2. **تكامل مع IDE**: فعّل Prettier في محرر النصوص الخاص بك
3. **CI/CD**: أضف Prettier إلى خط أنابيب CI/CD الخاص بك
4. **التحديث الدوري**: حافظ على تحديث التبعيات للحصول على أحدث الميزات

## التكامل مع ESLint

يتم تكوين Prettier للعمل مع ESLint بشكل مثالي:

```javascript
// .eslintrc.js
module.exports = {
  extends: ['datatime', 'prettier'],
};
```

## الدعم

للمساعدة أو الإبلاغ عن مشاكل، يرجى التواصل مع فريق التطوير في DataTime.

## الترخيص

MIT License - يمكن استخدامه في مشاريع تجارية وخاصة.