update readme

This commit is contained in:
Hesabix 2025-04-29 11:53:17 +00:00
parent d0e6d651b4
commit 6e63eb49eb

237
README.md
View file

@ -1,122 +1,199 @@
# **حسابیکس**
# حسابیکس - نرم‌افزار حسابداری متن‌باز
حسابیکس اولین نرم‌افزار حسابداری متن‌باز به زبان فارسی با رابط کاربری تحت وب است.
برای مشاهده نسخه نمایشی پروژه به وب‌سایت [https://hesabix.ir](https://hesabix.ir) مراجعه کنید.
![Hesabix Logo](https://hesabix.ir/logo.png)
## پیش‌نیازهای نصب
حسابیکس اولین نرم‌افزار حسابداری متن‌باز به زبان فارسی با رابط کاربری تحت وب است که به شما امکان مدیریت کامل امور مالی کسب و کارتان را می‌دهد.
برای نصب هسته حسابیکس به ابزارهای زیر نیاز دارید:
## 📋 فهرست مطالب
* وب سرور: Apache، NginX و...
* پایگاه داده: Mysql، mariaDB، PostgreSql و...
* PHP: نسخه 8.1 به بالا
* افزونه‌های PHP: php-Intl، php-mbstring، php-http، php-raphf، php-zip، php-gd
* composer
- [معرفی](#معرفی)
- [ویژگی‌های کلیدی](#ویژگی‌های-کلیدی)
- [پیش‌نیازها](#پیش‌نیازها)
- [روش‌های نصب](#روش‌های-نصب)
- [نصب خودکار در اوبونتو](#نصب-خودکار-در-اوبونتو)
- [نصب دستی](#نصب-دستی)
- [نصب با Docker](#نصب-با-docker)
- [پیکربندی](#پیکربندی)
- [تنظیمات پایگاه داده](#تنظیمات-پایگاه-داده)
- [تنظیمات ایمیل](#تنظیمات-ایمیل)
- [به‌روزرسانی](#به‌روزرسانی)
- [توسعه](#توسعه)
- [مشارکت](#مشارکت)
- [حمایت مالی](#حمایت-مالی)
- [لایسنس](#لایسنس)
## نصب سریع در سرورهای اوبونتو 24.04 به بالا
## معرفی
برای نصب سریع حسابیکس در سرورهای اوبونتو 24.04 به بالا، می‌توانید از اسکریپت نصب خودکار استفاده کنید. این اسکریپت تمام پیش‌نیازها را نصب کرده و حسابیکس را به صورت خودکار راه‌اندازی می‌کند:
حسابیکس یک راه‌حل جامع برای مدیریت امور مالی کسب و کارهای کوچک و متوسط است. این نرم‌افزار با رابط کاربری فارسی و امکانات کامل، به شما کمک می‌کند تا امور مالی خود را به راحتی مدیریت کنید.
**نسخه نمایشی:** [https://hesabix.ir](https://hesabix.ir)
## ویژگی‌های کلیدی
- ✅ رابط کاربری کاملاً فارسی
- ✅ پشتیبانی از چندین واحد پولی
- ✅ گزارش‌های مالی پیشرفته
- ✅ مدیریت موجودی کالا
- ✅ سیستم حقوق و دستمزد
- ✅ پشتیبانی از مالیات و عوارض
- ✅ امنیت بالا و پشتیبانی از چندین کاربر
- ✅ پشتیبانی از نسخه موبایل
## پیش‌نیازها
### سخت‌افزاری
- حداقل ۲ گیگابایت فضای خالی دیسک
- حداقل ۱ گیگابایت رم
### نرم‌افزاری
- وب سرور (Apache، NginX و...)
- پایگاه داده (MySQL، MariaDB، PostgreSQL)
- PHP نسخه ۸.۱ به بالا
- افزونه‌های PHP:
- php-Intl
- php-mbstring
- php-http
- php-raphf
- php-zip
- php-gd
- Composer
- Node.js و npm (برای توسعه رابط کاربری)
## روش‌های نصب
### نصب خودکار در اوبونتو
برای نصب سریع در سرورهای اوبونتو 24.04 به بالا:
```bash
cd /tmp && curl -sSL https://shell.hesabix.ir/installer.sh | tr -d '\r' > installer.sh && chmod +x installer.sh && sudo bash installer.sh
```
پس از اجرای این دستور، اسکریپت نصب به صورت خودکار:
- تمام پیش‌نیازهای مورد نیاز را نصب می‌کند
این اسکریپت به صورت خودکار:
- پیش‌نیازها را نصب می‌کند
- پایگاه داده را پیکربندی می‌کند
- حسابیکس را نصب و راه‌اندازی می‌کند
- تنظیمات امنیتی اولیه را اعمال می‌کند
- تنظیمات امنیتی را اعمال می‌کند
## نصب
### نصب دستی
* پروژه را در پوشه وب سرور کپی یا کلون کنید. اگر از کنترل پنل‌های اشتراکی مانند cpanel یا directadmin استفاده می‌کنید، فایل‌ها را در پوشه اصلی کپی کنید و پوشه public_html بازنویسی خواهد شد.
* در سیستم مدیریت پایگاه داده خود یک پایگاه داده ایجاد کنید و فایل .env را در پوشه اصلی پروژه ویرایش کنید.
* وابستگی‌ها را با اجرای این دستور نصب کنید:
برای نصب دستی حسابیکس، مراحل زیر را دنبال کنید:
```
composer install
1. **کپی پروژه:**
- پروژه را در پوشه وب سرور کپی یا کلون کنید
- اگر از کنترل پنل‌های اشتراکی مانند cPanel یا DirectAdmin استفاده می‌کنید، فایل‌ها را در پوشه اصلی کپی کنید
2. **ایجاد پایگاه داده:**
- در سیستم مدیریت پایگاه داده خود (مانند phpMyAdmin) یک پایگاه داده جدید ایجاد کنید
- نام کاربری و رمز عبور مناسب برای دسترسی به پایگاه داده تعیین کنید
3. **تنظیم فایل محیط:**
- فایل `.env` را در پوشه اصلی پروژه ویرایش کنید
- اطلاعات پایگاه داده را وارد کنید:
```env
DATABASE_URL="mysql://user:password@localhost:3306/hesabix_db"
```
4. **نصب وابستگی‌ها:**
```bash
composer install
```
5. **ایجاد فایل محیط محلی:**
```bash
# برای محیط تولید
composer dump-env prod
# برای محیط توسعه
composer dump-env dev
```
6. **راه‌اندازی پایگاه داده:**
- وارد سیستم مدیریت پایگاه داده خود شوید
- فایل `hesabixBackup/databaseFiles/hesabix-db-default.sql` را وارد کنید
- به پوشه `hesabixCore` بروید و دستور زیر را اجرا کنید:
```bash
php bin/console doctrine:schema:update --force --complete
```
7. **تست نصب:**
- آدرس دامنه اصلی را در مرورگر باز کنید
- باید صفحه اصلی API حسابیکس را مشاهده کنید
### نصب با Docker
1. مخزن را کلون کنید:
```bash
git clone https://github.com/your-username/hesabix.git
cd hesabix
```
2. فایل محیط را کپی و پیکربندی کنید:
```bash
cp .env.example .env
nano .env
```
3. اسکریپت نصب را اجرا کنید:
```bash
./docker/setup.sh
```
## پیکربندی
### تنظیمات پایگاه داده
فایل `.env` را ویرایش کنید و اطلاعات پایگاه داده خود را وارد کنید:
```env
DATABASE_URL="mysql://user:password@localhost:3306/hesabix_db"
```
* فایل .env را ویرایش کرده و رشته اتصال پایگاه داده را با نام کاربری، رمز عبور و نام پایگاه داده خود تنظیم کنید.
* فایل محیط محلی را با اجرای این دستور ایجاد کنید:
### تنظیمات ایمیل
```
composer dump-env prod
composer dump-env dev // فقط برای محیط توسعه
برای پیکربندی ارسال ایمیل، فایل `.env.local.php` را ویرایش کنید:
```php
'MAILER_DSN' => 'smtp://user:pass@smtp.example.com:port'
```
* وارد سیستم مدیریت پایگاه داده خود مانند phpmyadmin شوید و فایل موجود در hesabixBackup/databaseFiles/hesabix-db-default.sql را وارد کنید.
* در خط فرمان به پوشه hesabixCore بروید و پایگاه داده را با این دستور به‌روز کنید:
## به‌روزرسانی
```
php bin/console doctrine:schema:update --force --complete
```
برای به‌روزرسانی نرم‌افزار:
آدرس دامنه اصلی را در مرورگر باز کنید، باید صفحه اصلی API حسابیکس را مشاهده کنید.
## اتصال به سرویس ایمیل
برای اتصال حسابیکس به سرویس ایمیل خود، فایل .env.local.php را در پوشه hesabixCore ویرایش کنید و رشته اتصال سرور ایمیل خود را در پارامتر MAILER_DSN تنظیم کنید. برای اطلاعات بیشتر درباره رشته‌های اتصال به مستندات symfony mailer مراجعه کنید. [اینجا کلیک کنید](https://symfony.com/doc/current/mailer.html#transport-setup)
پس از تنظیم رشته اتصال، فایل mailer.yaml را در پوشه configs ویرایش کرده و هدر برای ارسال ایمیل‌ها را تنظیم کنید.
## به‌روزرسانی نرم‌افزار
برای به‌روزرسانی نرم‌افزار با آخرین تغییرات منتشر شده در پوشه hesabixCore، این دستور را اجرا کنید:
```
```bash
php bin/console hesabix:update
```
## توسعه
## فرآیند ساخت رابط کاربری
### راه‌اندازی محیط توسعه
## راه‌اندازی پروژه
```sh
```bash
npm install
```
### کامپایل و بارگذاری خودکار برای توسعه
```sh
npm run dev
npm run dev -- --host // برای استفاده در شبکه‌های خارجی
```
پس از اجرای این دستور می‌توانید با آدرس [http://localhost:5173](http://localhost:5173) در مرورگر خود دسترسی داشته باشید.
### کامپایل برای تولید
### پیکربندی آدرس API در حالت توسعه
به صورت پیش‌فرض، آدرس API در مسیر اصلی (/) و رابط کاربری وب در زیرپوشه /u/ قرار دارد.
مثال:
- آدرس API: https://myaddress.com
- آدرس رابط کاربری وب: https://myaddress.com/u/
اگر شما یک توسعه‌دهنده هستید و می‌خواهید با دستورات `npm run dev` یا `npm run dev --host` کار کنید، باید متغیری با نام `dev_api_url` تعریف کنید که آدرس API خارجی را مشخص می‌کند، مثلاً:
```js
return 'https://next.hesabix.ir';
```
### بررسی نوع، کامپایل و فشرده‌سازی برای تولید
```sh
```bash
npm run build-only
```
**تمام فایل‌های خروجی در پوشه public_html/u تولید خواهند شد که قابل اجرا روی وب سرور خواهند بود**
## مشارکت
### مشارکت‌کنندگان
ما از مشارکت شما استقبال می‌کنیم! برای مشارکت:
<a href="https://github.com/morrning/hesabixUI/graphs/contributors">
<img src="https://contrib.rocks/image?repo=morrning/hesabixUI" />
</a>
<a href="https://github.com/morrning/hesabixCore/graphs/contributors">
<img src="https://contrib.rocks/image?repo=morrning/hesabixCore" />
</a>
1. مخزن را فورک کنید
2. یک شاخه جدید ایجاد کنید
3. تغییرات خود را اعمال کنید
4. یک درخواست ادغام (Pull Request) ارسال کنید
## حمایت مالی
برای حمایت مالی از توسعه‌دهندگان لطفاً از این لینک استفاده کنید:
برای حمایت از توسعه حسابیکس:
[https://zarinp.al/hesabix.ir](https://zarinp.al/hesabix.ir)
## لایسنس
حسابیکس تحت مجوز GNU GPL v3 منتشر شده است. برای جزئیات بیشتر به فایل [LICENSE](LICENSE) مراجعه کنید.