Skip to content

minisource/feedback

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 

Minisource Feedback

Multi-tenant feedback and feature request management platform. Enables users to submit feedback, vote on features, and track product improvements.

Repository Structure

This is a monorepo containing three projects:

feedback/
├── backend/      # Go API server (Fiber + MongoDB)
├── admin/        # Admin dashboard (Planned)
└── user/         # User-facing feedback portal (Next.js)

Projects

Backend (API Server)

The backend service provides REST APIs for feedback management.

  • Tech Stack: Go 1.24, Fiber v2, MongoDB
  • Port: 5012
  • Features: Multi-tenant, OAuth2, voting, subscriptions, moderation
cd backend
cp .env.example .env
make run

See backend/README.md for detailed documentation.

User Portal (Frontend)

User-facing web application for submitting and viewing feedback.

  • Tech Stack: Next.js 15, React, TypeScript, Tailwind CSS
  • Port: 3002
cd user
cp .env.example .env
npm install
npm run dev

Admin Dashboard (Planned)

Administration dashboard for managing feedback and moderation.

  • Status: 🚧 Not yet implemented
  • Planned Tech: Next.js, React Admin

Quick Start

With Docker Compose

Images are published to Docker Hub on every successful build to main.

Image Tags
minisource/feedback-backend latest, commit SHA
minisource/feedback-user latest, commit SHA
# Production (pre-built images)
export TAG=latest
docker compose -f backend/docker-compose.prod.yml up -d
cd user && docker compose up -d

# Local development (build from source)
docker compose -f backend/docker-compose.yml up -d

GitHub Actions secrets

  • DOCKERHUB_USERNAME — Docker Hub username
  • DOCKERHUB_TOKEN — Docker Hub access token

Development Setup

# 1. Start backend
cd backend
cp .env.example .env
make docker-up

# 2. Start user portal
cd ../user
cp .env.example .env
npm install
npm run dev

Architecture

┌─────────────────────────────────────────────────────────┐
│                    User Portal (:3002)                   │
│                     (Next.js)                            │
└─────────────────────────┬───────────────────────────────┘
                          │
                          ▼
┌─────────────────────────────────────────────────────────┐
│                 Feedback Backend (:5012)                 │
│                    (Go + Fiber)                          │
├─────────────────────────────────────────────────────────┤
│  ┌─────────┐  ┌─────────┐  ┌─────────┐  ┌─────────┐    │
│  │Feedback │  │ Voting  │  │Category │  │Moderate │    │
│  │ CRUD    │  │ System  │  │ Mgmt    │  │  Queue  │    │
│  └─────────┘  └─────────┘  └─────────┘  └─────────┘    │
└─────────────────────────┬───────────────────────────────┘
                          │
        ┌─────────────────┼─────────────────┐
        ▼                 ▼                 ▼
  ┌───────────┐    ┌───────────┐     ┌───────────┐
  │  MongoDB  │    │   Auth    │     │  Notifier │
  │           │    │  Service  │     │  Service  │
  └───────────┘    └───────────┘     └───────────┘

Features

User Features

  • Submit feedback with categories
  • Vote on feedback (upvote/downvote)
  • Subscribe to feedback updates
  • View public roadmap
  • Comment on feedback

Admin Features

  • Moderate feedback submissions
  • Manage categories
  • Official responses
  • Analytics dashboard
  • Export functionality

API Overview

Endpoint Method Description
/api/v1/feedback GET List feedback
/api/v1/feedback POST Create feedback
/api/v1/feedback/:id GET Get feedback
/api/v1/feedback/:id/vote POST Vote on feedback
/api/v1/feedback/:id/subscribe POST Subscribe
/api/v1/categories GET List categories
/api/v1/admin/moderate POST Moderate feedback

Configuration

Backend Environment Variables

Variable Description
MONGODB_URI MongoDB connection string
AUTH_URL Auth service URL
NOTIFIER_URL Notifier service URL
SERVER_PORT API server port (5012)

User Portal Environment Variables

Variable Description
NEXT_PUBLIC_API_URL Backend API URL
NEXT_PUBLIC_AUTH_URL Auth service URL

Development

Prerequisites

  • Go 1.24+ (for backend)
  • Node.js 20+ (for frontends)
  • MongoDB 7+
  • Docker & Docker Compose

Running Tests

# Backend tests
cd backend
make test

# User portal tests
cd user
npm test

License

MIT

About

Feedback collection and survey backend for user insights

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages