A modern, full-stack feedback management system with intelligent processing and real-time analytics
Feedo is a comprehensive feedback management platform built with a modern, modular architecture. It combines a sleek React frontend, a robust Node.js backend, and an intelligent Python processing engine to deliver seamless feedback collection, analysis, and insights.
What makes Feedo special?
- π Modern, responsive UI built with React and Tailwind CSS
- β‘ Real-time feedback processing and analysis
- π§ Intelligent data processing with Python
- π Automated scoring and analytics
- π Secure and scalable architecture
- Intuitive Interface - Clean, responsive design with shadcn/ui components
- Real-time Updates - Instant feedback submission and processing
- Rich Analytics - Visual dashboards and insights
- Multi-platform - Works seamlessly across devices
- RESTful API - Well-structured backend for data persistence
- Background Processing - Dedicated Python processor for heavy computations
- Type Safety - Full TypeScript support for robust development
- Hot Reloading - Fast development with Vite's HMR
- Modular Architecture - Clean separation of concerns
- React - UI library for building interactive interfaces
- TypeScript - Type-safe JavaScript
- Vite - Next-generation frontend tooling
- Tailwind CSS - Utility-first CSS framework
- shadcn/ui - Accessible component library
- Node.js - JavaScript runtime
- Express.js - Web application framework
- RESTful API - Standard API architecture
- Python - High-level programming language
- Background Tasks - Asynchronous data processing
- Analytics Engine - Scoring, analysis, and cleanup operations
Make sure you have the following installed:
-
Clone the repository
git clone https://github.com/Shark-Bot-X/Feedo.git cd Feedo -
Configure environment variables
Create a
.envfile in the project root:# Add your environment variables here # Example: # DATABASE_URL=your_database_url # API_KEY=your_api_key # PORT=3000
-
Install dependencies
Frontend (root directory):
npm install # or bun installBackend:
cd backend npm install # or bun install cd ..
Python Processor:
# Recommended: Create a virtual environment python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate # Install dependencies pip install -r requirements.txt
To run the complete Feedo application, you need to start all three services. Open three separate terminal windows and run:
npm run devThe frontend will be available at http://localhost:5173 with hot-reloading enabled.
cd backend
node server.jsNote: If your entry file is different (e.g.,
index.js), adjust the command accordingly.
The API server will start on the configured port (default: http://localhost:3000).
# Activate virtual environment if you created one
source venv/bin/activate # On Windows: venv\Scripts\activate
python feedback_processor.pyThis runs the Python script for background processing, scoring, and analysis tasks.
npm run dev # Start frontend development server
npm run build # Build frontend for production
npm run preview # Preview production build
npm run lint # Run linterFeedo/
βββ src/ # Frontend source code
β βββ components/ # React components
β βββ pages/ # Application pages
β βββ hooks/ # Custom React hooks
β βββ lib/ # Utility functions
β βββ App.tsx # Root component
βββ backend/ # Backend source code
β βββ routes/ # API routes
β βββ controllers/ # Route controllers
β βββ models/ # Data models
β βββ middleware/ # Custom middleware
β βββ server.js # Entry point
βββ public/ # Static assets
βββ feedback_processor.py # Python processing script
βββ requirements.txt # Python dependencies
βββ package.json # Node.js dependencies & scripts
βββ vite.config.ts # Vite configuration
βββ tailwind.config.js # Tailwind CSS configuration
βββ tsconfig.json # TypeScript configuration
βββ README.md # This file
Contributions are welcome! Whether it's bug reports, feature requests, or code contributions, we appreciate your help in making Feedo better.
- Fork the repository
- Create a feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
- Follow the existing code style and conventions
- Write clear, descriptive commit messages
- Add tests for new features when applicable
- Update documentation as needed
- Ensure all tests pass before submitting
Found a bug or have a feature request? Please open an issue with:
- A clear and descriptive title
- Steps to reproduce (for bugs)
- Expected vs actual behavior
- Screenshots if applicable
This project is licensed under the MIT License - see the LICENSE file for details.
Made with β€οΈ by Sharky