Feedboard is a free, open-source, and self-hosted customer feedback tool designed to help you collect, organize, and prioritize feedback from your customers.
With Feedboard, you can easily gather insights from your user base, track feature requests, and manage your product roadmap more effectively.
- Create multiple projects to manage feedback for different products or services
- Within each project, organize feedback into categories or boards
- Each board can have posts or feedback items added to it
- Assign statuses to posts, such as "Planned," "In Progress," or "Completed"
- Easily track the progress of feature requests or bug reports
- Create visual roadmaps to showcase your product's upcoming features
- Link posts or feedback items to specific roadmap items
- Keep your users informed about your development plans
- Allow users to upvote posts, indicating the popularity of a feature request
- Enable commenting on posts for further discussion and clarification
- Clone the repository:
git clone https://github.com/Swanand01/feedboard.git
- Install dependencies:
npm install
- Configure the application by updating the
.env
file. Please refer to the Environment Variables section below. - Apply prisma migrations:
npm run prisma:migrate:dev
- Generate prisma types:
npm run prisma:generate
- Create the superuser:
npm run create-superuser
- Start the server:
npm run dev
- Start the onboarding process at the
/onboarding
route
To run this project, you will need to add the following environment variables to your .env file
DATABASE_URL
: The URL of the local Postgres database.
GOOGLE_CLIENT_ID
: Google OAuth Client ID.
GOOGLE_CLIENT_SECRET
: Google OAuth Client Secret.
SUPERUSER_EMAIL
: Email address of the user you wish to make superuser.
SESSION_SECRET
: A randomly generated string used for securely signing session cookies.
- Feel free to customise the resources as per your requirement.
- Configure the environment variables. If you choose to proceed with DigitalOcean Postgres instance, you don't need to edit the
DATABASE_URL
variable. - Once deployed, start the onboarding process at the
/onboarding
route.
-
- Go to https://console.cloud.google.com/
- Select a project or create a new one.
- Once the project is selected, go to https://console.cloud.google.com/apis/credentials
- Open the Credentials tab from the sidebar
- Click on Create Credentials and select OAuth client ID.
- Select Application type as Web application.
- Name your application.
- In the Authorised redirect URIs section, click on ADD URI and add http://localhost:3000/auth/google/callback
Note: The port may be different for you.
- Click on CREATE.
- You will now get your
GOOGLE_CLIENT_ID
andGOOGLE_CLIENT_SECRET
. Copy them to your.env
file.
-
Please read this.
-
No, you can use any managed Postgres. Just make sure to set the
DATABASE_URL
environment variable accordingly while deploying.
We welcome contributions from the community! If you'd like to contribute to Feedboard, please follow these steps:
- Fork the repository
- Create a new branch:
git checkout -b my-new-feature
- Make your changes and commit them:
git commit -am 'Add some feature'
- Push to the branch:
git push origin my-new-feature
- Submit a pull request
If you have any feedback, please create a new issue, or head over to Feedboard's Feedboard.