Empower your development with seamless integration and efficiency.
Built with the tools and technologies:
توسعه خود را با یکپارچگی و کارایی بینظیر قدرتمند کنید.
panello-lib یک کتابخانه قدرتمند است که برای بهبود توسعه برنامههای وب تعاملی طراحی شده و یکپارچگی بینظیری بین عملکردهای سمت سرور و کلاینت فراهم میکند.
چرا panello-lib؟
این پروژه با هدف سادهسازی فرآیند توسعه و در عین حال تضمین تجربه کاربری قدرتمند طراحی شده است. ویژگیهای اصلی شامل:
- 🎛️ محیط یکپارچه: مدیریت برنامههای سمت سرور و کلاینت در یک جریان کاری واحد.
- ⚡ ارتباط بلادرنگ: استفاده از Socket.IO برای بهروزرسانیها و تعاملات فوری.
- 🔒 احراز هویت قوی: مدیریت امن کاربران با یکپارچهسازی احراز هویت گوگل.
- 🎨 کامپوننتهای رابط کاربری پویا: کامپوننتهای قابل سفارشیسازی برای رابط کاربری واکنشگرا و جذاب.
- ✅ مدیریت جامع وظایف: ایجاد، بهروزرسانی و حذف کارآمد وظایف در برنامه شما.
- 🌍 پشتیبانی از بینالمللیسازی: سازگاری آسان برنامه شما با چندین زبان برای دسترسی گستردهتر.
- 📊 نمودارهای تعاملی: تجسم دادهها با نمودارهای شعاعی واکنشگرا و سایر ابزارهای تجسم داده
- 📝 مدیریت وظایف: ایجاد، بهروزرسانی و پیگیری وظایف با کدگذاری رنگی و قابلیتهای تخصیص
- 🔔 یادآوریها: تنظیم و مدیریت یادآوریها با پیگیری تکمیل
- 📅 یکپارچهسازی تقویم: برنامهریزی و مدیریت رویدادها با قابلیت تقویم اشتراکی
- 💬 سیستم پیامرسانی: ارتباط بلادرنگ بین کاربران
- 🤖 پیشنهادات هوش مصنوعی: جعبههای پیشنهاد هوشمند برای افزایش بهرهوری
- 📝 تولید محتوا: ابزارهای تولید محتوا با کمک هوش مصنوعی
- 🔐 احراز هویت گوگل: ورود امن با یکپارچهسازی OAuth گوگل
- 👤 دسترسی مبتنی بر نقش: نقشها و مجوزهای کاربری قابل سفارشیسازی
- 🔒 احراز هویت JWT: دسترسی امن به API با احراز هویت مبتنی بر توکن
این پروژه به وابستگیهای زیر نیاز دارد:
- زبان برنامهنویسی: تایپاسکریپت
- مدیر بسته: npm
- Node.js: نسخه 14.x یا بالاتر
ساخت panello-lib از منبع و نصب وابستگیها:
-
کلون کردن مخزن:
git clone https://github.com/ErfanBagheri404/panello-lib -
رفتن به دایرکتوری پروژه:
cd panello-lib -
نصب وابستگیها:
npm install
اجرای پروژه با:
npm run run
این دستور هم سرور و هم کلاینت را به صورت همزمان با استفاده از اسکریپتهای تعریف شده در package.json اجرا میکند.
برای اجرای فقط کلاینت:
npm run client
برای اجرای فقط سرور:
npm run server
برای اجرای تستهای پروژه:
npm run test
panello-lib/
├── client/ # برنامه فرانتاند React
│ ├── src/
│ │ ├── components/ # کامپوننتهای قابل استفاده مجدد
│ │ ├── layout/ # کامپوننتهای لایه
│ │ ├── pages/ # کامپوننتهای صفحه
│ │ └── ...
├── server/ # برنامه بکاند Express
│ ├── src/
│ │ ├── models/ # مدلهای داده Mongoose
│ │ ├── routes/ # مسیرهای API
│ │ ├── types/ # تعاریف نوع TypeScript
│ │ └── ...
└── package.json # پیکربندی پروژه
GET /api/auth/profile- Get the current user's profilePOST /api/auth/login- User loginPOST /api/auth/register- User registration
GET /api/reminders- Get all reminders for the authenticated userPOST /api/reminders- Create a new reminderPUT /api/reminders/:id- Update a reminderDELETE /api/reminders/:id- Delete a reminder
GET /api/tasks- Get all tasks for the authenticated userPOST /api/tasks- Create a new taskPUT /api/tasks/:id- Update a taskDELETE /api/tasks/:id- Delete a task
مشارکتها مورد استقبال قرار میگیرند! لطفاً برای ارسال Pull Request اقدام کنید.
- مخزن را fork کنید
- شاخه ویژگی خود را ایجاد کنید (
git checkout -b feature/amazing-feature) - تغییرات خود را commit کنید (
git commit -m 'Add some amazing feature') - به شاخه push کنید (
git push origin feature/amazing-feature) - یک Pull Request باز کنید
panello-lib is a powerful library designed to enhance the development of interactive web applications, providing a seamless integration of client and server functionalities.
Why panello-lib?
This project aims to streamline the development process while ensuring a robust user experience. The core features include:
- 🎛️ Unified Environment: Manage both client and server applications in a single workflow.
- ⚡ Real-time Communication: Leverage Socket.IO for instant updates and interactions.
- 🔒 Robust Authentication: Secure user management with Google authentication integration.
- 🎨 Dynamic UI Components: Customizable components for a responsive and engaging user interface.
- ✅ Comprehensive Task Management: Efficiently create, update, and delete tasks within your application.
- 🌍 Internationalization Support: Easily adapt your application to multiple languages for broader accessibility.
- 📊 Interactive Charts: Visualize data with responsive Radial charts and other data visualization tools
- 📝 Task Management: Create, update, and track tasks with color coding and assignment capabilities
- 🔔 Reminders: Set and manage reminders with completion tracking
- 📅 Calendar Integration: Schedule and manage events with shared calendar functionality
- 💬 Messaging System: Real-time communication between users
- 🤖 AI Suggestions: Smart suggestion boxes to enhance productivity
- 📝 Content Generation: AI-assisted content creation tools
- 🔐 Google Authentication: Secure login with Google OAuth integration
- 👤 Role-based Access: Customizable user roles and permissions
- 🔒 JWT Authentication: Secure API access with token-based authentication
This project requires the following dependencies:
- Programming Language: TypeScript
- Package Manager: npm
- Node.js: v14.x or higher
Build panello-lib from the source and install dependencies:
-
Clone the repository:
git clone https://github.com/ErfanBagheri404/panello-lib -
Navigate to the project directory:
cd panello-lib -
Install the dependencies:
npm install
Run the project with:
npm run run
This will start both the client and server concurrently using the scripts defined in package.json.
To run only the client:
npm run client
To run only the server:
npm run server
To run tests for the project:
npm run test
panello-lib/
├── client/ # React frontend application
│ ├── src/
│ │ ├── components/ # Reusable UI components
│ │ ├── layout/ # Layout components
│ │ ├── pages/ # Page components
│ │ └── ...
├── server/ # Express backend application
│ ├── src/
│ │ ├── models/ # Mongoose data models
│ │ ├── routes/ # API routes
│ │ ├── types/ # TypeScript type definitions
│ │ └── ...
└── package.json # Project configuration
GET /api/auth/profile- Get the current user's profilePOST /api/auth/login- User loginPOST /api/auth/register- User registration
GET /api/reminders- Get all reminders for the authenticated userPOST /api/reminders- Create a new reminderPUT /api/reminders/:id- Update a reminderDELETE /api/reminders/:id- Delete a reminder
GET /api/tasks- Get all tasks for the authenticated userPOST /api/tasks- Create a new taskPUT /api/tasks/:id- Update a taskDELETE /api/tasks/:id- Delete a task