Skip to content

Latest commit

Β 

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ’¬ Feedback Hub

Build and Deploy Node Version React 18 MIT License


🌟 1. Project Overview

Feedback Hub is an interactive, responsive customer satisfaction rating and analytics dashboard built with modern React. It provides businesses and creators with an intuitive interface to collect instant user sentiment across positive πŸ‘, neutral πŸ‘Œ, and critical πŸ‘Ž categories while calculating real-time satisfaction ratios and key performance indicators πŸ“ˆ. The application features a sleek dark-mode glassmorphic interface, smooth micro-animations ✨, accessible landmarks, and instant feedback computation ⚑.


πŸ› οΈ 2. Tech Stack

  • βš›οΈ Framework & Core: React 18.3 (Hooks, Strict Mode), React DOM
  • ⚑ Bundler & Tooling: Create React App (react-scripts 5.x)
  • 🎨 Styling: Scoped CSS Modules, Vanilla CSS Design System with custom CSS variables & glassmorphism
  • πŸ”€ Typography & Icons: Inter (Google Fonts), custom minimalist vector icon system
  • 🧹 Code Quality: ESLint (react-app), Prettier
  • πŸš€ CI/CD & Deployment: GitHub Actions with automatic deployment to GitHub Pages

βš™οΈ 3. Prerequisites

Ensure you have the following installed on your machine before running the application:

  • 🟒 Node.js: v20.0.0 or higher (LTS recommended, tested with Node v20 & v24)
  • πŸ“¦ npm: v10.0.0 or higher (bundled with Node.js)
  • πŸ™ Git: Latest version

πŸš€ 4. Getting Started

Follow these steps to set up and run the project locally:

1. πŸ“₯ Clone the repository

git clone https://github.com/iberikofer/react-feedback-page.git
cd react-feedback-page

2. πŸ” Configure Environment Variables

Copy the sample environment file to create your local .env:

# On Linux / macOS
cp .env.example .env

# On Windows PowerShell
Copy-Item .env.example .env

3. πŸ“¦ Install Dependencies

Install the required project dependencies:

npm install

4. ▢️ Start Development Server

Launch the local development server:

npm run dev
# or
npm start

Open your browser and navigate to http://localhost:3000 to interact with the application.

5. πŸ—οΈ Build for Production

To compile and bundle optimized production assets:

npm run build

Production assets are generated in the /build directory.

6. πŸ” Lint Code

Run the code quality linter:

npm run lint
# Auto-fix lintable issues
npm run lint:fix

πŸ”‘ 5. Environment Variables

The project includes pre-configured environment parameters. Variables accessible to React client code must begin with the REACT_APP_ prefix.

🏷️ Variable Name πŸ“Œ Required βš™οΈ Default Value πŸ“ Description
REACT_APP_TITLE No Feedback Hub Custom header and application name
REACT_APP_DESCRIPTION No Interactive customer feedback rating... Application description for meta tags
PUBLIC_URL No https://iberikofer.github.io/react-feedback-page/ Base deployment path on GitHub Pages

πŸ“‚ 6. Project Structure

react-feedback-page/
β”œβ”€β”€ .github/
β”‚   └── workflows/
β”‚       └── deploy.yml          # πŸš€ GitHub Actions CI/CD deployment pipeline
β”œβ”€β”€ public/
β”‚   β”œβ”€β”€ favicon.ico             # πŸ–ΌοΈ Browser favicon icon
β”‚   └── index.html              # 🌐 HTML5 entry document with font preconnect
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ components/
β”‚   β”‚   β”œβ”€β”€ App.jsx             # πŸ“± Root application component with state & layout
β”‚   β”‚   β”œβ”€β”€ App.module.css      # 🎨 Scoped layout, header, card, and footer styles
β”‚   β”‚   β”œβ”€β”€ index.js            # πŸ“¦ Barrel export module
β”‚   β”‚   β”œβ”€β”€ FeedbackOptions/
β”‚   β”‚   β”‚   β”œβ”€β”€ FeedbackOptions.jsx         # πŸ”˜ Interactive rating button group
β”‚   β”‚   β”‚   └── FeedbackOptions.module.css  # ✨ Button variants & hover micro-interactions
β”‚   β”‚   β”œβ”€β”€ Notification/
β”‚   β”‚   β”‚   β”œβ”€β”€ Notification.jsx            # πŸ“­ Empty-state feedback notification
β”‚   β”‚   β”‚   └── Notification.module.css     # πŸ’« Notification styling & fade animation
β”‚   β”‚   β”œβ”€β”€ Section/
β”‚   β”‚   β”‚   β”œβ”€β”€ Section.jsx                 # πŸ“‘ Semantic HTML5 section landmark
β”‚   β”‚   β”‚   └── Section.module.css          # πŸ“ Section heading & container styles
β”‚   β”‚   └── Statistics/
β”‚   β”‚       β”œβ”€β”€ Statistics.jsx              # πŸ“Š Sentiment progress gauge & metric cards
β”‚   β”‚       └── Statistics.module.css       # πŸ“ˆ Dynamic satisfaction bar & KPI grid
β”‚   β”œβ”€β”€ index.css               # 🎨 Design system tokens, variables & dark mode reset
β”‚   └── index.js                # ⚑ React 18 createRoot application bootstrap
β”œβ”€β”€ .editorconfig               # πŸ“ Cross-editor formatting standardization
β”œβ”€β”€ .env.example                # πŸ”’ Sample environment configuration
β”œβ”€β”€ .gitignore                  # πŸ™ˆ Comprehensive stack-specific ignore rules
β”œβ”€β”€ .prettierrc.json            # πŸ’… Prettier code formatting rules
β”œβ”€β”€ jsconfig.json               # πŸ—ΊοΈ JavaScript path mapping configuration
β”œβ”€β”€ package.json                # πŸ“‹ Project dependencies, scripts & metadata
└── README.md                   # πŸ“– Project documentation

🀝 7. Contributing

Contributions, issues, and feature requests are welcome!

  1. 🍴 Fork the Project.
  2. 🌿 Create your Feature Branch (git checkout -b feature/AmazingFeature).
  3. πŸ’Ύ Commit your Changes (git commit -m 'Add some AmazingFeature').
  4. πŸ“€ Push to the Branch (git push origin feature/AmazingFeature).
  5. πŸ”€ Open a Pull Request.

πŸ“œ 8. License

This project is licensed under the MIT License - see the LICENSE file for details.

About

πŸ“Š Interactive feedback and review management web app built with React, featuring state-driven rating metrics and dynamic statistics.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Used by

Contributors

Languages