update readme
This commit is contained in:
parent
d0e6d651b4
commit
6e63eb49eb
225
README.md
225
README.md
|
@ -1,122 +1,199 @@
|
||||||
# **حسابیکس**
|
# حسابیکس - نرمافزار حسابداری متنباز
|
||||||
|
|
||||||
حسابیکس اولین نرمافزار حسابداری متنباز به زبان فارسی با رابط کاربری تحت وب است.
|

|
||||||
برای مشاهده نسخه نمایشی پروژه به وبسایت [https://hesabix.ir](https://hesabix.ir) مراجعه کنید.
|
|
||||||
|
|
||||||
## پیشنیازهای نصب
|
حسابیکس اولین نرمافزار حسابداری متنباز به زبان فارسی با رابط کاربری تحت وب است که به شما امکان مدیریت کامل امور مالی کسب و کارتان را میدهد.
|
||||||
|
|
||||||
برای نصب هسته حسابیکس به ابزارهای زیر نیاز دارید:
|
## 📋 فهرست مطالب
|
||||||
|
|
||||||
* وب سرور: 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
|
```bash
|
||||||
cd /tmp && curl -sSL https://shell.hesabix.ir/installer.sh | tr -d '\r' > installer.sh && chmod +x installer.sh && sudo bash installer.sh
|
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 را در پوشه اصلی پروژه ویرایش کنید.
|
|
||||||
* وابستگیها را با اجرای این دستور نصب کنید:
|
|
||||||
|
|
||||||
|
1. **کپی پروژه:**
|
||||||
|
- پروژه را در پوشه وب سرور کپی یا کلون کنید
|
||||||
|
- اگر از کنترل پنلهای اشتراکی مانند cPanel یا DirectAdmin استفاده میکنید، فایلها را در پوشه اصلی کپی کنید
|
||||||
|
|
||||||
|
2. **ایجاد پایگاه داده:**
|
||||||
|
- در سیستم مدیریت پایگاه داده خود (مانند phpMyAdmin) یک پایگاه داده جدید ایجاد کنید
|
||||||
|
- نام کاربری و رمز عبور مناسب برای دسترسی به پایگاه داده تعیین کنید
|
||||||
|
|
||||||
|
3. **تنظیم فایل محیط:**
|
||||||
|
- فایل `.env` را در پوشه اصلی پروژه ویرایش کنید
|
||||||
|
- اطلاعات پایگاه داده را وارد کنید:
|
||||||
|
```env
|
||||||
|
DATABASE_URL="mysql://user:password@localhost:3306/hesabix_db"
|
||||||
```
|
```
|
||||||
|
|
||||||
|
4. **نصب وابستگیها:**
|
||||||
|
```bash
|
||||||
composer install
|
composer install
|
||||||
```
|
```
|
||||||
|
|
||||||
* فایل .env را ویرایش کرده و رشته اتصال پایگاه داده را با نام کاربری، رمز عبور و نام پایگاه داده خود تنظیم کنید.
|
5. **ایجاد فایل محیط محلی:**
|
||||||
* فایل محیط محلی را با اجرای این دستور ایجاد کنید:
|
```bash
|
||||||
|
# برای محیط تولید
|
||||||
```
|
|
||||||
composer dump-env prod
|
composer dump-env prod
|
||||||
composer dump-env dev // فقط برای محیط توسعه
|
|
||||||
|
# برای محیط توسعه
|
||||||
|
composer dump-env dev
|
||||||
```
|
```
|
||||||
|
|
||||||
* وارد سیستم مدیریت پایگاه داده خود مانند phpmyadmin شوید و فایل موجود در hesabixBackup/databaseFiles/hesabix-db-default.sql را وارد کنید.
|
6. **راهاندازی پایگاه داده:**
|
||||||
* در خط فرمان به پوشه hesabixCore بروید و پایگاه داده را با این دستور بهروز کنید:
|
- وارد سیستم مدیریت پایگاه داده خود شوید
|
||||||
|
- فایل `hesabixBackup/databaseFiles/hesabix-db-default.sql` را وارد کنید
|
||||||
```
|
- به پوشه `hesabixCore` بروید و دستور زیر را اجرا کنید:
|
||||||
|
```bash
|
||||||
php bin/console doctrine:schema:update --force --complete
|
php bin/console doctrine:schema:update --force --complete
|
||||||
```
|
```
|
||||||
|
|
||||||
آدرس دامنه اصلی را در مرورگر باز کنید، باید صفحه اصلی API حسابیکس را مشاهده کنید.
|
7. **تست نصب:**
|
||||||
|
- آدرس دامنه اصلی را در مرورگر باز کنید
|
||||||
|
- باید صفحه اصلی API حسابیکس را مشاهده کنید
|
||||||
|
|
||||||
## اتصال به سرویس ایمیل
|
### نصب با Docker
|
||||||
|
|
||||||
برای اتصال حسابیکس به سرویس ایمیل خود، فایل .env.local.php را در پوشه hesabixCore ویرایش کنید و رشته اتصال سرور ایمیل خود را در پارامتر MAILER_DSN تنظیم کنید. برای اطلاعات بیشتر درباره رشتههای اتصال به مستندات symfony mailer مراجعه کنید. [اینجا کلیک کنید](https://symfony.com/doc/current/mailer.html#transport-setup)
|
|
||||||
|
|
||||||
پس از تنظیم رشته اتصال، فایل mailer.yaml را در پوشه configs ویرایش کرده و هدر برای ارسال ایمیلها را تنظیم کنید.
|
|
||||||
|
|
||||||
## بهروزرسانی نرمافزار
|
|
||||||
|
|
||||||
برای بهروزرسانی نرمافزار با آخرین تغییرات منتشر شده در پوشه hesabixCore، این دستور را اجرا کنید:
|
|
||||||
|
|
||||||
|
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.local.php` را ویرایش کنید:
|
||||||
|
|
||||||
|
```php
|
||||||
|
'MAILER_DSN' => 'smtp://user:pass@smtp.example.com:port'
|
||||||
|
```
|
||||||
|
|
||||||
|
## بهروزرسانی
|
||||||
|
|
||||||
|
برای بهروزرسانی نرمافزار:
|
||||||
|
|
||||||
|
```bash
|
||||||
php bin/console hesabix:update
|
php bin/console hesabix:update
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## توسعه
|
||||||
|
|
||||||
## فرآیند ساخت رابط کاربری
|
### راهاندازی محیط توسعه
|
||||||
|
|
||||||
## راهاندازی پروژه
|
```bash
|
||||||
|
|
||||||
```sh
|
|
||||||
npm install
|
npm install
|
||||||
```
|
|
||||||
|
|
||||||
### کامپایل و بارگذاری خودکار برای توسعه
|
|
||||||
|
|
||||||
```sh
|
|
||||||
npm run dev
|
npm run dev
|
||||||
npm run dev -- --host // برای استفاده در شبکههای خارجی
|
|
||||||
```
|
```
|
||||||
|
|
||||||
پس از اجرای این دستور میتوانید با آدرس [http://localhost:5173](http://localhost:5173) در مرورگر خود دسترسی داشته باشید.
|
### کامپایل برای تولید
|
||||||
|
|
||||||
### پیکربندی آدرس API در حالت توسعه
|
```bash
|
||||||
به صورت پیشفرض، آدرس 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
|
|
||||||
npm run build-only
|
npm run build-only
|
||||||
```
|
```
|
||||||
|
|
||||||
**تمام فایلهای خروجی در پوشه public_html/u تولید خواهند شد که قابل اجرا روی وب سرور خواهند بود**
|
## مشارکت
|
||||||
|
|
||||||
### مشارکتکنندگان
|
ما از مشارکت شما استقبال میکنیم! برای مشارکت:
|
||||||
|
|
||||||
<a href="https://github.com/morrning/hesabixUI/graphs/contributors">
|
1. مخزن را فورک کنید
|
||||||
<img src="https://contrib.rocks/image?repo=morrning/hesabixUI" />
|
2. یک شاخه جدید ایجاد کنید
|
||||||
</a>
|
3. تغییرات خود را اعمال کنید
|
||||||
<a href="https://github.com/morrning/hesabixCore/graphs/contributors">
|
4. یک درخواست ادغام (Pull Request) ارسال کنید
|
||||||
<img src="https://contrib.rocks/image?repo=morrning/hesabixCore" />
|
|
||||||
</a>
|
|
||||||
|
|
||||||
## حمایت مالی
|
## حمایت مالی
|
||||||
|
|
||||||
برای حمایت مالی از توسعهدهندگان لطفاً از این لینک استفاده کنید:
|
برای حمایت از توسعه حسابیکس:
|
||||||
[https://zarinp.al/hesabix.ir](https://zarinp.al/hesabix.ir)
|
[https://zarinp.al/hesabix.ir](https://zarinp.al/hesabix.ir)
|
||||||
|
|
||||||
|
## لایسنس
|
||||||
|
|
||||||
|
حسابیکس تحت مجوز GNU GPL v3 منتشر شده است. برای جزئیات بیشتر به فایل [LICENSE](LICENSE) مراجعه کنید.
|
||||||
|
|
Loading…
Reference in a new issue