{"id":28489947,"url":"https://github.com/aksamrat/critiqo","last_synced_at":"2026-04-08T16:03:05.981Z","repository":{"id":295937782,"uuid":"990062950","full_name":"AKsamrat/critiqo","owner":"AKsamrat","description":"A comprehensive platform for users to create accounts, share product reviews with ratings, categorize reviews, and interact with posts through voting and commenting. ","archived":false,"fork":false,"pushed_at":"2025-05-31T15:02:40.000Z","size":3752,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-29T21:37:17.363Z","etag":null,"topics":["html5","javascript","nextjs","nodejs","react","tailwind-css","typrescript"],"latest_commit_sha":null,"homepage":"https://critiqo-frontend.vercel.app/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AKsamrat.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-05-25T12:30:00.000Z","updated_at":"2025-05-31T15:02:44.000Z","dependencies_parsed_at":"2025-06-29T21:43:09.123Z","dependency_job_id":null,"html_url":"https://github.com/AKsamrat/critiqo","commit_stats":null,"previous_names":["aksamrat/critiqo"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/AKsamrat/critiqo","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AKsamrat%2Fcritiqo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AKsamrat%2Fcritiqo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AKsamrat%2Fcritiqo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AKsamrat%2Fcritiqo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AKsamrat","download_url":"https://codeload.github.com/AKsamrat/critiqo/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AKsamrat%2Fcritiqo/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31562697,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-08T14:31:17.711Z","status":"ssl_error","status_checked_at":"2026-04-08T14:31:17.202Z","response_time":54,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["html5","javascript","nextjs","nodejs","react","tailwind-css","typrescript"],"created_at":"2025-06-08T07:06:58.135Z","updated_at":"2026-04-08T16:03:05.976Z","avatar_url":"https://github.com/AKsamrat.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Critiqo 🌟\n\n\u003e A comprehensive platform for users to create accounts, share product reviews with ratings, categorize reviews, and interact with posts through voting and commenting.\n\n[![Live Demo](https://img.shields.io/badge/Live%20Demo-Vercel-brightgreen)](https://critiqo-frontend.vercel.app)\n[![GitHub Repo](https://img.shields.io/badge/GitHub-Repository-blue)](https://github.com/AKsamrat/critiqo)\n[![License](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)\n\n## 📋 Table of Contents\n\n- [Overview](#overview)\n- [Features](#features)\n- [Tech Stack](#tech-stack)\n- [Live Demo](#live-demo)\n- [Installation](#installation)\n- [Usage](#usage)\n- [API Documentation](#api-documentation)\n- [Project Structure](#project-structure)\n- [Environment Variables](#environment-variables)\n- [Contributing](#contributing)\n- [License](#license)\n- [Contact](#contact)\n\n## 🎯 Overview\n\nCritiqo is a modern review platform that allows users to share their experiences with products through detailed reviews and ratings. The platform features premium content with payment integration, community interaction through voting and commenting, and robust admin moderation capabilities.\n\n### Key Highlights\n\n- **User-Centric Design**: Intuitive interface for seamless user experience\n- **Premium Content**: Monetization through premium review features\n- **Community Driven**: Interactive voting and commenting system\n- **Admin Control**: Comprehensive moderation and content management\n- **Scalable Architecture**: Built with modern technologies for performance\n\n## ✨ Features\n\n### 🔐 User Authentication\n- Secure user registration and login\n- JWT-based session management\n- Password reset functionality\n- Profile management\n\n### 📝 Review Management\n- Create comprehensive product reviews with ratings\n- Edit and update existing reviews\n- Delete reviews with proper authorization\n- Rich text editor support\n- Image upload capabilities\n\n### 🏷️ Categories \u0026 Organization\n- Organize reviews into product categories\n- Advanced filtering and search options\n- Sort by ratings, date, popularity\n- Tag-based organization\n\n### 💎 Premium Content\n- Sell premium reviews and content\n- Secure payment processing integration\n- Subscription management\n- Revenue tracking\n\n### 🤝 Interactive Features\n- Upvote and downvote reviews\n- Comment on reviews\n- Reply to comments\n- User reputation system\n\n### 👨‍💼 Admin Moderation\n- Review approval workflow\n- Content moderation tools\n- User management\n- Analytics dashboard\n\n### 🖼️ Media Management\n- Cloudinary integration for image storage\n- Multiple image uploads per review\n- Image optimization and compression\n- Responsive image delivery\n\n### 🔍 Search \u0026 Discovery\n- Advanced search functionality\n- Filter by categories, ratings, and keywords\n- Sort options for better discovery\n- Trending and popular content\n\n## 🛠️ Tech Stack\n\n### Frontend\n- **Next.js** - React framework for production\n- **React** - UI library\n- **TypeScript** - Type-safe JavaScript\n- **Tailwind CSS** - Utility-first CSS framework\n\n### Backend\n- **Node.js** - Runtime environment\n- **Express.js** - Web application framework\n- **TypeScript** - Type-safe server development\n\n### Database \u0026 ORM\n- **PostgreSQL** - Relational database\n- **Prisma** - Next-generation ORM\n\n### Authentication \u0026 Security\n- **JWT** - JSON Web Token authentication\n- **Joi** - Request validation\n- **Bcrypt** - Password hashing\n\n### File Storage \u0026 Processing\n- **Cloudinary** - Image and video management\n- **Multer** - File upload handling\n\n### Deployment \u0026 Infrastructure\n- **Vercel** - Frontend deployment\n- **Railway/Heroku** - Backend hosting\n- **PostgreSQL Cloud** - Database hosting\n\n## 🌐 Live Demo\n\nVisit the live application: **[https://critiqo-frontend.vercel.app](https://critiqo-frontend.vercel.app)**\n\n### Demo Accounts\n- **User Account**: demo@critiqo.com / password123\n- **Admin Account**: admin@critiqo.com / admin123\n\n## 🚀 Installation\n\n### Prerequisites\n\nEnsure you have the following installed:\n- **Node.js** (v14 or higher)\n- **npm** or **yarn** or **pnpm**\n- **PostgreSQL** (local or cloud instance)\n- **Git**\n\n### Step 1: Clone the Repository\n\n```bash\ngit clone https://github.com/AKsamrat/critiqo.git\ncd critiqo\n```\n\n### Step 2: Install Dependencies\n\nFor the frontend:\n```bash\n# Navigate to frontend directory (if separate)\nnpm install\n# or\nyarn install\n# or\npnpm install\n```\n\nFor the backend:\n```bash\n# Navigate to backend directory (if separate)\nnpm install\n# or\nyarn install\n# or\npnpm install\n```\n\n### Step 3: Environment Configuration\n\nCreate a `.env` file in the root directory and add the following variables:\n\n```env\n# Database Configuration\nDATABASE_URL=\"postgresql://username:password@localhost:5432/critiqo\"\nDIRECT_URL=\"postgresql://username:password@localhost:5432/critiqo\"\n\n# JWT Configuration\nJWT_SECRET=\"your-super-secret-jwt-key\"\nJWT_EXPIRES_IN=\"7d\"\n\n# Cloudinary Configuration\nCLOUDINARY_CLOUD_NAME=\"your-cloud-name\"\nCLOUDINARY_API_KEY=\"your-api-key\"\nCLOUDINARY_API_SECRET=\"your-api-secret\"\n\n# Application URLs\nFRONTEND_URL=\"http://localhost:3000\"\nBACKEND_URL=\"http://localhost:5000\"\n\n# Payment Gateway (if applicable)\nSTRIPE_SECRET_KEY=\"your-stripe-secret-key\"\nSTRIPE_PUBLISHABLE_KEY=\"your-stripe-publishable-key\"\n\n# Email Configuration (for notifications)\nEMAIL_SERVICE=\"gmail\"\nEMAIL_USER=\"your-email@gmail.com\"\nEMAIL_PASS=\"your-app-password\"\n```\n\n### Step 4: Database Setup\n\n```bash\n# Generate Prisma client\nnpx prisma generate\n\n# Run database migrations\nnpx prisma migrate dev\n\n# Seed the database (if seed file exists)\nnpx prisma db seed\n```\n\n### Step 5: Start the Development Server\n\n```bash\nnpm run dev\n# or\nyarn dev\n# or\npnpm dev\n# or\nbun dev\n```\n\nThe application will be available at `http://localhost:3000`\n\n## 🎮 Usage\n\n### For Users\n\n1. **Registration/Login**: Create an account or sign in\n2. **Browse Reviews**: Explore product reviews by category\n3. **Create Reviews**: Share your product experiences\n4. **Interact**: Vote on reviews and leave comments\n5. **Premium Content**: Access exclusive premium reviews\n\n### For Admins\n\n1. **Admin Dashboard**: Access admin panel at `/admin`\n2. **Content Moderation**: Review and approve user submissions\n3. **User Management**: Manage user accounts and permissions\n4. **Analytics**: View platform statistics and insights\n\n## 📚 API Documentation\n\n### Authentication Endpoints\n\n```\nPOST /api/auth/register    - User registration\nPOST /api/auth/login       - User login\nPOST /api/auth/logout      - User logout\nGET  /api/auth/profile     - Get user profile\nPUT  /api/auth/profile     - Update user profile\n```\n\n### Review Endpoints\n\n```\nGET    /api/reviews        - Get all reviews\nPOST   /api/reviews        - Create new review\nGET    /api/reviews/:id    - Get specific review\nPUT    /api/reviews/:id    - Update review\nDELETE /api/reviews/:id    - Delete review\n```\n\n### Category Endpoints\n\n```\nGET    /api/categories     - Get all categories\nPOST   /api/categories     - Create new category\nPUT    /api/categories/:id - Update category\nDELETE /api/categories/:id - Delete category\n```\n\n### Interaction Endpoints\n\n```\nPOST   /api/reviews/:id/vote    - Vote on review\nPOST   /api/reviews/:id/comment - Comment on review\nGET    /api/comments/:id        - Get comment\nPUT    /api/comments/:id        - Update comment\nDELETE /api/comments/:id        - Delete comment\n```\n\n## 📁 Project Structure\n\n```\ncritiqo/\n├── 📁 components/          # Reusable UI components\n│   ├── 📁 ui/             # Basic UI components\n│   ├── 📁 forms/          # Form components\n│   └── 📁 layout/         # Layout components\n├── 📁 pages/              # Next.js pages\n│   ├── 📁 api/           # API routes\n│   ├── 📁 auth/          # Authentication pages\n│   └── 📁 admin/         # Admin pages\n├── 📁 lib/               # Utility libraries\n│   ├── 📄 prisma.ts      # Prisma client\n│   ├── 📄 auth.ts        # Authentication utilities\n│   └── 📄 utils.ts       # General utilities\n├── 📁 styles/            # CSS and styling files\n├── 📁 public/            # Static assets\n├── 📁 prisma/            # Database schema and migrations\n│   ├── 📄 schema.prisma  # Database schema\n│   └── 📁 migrations/    # Database migrations\n├── 📄 .env.example       # Environment variables template\n├── 📄 package.json       # Dependencies and scripts\n├── 📄 tailwind.config.js # Tailwind CSS configuration\n├── 📄 next.config.js     # Next.js configuration\n└── 📄 README.md          # Project documentation\n```\n\n## 🌍 Environment Variables\n\n| Variable | Description | Required |\n|----------|-------------|----------|\n| `DATABASE_URL` | PostgreSQL connection string | Yes |\n| `JWT_SECRET` | Secret key for JWT tokens | Yes |\n| `CLOUDINARY_CLOUD_NAME` | Cloudinary cloud name | Yes |\n| `CLOUDINARY_API_KEY` | Cloudinary API key | Yes |\n| `CLOUDINARY_API_SECRET` | Cloudinary API secret | Yes |\n| `FRONTEND_URL` | Frontend application URL | Yes |\n| `BACKEND_URL` | Backend API URL | Yes |\n| `STRIPE_SECRET_KEY` | Stripe payment secret key | Optional |\n| `EMAIL_USER` | Email service username | Optional |\n| `EMAIL_PASS` | Email service password | Optional |\n\n## 🤝 Contributing\n\nWe welcome contributions to Critiqo! Please follow these steps:\n\n1. **Fork the Repository**\n   ```bash\n   git fork https://github.com/AKsamrat/critiqo.git\n   ```\n\n2. **Create a Feature Branch**\n   ```bash\n   git checkout -b feature/your-feature-name\n   ```\n\n3. **Make Your Changes**\n   - Follow the existing code style\n   - Add tests for new features\n   - Update documentation as needed\n\n4. **Commit Your Changes**\n   ```bash\n   git commit -m \"Add: your feature description\"\n   ```\n\n5. **Push to Your Fork**\n   ```bash\n   git push origin feature/your-feature-name\n   ```\n\n6. **Create a Pull Request**\n   - Provide a clear description of changes\n   - Include screenshots if applicable\n   - Reference any related issues\n\n### Development Guidelines\n\n- Use TypeScript for type safety\n- Follow ESLint and Prettier configurations\n- Write meaningful commit messages\n- Add appropriate comments to complex logic\n- Test your changes thoroughly\n\n## 📝 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## 📞 Contact\n\n**Developer**: AKsamrat\n\n- **GitHub**: [@AKsamrat](https://github.com/AKsamrat)\n- **Email**: [samratuap52@gmail.com](mailto:your-email@example.com)\n- **LinkedIn**: [Your LinkedIn Profile](https://www.linkedin.com/in/anuwarul-kabir)\n\n### Project Links\n\n- **Live Demo**: [https://critiqo-frontend.vercel.app](https://critiqo-frontend.vercel.app)\n- **Repository**: [https://github.com/AKsamrat/critiqo](https://github.com/AKsamrat/critiqo)\n- **Issues**: [Report Issues](https://github.com/AKsamrat/critiqo/issues)\n- **Discussions**: [Join Discussions](https://github.com/AKsamrat/critiqo/discussions)\n\n---\n\n\u003cdiv align=\"center\"\u003e\n  \u003cp\u003e⭐ Star this repository if you found it helpful!\u003c/p\u003e\n  \u003cp\u003eMade with ❤️ by \u003ca href=\"https://github.com/AKsamrat\"\u003eAKsamrat\u003c/a\u003e\u003c/p\u003e\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faksamrat%2Fcritiqo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faksamrat%2Fcritiqo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faksamrat%2Fcritiqo/lists"}