Sahayog

A comprehensive custom application for Frappe ERPNext, designed to enhance and streamline business operations.

Install Sahayog

bench get-app https://github.com/iamtalib13/sahayog

Add the Frappe Gems badge to your README

Maintain Sahayog? Paste this into your README:

[![Listed on Frappe Gems](https://frappegems.com/api/method/frappe_gems.seo.badge?app=iamtalib13%2Fsahayog)](https://frappegems.com/gems/apps/iamtalib13/sahayog)

About Sahayog

Sahayog ERP

A comprehensive custom application for Frappe ERPNext, designed to enhance and streamline business operations.

Overview

Sahayog is a powerful extension for the Frappe framework, integrating several key business modules into a single, cohesive system. It provides functionalities for Human Resources, Sales and CRM, Procurement, Project Management, and more, tailored to specific business needs.

Core Modules

The application is composed of several modules:

  • Human Resource Management (HRMS)
  • Sales & CRM (SCRM)
  • Procurement
  • Project Management
  • Issue Register
  • Collections

Human Resource Management (HRMS)

This module extends the core HR functionalities of Frappe. - Manages employee lifecycle, including creation and user provisioning. - Custom logic for employee naming and status (Active/Inactive). - Handles department and branch-specific data. - Overrides for handling employee data updates.

Key HRMS DocTypes:

  • Employee: Central document for employee information.
  • Department: Organizational departments.
  • Branch: Different company branches.

Sales & CRM (SCRM)

Focuses on enhancing customer relationship management and sales processes. - Manages leads, opportunities, and customers. - Custom API for lead owner assignments. - Integration with Service Level Agreements (SLAs). - Automated contact creation from leads.

Key SCRM DocTypes:

  • Lead: Potential sales interest.
  • Opportunity: Qualified sales opportunity.
  • Customer: Company's customers.

Procurement

Streamlines the purchasing and inventory management processes. - Handles Supplier Quotation, Purchase Order, and Purchase Receipt. - Custom logic for item naming and warehouse management. - Asset management integration.

Key Procurement DocTypes:

  • Supplier Quotation: Quotes from suppliers.
  • Purchase Order: Orders placed with suppliers.
  • Item: Products and services.

Project Management

Provides tools for managing projects and tasks effectively. - Defines Project Templates for quick project setup. - Manages Tasks with dependencies and assignments. - Custom dashboards for project and task visibility (Project Dashboard, Task Dashboard).

Key Project DocTypes:

  • Project: The main project document.
  • Task: Individual tasks within a project.
  • Project Template: Reusable project structures.

Issue Register

A dedicated module for tracking and managing issues. - Allows users to report issues and track their resolution status. - Provides reports and dashboards for issue analysis.

Custom APIs & Logic

Sahayog includes a variety of custom scripts and APIs to automate and extend functionality:

  • User Provisioning: Automatically creates users from Employee documents.
  • Branch & Warehouse Linking: Logic to link branches with warehouses.
  • Shareholder Management: Events for handling shareholder and share transfer documents.
  • Custom Naming: Several overrides for document naming conventions (e.g., Employee, Item).

Installation

To install Sahayog, you need a Frappe Bench environment.

  1. Go to your bench directory:
    cd ~/frappe-bench
    
  2. Get the app from its repository (replace with actual repository URL):
    bench get-app https://github.com/your-org/sahayog
    
  3. Install the app on your site:
    bench --site your-site-name.localhost install-app sahayog
    
  4. Migrate the database:
    bench --site your-site-name.localhost migrate
    

Contribution

Contributions are welcome! Please follow the standard Frappe app development guidelines. 1. Fork the repository. 2. Create a new branch for your feature. 3. Add your changes and commit them. 4. Push to your branch and create a Pull Request.

License

This project is licensed under the MIT License. See the license.txt file for details.

Refinements

  • Minor style adjustments to the codebase.
  • Improved documentation clarity in code comments.
  • Refactored API endpoint for performance.
  • Added validation to a critical doctype.
  • Cleaned up unused variables.
  • Updated dependencies in package.json.
  • Formatted Python code with Black.
  • Formatted JS code with Prettier.
  • Added new fixture for testing.
  • Updated CI configuration.
  • Corrected a typo in a report.
  • Enhanced logging for a background job.
  • Optimized a database query.
  • Added a new custom field to a doctype.
  • Updated .gitignore to exclude log files.
  • Renamed a variable for better clarity.
  • Added error handling for an API call.
  • Updated a print format layout.
  • Fixed a permission issue for a role.
  • Added a new number card to a workspace.
  • Removed a deprecated function.
  • Updated a web form's client script.
  • Added a new dashboard chart.
  • Improved the user experience of a page.
  • Set a default value for a field.
  • Converted a script to use async/await.
  • Fixed a CSS alignment issue.
  • Added a new workflow state.
  • Updated translations.
  • Improved accessibility of a component.
  • Patched a minor security vulnerability.
  • Added a unit test for a utility function.
  • Updated the requirements.txt.
  • Reordered fields in a DocType for better flow.
  • Added a client script for dynamic filtering.
  • Corrected a calculation in a custom report.
  • Moved a hardcoded string to constants.
  • Added a new page for custom reports.
  • Updated an email template.
  • Improved responsiveness of the UI.
  • Added a hook for on_submit event.
  • Refined a workflow transition rule.
  • Added a missing index to a database table.
  • Updated a fixture to reflect new data model.
  • Removed a redundant API call.
  • Added a new custom permission rule.

Related Other apps for Frappe & ERPNext

  • Erpnext — Free and Open Source Enterprise Resource Planning (ERP)
  • Helpdesk — Modern, Streamlined, Free and Open Source Customer Service Software
  • Print Designer — Visual print designer for Frappe / ERPNext
  • Ctr — CTR模型代码和学习笔记总结
  • Whitelabel — Whitelabel ERPNext
  • Fossunited — fossunited.org
  • Helm — Helm Chart Repository for Frappe/ERPNext
  • Frappe Attachments S3 — A frappe app to upload file attachments in doctypes to s3.