helpy
Helpy is a modern, open source helpdesk customer support application. Features include knowledgebase, community discussions and support tickets integrated with email.
Top Related Projects
A platform for community discussion. Free, open, simple.
Open-source live-chat, email support, omni-channel desk. An alternative to Intercom, Zendesk, Salesforce Service Cloud etc. 🔥💬
Zammad is a web based open source helpdesk/customer support system
FreeScout — Free self-hosted help desk & shared mailbox (Zendesk / Help Scout alternative)
The osTicket open source ticketing system official project repository, for versions 1.8 and later
Quick Overview
Helpy is an open-source customer support platform designed for small to medium-sized teams. It provides a self-service knowledge base, community discussions, and a ticketing system, all integrated into a single application. Helpy aims to offer a simpler and more cost-effective alternative to enterprise-level helpdesk solutions.
Pros
- Easy to set up and customize, with a clean and intuitive interface
- Integrates multiple support channels (knowledge base, community, tickets) in one platform
- Open-source and self-hosted, allowing for greater control and privacy
- Supports multiple languages and localization
Cons
- May lack some advanced features found in enterprise-level solutions
- Requires self-hosting, which can be challenging for non-technical users
- Community support might be less robust compared to commercial alternatives
- Development activity has slowed down in recent years
Getting Started
To get started with Helpy, follow these steps:
-
Clone the repository:
git clone https://github.com/helpyio/helpy.git
-
Install dependencies:
cd helpy bundle install
-
Set up the database:
rake db:create rake db:migrate
-
Start the server:
rails server
-
Visit
http://localhost:3000
in your browser and follow the setup wizard to configure your Helpy instance.
For more detailed instructions and configuration options, refer to the project's documentation on GitHub.
Competitor Comparisons
A platform for community discussion. Free, open, simple.
Pros of Discourse
- More robust and feature-rich platform for community discussions
- Highly customizable with extensive plugin ecosystem
- Larger and more active community for support and contributions
Cons of Discourse
- Steeper learning curve and more complex setup process
- Higher resource requirements for hosting and maintenance
- May be overkill for simple customer support needs
Code Comparison
Helpy (Ruby on Rails):
class TicketsController < ApplicationController
before_action :authenticate_user!, except: [:index, :show]
respond_to :html, :js
def index
@tickets = Ticket.all.page params[:page]
@page_title = t(:tickets)
end
end
Discourse (Ruby on Rails):
class TopicsController < ApplicationController
requires_login except: [:show, :feed]
before_action :set_topic, only: [:show, :update, :destroy]
def show
@topic_view = TopicView.new(@topic, current_user, params)
perform_show_response
end
end
Both projects use Ruby on Rails, but Discourse's codebase is more complex and extensive, reflecting its broader feature set and scalability focus. Helpy's code is simpler and more focused on basic ticketing functionality.
Open-source live-chat, email support, omni-channel desk. An alternative to Intercom, Zendesk, Salesforce Service Cloud etc. 🔥💬
Pros of Chatwoot
- More active development with frequent updates and contributions
- Supports multiple channels including website, mobile apps, and social media
- Offers a wider range of features like canned responses and custom attributes
Cons of Chatwoot
- More complex setup and configuration process
- Steeper learning curve for new users
- Requires more server resources due to its extensive feature set
Code Comparison
Helpy (Ruby on Rails):
class TicketsController < ApplicationController
before_action :authenticate_user!, except: [:index, :show]
before_action :set_ticket, only: [:show, :edit, :update, :destroy]
# ...
end
Chatwoot (Ruby on Rails):
class ConversationsController < ApplicationController
include Events::Types
include DateRangeHelper
before_action :set_conversation, except: [:index]
before_action :set_inbox, only: [:index]
# ...
end
Both projects use Ruby on Rails, but Chatwoot's codebase appears more modular with additional concerns and helpers. Chatwoot also seems to have a more granular approach to controller actions, potentially offering more flexibility in handling different scenarios.
While both projects aim to provide customer support solutions, Chatwoot offers a more comprehensive and modern approach with multi-channel support and advanced features. However, this comes at the cost of increased complexity and resource requirements. Helpy, on the other hand, may be more suitable for simpler use cases or organizations with limited resources.
Zammad is a web based open source helpdesk/customer support system
Pros of Zammad
- More comprehensive feature set, including advanced ticketing, knowledge base, and reporting
- Active development with frequent updates and a larger community
- Multi-channel support (email, chat, social media, phone)
Cons of Zammad
- Steeper learning curve due to more complex architecture
- Higher resource requirements for installation and operation
- Less focus on simplicity and ease of use for small teams
Code Comparison
Zammad (Ruby on Rails):
class Ticket < ApplicationModel
include HasActivityStreamLog
include ChecksClientNotification
include CanBeImported
include HasHistory
include HasTags
include HasSearchIndexBackend
include HasOnlineNotifications
Helpy (Ruby on Rails):
class Topic < ActiveRecord::Base
include SentenceCase
include Elasticsearch::Model
include Elasticsearch::Model::Callbacks
belongs_to :forum, counter_cache: true
belongs_to :user, counter_cache: true
Both projects use Ruby on Rails, but Zammad's codebase appears more modular with extensive use of concerns. Helpy's code is simpler and more straightforward, reflecting its focus on ease of use for smaller teams.
FreeScout — Free self-hosted help desk & shared mailbox (Zendesk / Help Scout alternative)
Pros of FreeScout
- Self-hosted and open-source, offering more control over data and customization
- Supports multiple brands and mailboxes within a single installation
- Includes a built-in knowledge base feature for customer self-service
Cons of FreeScout
- Less mature project with potentially fewer integrations
- May require more technical expertise to set up and maintain
- Limited community support compared to more established alternatives
Code Comparison
FreeScout (PHP):
public function getConversations($folder, $params = [])
{
$query = Conversation::whereIn('mailbox_id', $this->mailboxesIdsCanView());
$query = $this->filterConversations($query, $folder);
return $this->paginate($query, $params);
}
Helpy (Ruby):
def create
@topic = Topic.new(
name: params[:name],
private: params[:private],
forum_id: params[:forum_id],
user_id: current_user.id,
current_status: 'new'
)
if @topic.save
redirect_to topic_posts_path(@topic)
else
render 'new'
end
end
Both projects use different programming languages, with FreeScout utilizing PHP and Helpy using Ruby. The code snippets demonstrate typical operations in help desk software, such as retrieving conversations and creating topics. FreeScout's code focuses on fetching and filtering conversations, while Helpy's code shows the creation of a new topic. The structure and syntax differ due to the language differences, but both aim to provide similar functionality in their respective help desk systems.
The osTicket open source ticketing system official project repository, for versions 1.8 and later
Pros of osTicket
- More mature and established project with a larger user base
- Offers a wider range of features and customization options
- Supports multiple languages out of the box
Cons of osTicket
- Steeper learning curve due to its complexity
- User interface can feel outdated compared to modern alternatives
- Requires more server resources to run efficiently
Code Comparison
osTicket (PHP):
<?php
class Ticket extends VerySimpleModel {
static $meta = array(
'table' => TICKET_TABLE,
'pk' => array('ticket_id'),
'joins' => array(
'thread' => array(
'constraint' => array('ticket_id' => 'Thread.ticket_id'),
),
),
);
}
Helpy (Ruby):
class Ticket < ActiveRecord::Base
belongs_to :forum, counter_cache: true
belongs_to :user, counter_cache: true
has_many :posts, dependent: :destroy
has_many :votes, as: :voteable
has_one :topic
end
Both projects use object-oriented programming and follow MVC architecture. osTicket uses PHP and a custom ORM, while Helpy is built with Ruby on Rails, utilizing Active Record for database interactions. The code snippets show how ticket models are defined in each project, highlighting the differences in syntax and database relationship declarations.
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
Helpy: A Modern Helpdesk Platform
Helpy is a modern help desk platform written in Ruby on Rails and released under the MIT license. The goal of Helpy is to power your support email and ticketing, integrate seamlessly with your app, and run an amazing customer helpcenter.
Sponsor/Support Helpy
Helpy is licensed under the MIT license, and is an open-core project. This means that the core functionality is 100% open source and fully hackable or even re-sellable under the MIT license. See the features comparison below to understand what is included.
Helpy is a large system and cannot exist purely as a hobby project. If you use it in a money generating capacity, it makes good sense to support the project financially or by becoming an official sponsor or supporter.
https://www.patreon.com/helpyio
Open Source Features
Helpy is an integrated support solution- combining and leveraging synergies between support ticketing, Knowledgebase and a public community. Each feature is optional however, and can be easily disabled.
- Multichannel ticketing: Integrated with inbound email via Sendgrid, Mandrill, Mailgun, etc.
- Knowledgebase: Full text searchable and SEO optimized to help users answer questions before they contact you.
- Mobile-friendly: Support requests come at all times, and Helpy works on all devices out of the box so you can delight customers with prompt answers, from anywhere and at anytime!
- Community Support Forums: Customers and Agents can both answer questions in a publicly accessible forum, and vote both threads and replies up or down accordingly.
- Embed Widget: Helpy Includes a lightweight javascript widget that allows your users to contact you from just about anywhere.
- Multi-lingual: Helpy is fully multi-lingual and can provide support in multiple languages at the same time. Currently the app includes translations for 19 languages and is easy to translate.
- Themeable: Customize the look and functionality of your Helpy without disturbing the underlying system that makes it all work. Helpy comes with two additional themes, and we hope to add more and get more from the community as time goes on.
- Sends HTML email: Responses to customers can include html, emojis and attachments.
- Customizable: Set colors to match your brand both on the helpcenter, and in the ticketing UI.
- GDPR Compliant: Comply with GDPR right to be forgotten requests by deleting users and their history, or by anonymizing them.
Pro Version
We also offer a pro version with additional features designed to make your helpcenter even more awesome. This is available as either a turn-key SaaS or AWS/Azure marketplace product. Both spin up in seconds. Proceeds go directly towards supporting the continued development of the project. Some of the things found in the pro version:
- Triggers: Insert events at any point in the ticket lifecycle. This includes an outbound JSON API.
- Notifications: Browser notifications when new tickets are received, you are assigned to a ticket, etc.
- Real time UI: When tickets arrive, they are automatically added to the UI
- Custom Views: Add additional Ticketing queues to highlight just the tickets you need to see
- Advanced reporting: A suite of additional reports on the performance of your ticketing and helpcenter knowledgebase
- Advanced search: Easily filter and find tickets or customers when you have thousands
- Customizable Request Forms: Easily Add questions to the ticket creation forms
- AI Support Chatbot: Create a chatbot for your website to answer up 90% of tier one questions autonomously
Getting Started:
Helpy Pro - 30 Second one-click install via DigitalOcean
You can launch the free tier of Helpy Pro using the DigitalOcean Marketplace. This "one click" marketplace image spins up a dedicated VM within 30 seconds, running Ubuntu. Launch DigitalOcean Marketplace Image. Use of all features requires either a trial or paid license code, available here: Helpy License Center
Install Helpy via Docker
Docker is the recommended way to quickly test or run Helpy in production.
- Install Docker and docker-compose
- Create config file from template
cp docker/.env.sample docker/.env
and editdocker/.env
to match your needs - Edit
docker/Caddyfile
to include your URL or turn on SSL - Build Helpy from local git checkout
docker-compose build
- Run
docker-compose up -d
to start all of the services
Install Helpy on your Local System
Although not required, installing locally is highly recommended and will make it easier for you to customize things like settings, colors and logos to match your site identity. To begin, clone Helpy from the official repo to your local system:
git clone https://github.com/helpyio/helpy.git
Configure Basic Settings
There is a settings option in the admin panel to set up things like i18n, system names, colors, the embeddable widget, etc. There is a full guide to getting set up at: Configuring Your Helpy Settings
Support Multiple Languages (optional)
Helpy includes support for Multilingual help sites, and multi-language knowledgebase articles. This page explains how to enable Helpy's international capabilities and provides an overview of what functionality this adds to Helpy: How To Set Up A Multilingual Helpy Support Knowledgebase
Set up your Helpy to send and receive email (optional)
Helpy has the ability to receive email at your support email addresses and import the messages as tickets in the web interface. Whenever you or the user replies to the email thread, Helpy captures the discussion and sends out messages accordingly. Follow the tutorial on Setting Up Your Helpy Installation To Send And Receive Email to set this up.
Configure oAuth (optional)
Helpy supports Omniauth login capabilities. This means you can allow your support users to sign in with a single click via any Omniauth provider- ie. Facebook, Twitter, Gmail, or many others. Read Setting Up Oauth For Your Helpy to see how.
Live Demo
There is also a live demo with fake data available at http://demo.helpy.io
Admin User: admin@test.com
and password: 12345678
Installation
Helpy was designed to run on modern cloud providers, although it should work on any linux based system. There is a full guide to installing Helpy in the wiki: https://github.com/helpyio/helpy/wiki
Requirements are:
- Ruby 2.4+
- Rails 4.2.x
- Postgres
- A server like Unicorn, Puma or Passenger
Helpy leverages two external services to help out:
- an email provider like Sendgrid
- Google Analytics for stats (optional)
Contributing
Welcome, and thanks for contributing to Helpy. Together we are building the best customer support platform in the world. Here are some of the ways you can contribute:
- Report or fix Bugs
- Refactoring
- Improve test coverage- As with any large and growing codebase, test coverage is not always as good as it could be. Help improving test coverage is always welcome and will help you learn how Helpy works. We use Minitest exclusively.
- Translate the project- The community has already translated Helpy into 18 languages, but there are many more waiting. We need help getting Helpy translated into as many locales as possible! Please see the guide to translation for more details.
- Build new features. There is a backlog of new features that weâd like to see built. Check out our roadmap for more insight on this, and if you would like to take one on, please get in touch with us to make sure someone is not already working on it.
General Guidelines:
- Join us on Slack. Let me know you wish to contribute.
- Make your PRs granular. They should only include one piece of functionality per PR.
- Check the roadmap: Trello If you want to build a feature, contact us to make sure no one else is already working on it
- You must provide passing test coverage. We use minitest, see http://www.rubypigeon.com/posts/minitest-cheat-sheet/?utm_source=rubyweekly&utm_medium=email
- You also must expose functionality to the API. We use Grape. API methods should be tested as well.
- If your feature/bug fix/enhancement adds or changes text in the project, please create i18n strings in
en.yml
and any other locales you can. - We are hugely concerned with user experience, and a nice UI. Oftentimes that means we may take what you have contributed and âdress it upâ or ask you to do the same.
Security Issues
If you have found a vulnerability or other security problem in Helpy, please do not open an issue on GitHub. Instead, contact [hello@helpy.io](mailto: hello@helpy.io) directly by email. See the SECURITY guide to learn more and see a hall of fame of security reporters.
License
Copyright 2016-2021, Helpy.io, LLC, Scott Miller and Contributors. Helpy Core is released under the MIT open source license. Please contribute back any enhancements you make. Also, I would appreciate if you kept the "powered by Helpy" blurb in the footer. This helps me keep track of how many are using Helpy.
Top Related Projects
A platform for community discussion. Free, open, simple.
Open-source live-chat, email support, omni-channel desk. An alternative to Intercom, Zendesk, Salesforce Service Cloud etc. 🔥💬
Zammad is a web based open source helpdesk/customer support system
FreeScout — Free self-hosted help desk & shared mailbox (Zendesk / Help Scout alternative)
The osTicket open source ticketing system official project repository, for versions 1.8 and later
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot