Git Product home page Git Product logo

formbricks / formbricks Goto Github PK

View Code? Open in Web Editor NEW
5.5K 5.5K 846.0 183.79 MB

Open Source Survey Platform

Home Page: https://formbricks.com

License: Other

TypeScript 84.75% JavaScript 1.20% CSS 0.50% Dockerfile 0.10% HTML 0.02% MDX 13.07% Shell 0.25% PLpgSQL 0.03% Ruby 0.08%
experience-management form forms hacktoberfest nextjs open-source react reactjs survey survey-analysis survey-data survey-form surveys tailwindcss turborepo typeform typescript xm

formbricks's Introduction

Open Source Privacy First Experience Management Solution Qualtrics Alternative Logo

Formbricks

Harvest user-insights, build irresistible experiences.
Website | Join Discord community

License Join Formbricks Discord Github Stars Hacker News Product Hunt Github Accelerator


Trusted by
clients-hi-res

Trendshift Badge for formbricks/formbricks

โœจ About Formbricks

formbricks-sneak

Formbricks provides a free and open source surveying platform. Gather feedback at every point in the user journey with beautiful in-app, website, link and email surveys. Build on top of Formbricks or leverage prebuilt data analysis capabilities.

Try it out in the cloud at formbricks.com

๐Ÿ’ช Mission: Empower your team, craft an irresistible experience.

Formbricks is both a free and open source survey platform - and a privacy-first experience management platform. Use in-app, website, link and email surveys to gather user and customer insights at every point of their journey. Leverage Formbricks Insight Platform or build your own. Life's too short for mediocre UX.

Table of Contents

Features

  • ๐Ÿ“ฒ Create conversion-optimized surveys with our no-code editor with several question types.

  • ๐Ÿ“š Choose from a variety of best-practice templates.

  • ๐Ÿ‘ฉ๐Ÿป Launch and target your surveys to specific user groups without changing your application code.

  • ๐Ÿ”— Create shareable link surveys.

  • ๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆ Invite your team members to collaborate on your surveys.

  • ๐Ÿ”Œ Integrate Formbricks with Slack, Notion, Zapier, n8n and more.

  • ๐Ÿ”’ All open source, transparent and self-hostable.

Built on Open Source

๐Ÿš€ Getting started

We've got several options depending on your need to help you quickly get started with Formbricks.

โ˜๏ธ Cloud Version

Formbricks has a hosted cloud offering with a generous free plan to get you up and running as quickly as possible. To get started, please visit formbricks.com.

๐Ÿณ Self-hosting Formbricks

Formbricks is available Open-Source under AGPLv3 license. You can host Formbricks on your own servers using Docker without a subscription.

If you opt for self-hosting Formbricks, here are a few options to consider:

Docker

To get started with self-hosting with Docker, take a look at our self-hosting docs.

Community-managed One Click Hosting

Railway

You can deploy Formbricks on Railway using the button below.

Deploy on Railway

RepoCloud

Or you can also deploy Formbricks on RepoCloud using the button below.

Deploy on RepoCloud

๐Ÿ‘จโ€๐Ÿ’ป Development

Prerequisites

Here is what you need to be able to run Formbricks:

Local Setup

To get started locally, we've got a guide to help you.

Gitpod Setup

  1. Click the button below to open this project in Gitpod.

  2. This will open a fully configured workspace in your browser with all the necessary dependencies already installed.

Open in Gitpod

โœ๏ธ Contribution

We are very happy if you are interested in contributing to Formbricks ๐Ÿค—

Here are a few options:

  • Star this repo.

  • Create issues every time you feel something is missing or goes wrong.

  • Upvote issues with ๐Ÿ‘ reaction so we know what the demand for a particular issue is to prioritize it within the roadmap.

Please check out our contribution guide and our list of open issues for more information.

All Thanks To Our Contributors

๐Ÿ“† Contact us

Let's have a chat about your survey needs and get you started.

Book us with Cal.com

๐Ÿ”’ Security

We take security very seriously. If you come across any security vulnerabilities, please disclose them by sending an email to [email protected]. We appreciate your help in making our platform as secure as possible and are committed to working with you to resolve any issues quickly and efficiently. See SECURITY.md for more information.

๐Ÿ‘ฉโ€โš–๏ธ License

The AGPL Formbricks Core

The Formbricks core application is licensed under the AGPLv3 Open Source License. The core application is fully functional and includes everything you need to design & run link surveys, website surveys and in-app surveys. You can use the software for free for personal and commercial use. You're also allowed to create and distribute modified versions as long as you document the changes you make incl. date. The AGPL license requires you to publish your modified version under the AGPLv3 license as well.

The Enterprise Edition

Additional to the AGPL licensed Formbricks core, this repository contains code licensed under an Enterprise license. The code and license for the enterprise functionality can be found in the /packages/ee folder of this repository. This additional functionality is not part of the AGPLv3 licensed Formbricks core and is designed to meet the needs of larger teams and enterprises. This advanced functionality is already included in the Docker images, but you need an Enterprise License Key to unlock it.

White-Labeling Formbricks and Other Licensing Needs

If you have other licensing requirements such as White-Labeling please send us an email.

Why charge for Enterprise Features?

The Enterprise Edition and White-Label Licenses allow us to fund the development of Formbricks sustainably. It guarantees that the open-source surveying infrastructure we're building will be around for decades to come.

๐Ÿ”ผ Back to top

formbricks's People

Contributors

adityadeshlahre avatar anjy7 avatar ankur-datta-4 avatar ashutosh-bhadauriya avatar bilalmirza74 avatar dependabot[bot] avatar dhruwang avatar dtslvr avatar github-actions[bot] avatar gitstart avatar gupta-piyush19 avatar itzabhinavarya avatar jobenjada avatar jonas-hoebenreich avatar joyal007 avatar kapadianaitik avatar kymppi avatar mattinannt avatar meetcpatel avatar moritzrengert avatar neilchauhan2 avatar pandeymangg avatar rotimi-best avatar shubhamkhunt04 avatar shubhampalriwala avatar shyam-raghuwanshi avatar sir-pent avatar sp6370 avatar timothyde avatar ty-kerr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

formbricks's Issues

Display Conditons

Display questions on a condition, e.g. a previous question is filled out or a specific answer was chosen.

Autojump to next question

Autojump to next question on multipage forms

As a user, I want my multipage forms to automatically jump to the next page when a question gets answered. This should only with one multiple choice, dropdowns, ratings or and rating questions when they are the only or last question on a page.

Multiple Image Choice Question

Is your proposal related to a problem?

  • ask for two or more images of things, which one the user likes more

Describe the solution you'd like

  • a user that selected the Multiple Image Choice Question can upload an arbitrary number of images that then get displayed in a grid and are selectable in the final form
  • a user can specify, if only one choice is valid or if a form user can select multiple images

Add ability to create unique use-once survey links

Is your proposal related to a problem?

There is a need to create surveys where individual people can only submit a single response without employing invasive tracking.

Describe the solution you'd like

Once a survey is in place, allow the creation of an arbitrary number of unique, use-only-ones links to the survey. I can then distribute these links to respondents, where they can use the unique links to respond. Once a link has been used, it cannot be used again to submit a response.

Describe alternatives you've considered

There are ways to track responses by users through fingerprinting or tracking IPs, and other things. All of these invade privacy, and should be solved through these unique links instead.

GitHub SSO

Implement GitHub SSO

Allow users to sign-up and login to the snoopHub cloud with their GitHub account.

Navigation on multipage forms

Navigation on multipage forms

As a user I want my respondents to be able to navigate forward and back between questions. When a page contains a required questions they should not be able to go forward and receive an informative hint.

iFrame Embed

Is your proposal related to a problem?

  • A user wants to integrate a no Code form into his own website. They know from other services that they can do this with a iFrame code.

Describe the solution you'd like

  • A user can select an iFrame option when sharing a form
  • A user gets an iframe embed code with the formId and width & height of the iFrame already set.

Add numerical slider question type

Is your proposal related to a problem?

I want respondents to express degrees of importance, e.g. from 0 to 5 with 5 being most important

Describe the solution you'd like

Add a mobile-friendly question type where the respondent can drag a numerical slider to give a quantitative answer. The range of the numbers can be arbitrarily set, and can optionally include decimal digits.

Describe alternatives you've considered

I don't like making the user type in a number!

Refactor No-Code Editor to work directly with the Schema

We currently have a dedicated database table for the No-Code Editor. For upcoming features the Code and No-Code functionality get united more and we see the Schema as the center piece of this.

Todo:

  • Modify No-Code Editor to edit the schema directly
  • Add a migration to migrate existing No-Code usecases to the new approach.

Send confirmation email to respondent

Confirmation emails to respondents

As a user, I want to send my respondents an email after they completed the form. I want to change the content of the confirmation. Ideally, I can update the layout so it fits my corporate design.

This only applies when the form has an email field.

NPS-type question

NPS-type question

As a user I want to have a good way to measure if users like my business. To do this a standardized way is to use an NPS (Net promoter score) question. The way a NPS question works is always the same, e.g.

On a scale of 0 to 10, how likely are you to recommend our business to a friend or colleague?

For that the user needs to be presented with 11 buttons (0-10) and need to select one. In the React-Library we already have the question type cards for these buttons.

For analysis, the NPS question needs to present an NPS score and the number of detractors and promoters in the summary:
https://delighted.com/nps-calculator

Google SSO

Implement Google SSO

As a user I want to use my Google account - including my Google Workspaces account - to log in to the hosted snoopForms.

API Docs

Add comprehensive API Docs

As a developer working with snoopHub and snoopReact, I want to have access to well-written and comprehensive API docs.

Red asterisk for required fields shows for optional fields

Issue Summary

Making a field optional still shows the red asterisk when coming back to the form.

Steps to Reproduce

  1. create form with no-code builder
  2. mark a field as optional (for example the default field when a new form is created)
  3. refresh

The red asterisk is back again. However, the field is still considered optional (form can be submitted without it, "click to tune" shows the mandatory button asterisk in black instead of blue)

Environment

  • snoopForms Cloud (app.snoopforms.com)
  • self-hosted snoopForms, version/commit: 64d84b6

Additional Context

Firefox 104.0 (64-bit)

Redirect on completion

Redirect form visitor after completing the form

As a user, I want to send the people filling out my form to a certain URL. I want to specifiy for every form differently.

To solve this, we can integrate a redirect option in the No-Code-Editor in the Form Settings. If set, the user should be redirected to the website provided by the form creator. To achieve this, we can use the onSubmit action of the snoopForms react package.

Receive payments via Stripe

Receive payments via Stripe

As a user I want to receive Creditcard payments in my form. I want to connect snoopForms with Stripe to receive the payment.

โญ-type question

โญ-type question

As a user I want to ask a question with 5 stars. The repsondents should be able to click on a star to vote how much they liked something.

Delete submissions

Delete Form Submissions

As a user I would like to delete submissions. I would like to delete single submissions, a set of submissions and all submissions.

Unpublish forms

Unpublish forms

As a user I want to unpublish forms so that noone can access them anymore even when they have the link. Instead, it should show a generic "Form not available anymore" page.

Conditional form page redirects (branching)

Conditional form page redirects

As a user I want to branch my form traffic based on the respondents answers. For example, if one respondents selects A I want to send them to the following page, if they select B I want to send them to page Y.

Date-picker

Add Date-picker

As a user I want to allow respondents to pick a date in a calendar.

This feature needs to be added to the snoopforms-react library as well. Here also things like package-size & customisability needs to be considered.

Snoopforms self hosted docker version not supported on Mac M1

Issue Summary

I've tried to launch the docker file on my Mac M1 but I have the following error:

[+] Building 2.4s (16/23)                                                                                                                                                 
 => [internal] load build definition from Dockerfile                                                                                                                 0.0s
 => => transferring dockerfile: 1.18kB                                                                                                                               0.0s
 => [internal] load .dockerignore                                                                                                                                    0.0s
 => => transferring context: 2B                                                                                                                                      0.0s
 => [internal] load metadata for docker.io/library/node:16-alpine                                                                                                    1.6s
 => [auth] library/node:pull token for registry-1.docker.io                                                                                                          0.0s
 => [internal] load build context                                                                                                                                    0.0s
 => => transferring context: 12.72kB                                                                                                                                 0.0s
 => [runner  1/10] FROM docker.io/library/node:16-alpine@sha256:2c405ed42fc0fd6aacbe5730042640450e5ec030bada7617beac88f742b6997b                                     0.0s
 => CACHED [runner  2/10] WORKDIR /app                                                                                                                               0.0s
 => CACHED [runner  3/10] RUN addgroup -g 1001 -S nodejs                                                                                                             0.0s
 => CACHED [runner  4/10] RUN adduser -S nextjs -u 1001                                                                                                              0.0s
 => CACHED [builder 3/6] COPY . .                                                                                                                                    0.0s
 => CACHED [deps 2/5] RUN apk add --no-cache libc6-compat                                                                                                            0.0s
 => CACHED [deps 3/5] WORKDIR /app                                                                                                                                   0.0s
 => CACHED [deps 4/5] COPY package.json yarn.lock ./                                                                                                                 0.0s
 => CACHED [deps 5/5] RUN yarn install --frozen-lockfile                                                                                                             0.0s
 => CACHED [builder 4/6] COPY --from=deps /app/node_modules ./node_modules                                                                                           0.0s
 => ERROR [builder 5/6] RUN yarn prisma generate                                                                                                                     0.7s
------                                                                                                                                                                    
 > [builder 5/6] RUN yarn prisma generate:                                                                                                                                
#16 0.317 yarn run v1.22.19
#16 0.349 $ /app/node_modules/.bin/prisma generate
#16 0.637 Error: Unknown binaryTarget linux-arm64-openssl-undefined and no custom engine files were provided
#16 0.655 error Command failed with exit code 1.
#16 0.655 info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
------
failed to solve: rpc error: code = Unknown desc = executor failed running [/bin/sh -c yarn prisma generate]: exit code: 1

Steps to Reproduce

git clone https://github.com/snoopForms/snoopforms.git && cd snoopforms
cp .env.example .env && nano .env
docker compose up -d

Any other relevant information. For example, why do you consider this a bug and what did you expect to happen instead?
-->

(Write your answer here.)

Environment

self-hosted snoopForms las version

Additional Context

I've tried to resolve without success with this link https://stackoverflow.com/questions/66530969/docker-compose-up-issue-using-docker-apple-m1

I've changed node:16-alpine to node:lts and adapt the apk commands...

Any idea?

[Bug Report] It breaks down if I alter a form which has submissions before

How to reproduce it?

Step1 Build a nocode form with 2 questions

1

Step2 Make a submission and check the Summary Tab, it works well

2

Step3 Alter the form by deleting the question Q1

3

Step4 Before make a new submission, go to check the Summary Tab, it still works well

4

Step5 Make a new submission, go to check the Summary Tab, it breaks down

5

Add help text to questions

Give users the option to add more informations below the input field, e.g. tell the users how to fill out these information.

Handling signatures

Handling signatures in forms

As a user I want respondents to be able to sign off the answers they previously gave with a digtial signature.

Book a time-question

Book a time-question

As a user I want my respondents to be able to book a time in my calendar. I want to connect my cal.com / Calendly / etc. account with snoopForms so that the respondents can quickly book a time. In the connection process I want to be able to select the Event they book their time with.

Support for HTML Formdata

Give users the option to send data from a simple HTML form to snoopForms. These forms don't have a schema at that point and so the user miss out on additional features/analytics that the schema provides.

File upload

Add File-upload question type

As a user, I want to enable respondents to upload and attach a file to their submission. For this we need to add an UploadQuestion Type to the No-Code Editor, be able to store files of the users and let the form creator download the provided files.

Reset password

Password Reset

As a user I want to reset my password when I forgot it.

What needs to be done:

  • build a new "forgot password" view where a user can enter his email address and request a new password.

client-side exception on analytics page

uBlock origin blocks this URL (https://app.snoopforms.com/_next/data/ZObSlVPulsX2PbV4kEorp/forms/<form-id>/results/analytics.json?id=<form-id>) and that causes a client-side exception on https://app.snoopforms.com/forms/<form-id>/results/analytics.
image

Renaming analytics.json to insights.json or something else should fix this

Custom domain

Show form under custom domain

As a user I want my form to sit under a custom domain. I don't want users to leave my page or get the impression I am sending them to a different website then my own.

Export to Google Sheets

Add a Google Sheets integration to send incoming submissions to Google Sheets automatically

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.