A comprehensive web-based ORM (Online Reputation Management) tracking and analysis system designed to monitor, analyze, and report online reputation progress for multiple clients.
- Multi-tenant Architecture: Isolated datasets per client
- Automated Weekly Scanning: Google Custom Search API integration
- AI-Powered Sentiment Analysis: OpenAI GPT integration
- Rank Comparison Engine: Tracks link movements (Up, Down, New, Disappeared)
- Professional Report Generation: PDF and Excel exports with AI summaries
- Real-time Dashboards: Beautiful, responsive UI with modern design
- Admin: Manage clients, keywords, trigger scans, view all reports
- Client: View personalized dashboard, download reports, track progress
- Track keywords across multiple regions (US, UK, UAE, etc.)
- Sentiment classification (Positive, Negative, Neutral, Unrelated)
- Movement detection and tracking
- Automated weekly scanning with CRON jobs
- Professional report generation with charts and AI summaries
- Modern, corporate UI with Ace Reputations branding
- Node.js with Express.js
- MongoDB with Mongoose ODM
- JWT authentication
- Google Custom Search API for web scraping
- OpenAI API for sentiment analysis and summaries
- PDFKit and ExcelJS for report generation
- Node-cron for automated scanning
- React.js with modern hooks
- TailwindCSS for styling
- Framer Motion for animations
- React Router for navigation
- Axios for API calls
- Recharts for data visualization
- Node.js (v14 or higher)
- MongoDB (local or cloud)
- Google Custom Search API key
- OpenAI API key
-
Clone the repository
git clone <repository-url> cd acetrack-orm
-
Install dependencies
npm run install-all
-
Environment Setup
# Copy environment files cp server/.env.example server/.env # Edit server/.env with your API keys MONGODB_URI=mongodb://localhost:27017/acetrack JWT_SECRET=your-super-secret-jwt-key GOOGLE_API_KEY=your-google-api-key GOOGLE_SEARCH_ENGINE_ID=your-search-engine-id OPENAI_API_KEY=your-openai-api-key
-
Start the application
# Development mode (both frontend and backend) npm run dev # Or start individually npm run server # Backend only npm run client # Frontend only
- Go to Google Cloud Console
- Enable the Custom Search API
- Create a Custom Search Engine at cse.google.com
- Get your API key and Search Engine ID
- Sign up at OpenAI
- Get your API key from the dashboard
- Add it to your environment variables
- Users: Authentication and role management
- Clients: Client information and subscription details
- Keywords: Tracked keywords per client
- Scans: Scan execution records
- ScanResults: Individual search results with sentiment
- Reports: Generated reports with statistics
- Create Clients: Add client information and subscription details
- Manage Keywords: Add keywords for tracking across regions
- Trigger Scans: Run manual scans or let automation handle it
- Monitor Results: View scan results and sentiment analysis
- Generate Reports: Create and download professional reports
- Login: Access personalized dashboard
- View Progress: Track campaign progress and statistics
- Download Reports: Get PDF and Excel reports
- Monitor Regions: Switch between different regions
The system includes automated features:
- Weekly CRON Jobs: Automatic scanning every Monday at 9 AM
- Sentiment Analysis: AI-powered classification of search results
- Report Generation: Automatic report creation after scans
- Movement Detection: Automatic comparison with previous scans
- Links Removed: Negative content successfully removed
- De-Indexed: Content removed from search results
- Suppressed: Negative content pushed down in rankings
- New Positive Links: Positive content appearing in search results
- Sentiment Score: Overall reputation health metric
- Modern Design: Clean, corporate interface
- Responsive Layout: Works on all devices
- Smooth Animations: Framer Motion integration
- Real-time Updates: Live data refresh
- Professional Branding: Ace Reputations theme
- JWT Authentication: Secure token-based auth
- Role-based Access: Admin and client separation
- Data Isolation: Client data separation
- API Rate Limiting: Prevents abuse
- Input Validation: Secure data handling
POST /api/auth/login- User loginGET /api/auth/me- Get current userPUT /api/auth/change-password- Change password
GET /api/clients- List all clients (admin)POST /api/clients- Create client (admin)PUT /api/clients/:id- Update client (admin)DELETE /api/clients/:id- Delete client (admin)
GET /api/keywords- List keywordsPOST /api/keywords- Create keywordPUT /api/keywords/:id- Update keywordDELETE /api/keywords/:id- Delete keyword
POST /api/scans/trigger- Trigger manual scanGET /api/scans- List scansGET /api/scans/:id/results- Get scan results
GET /api/reports- List reportsGET /api/reports/:id/download/pdf- Download PDFGET /api/reports/:id/download/excel- Download Excel
- Environment Variables: Set production values
- Database: Use MongoDB Atlas or production MongoDB
- File Storage: Configure upload paths
- SSL: Enable HTTPS
- Monitoring: Set up logging and monitoring
# Build and run with Docker
docker-compose up -d- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
This project is proprietary software owned by Ace Reputations.
For support and questions:
- Email: support@acereputations.com
- Documentation: [Internal Wiki]
- Issues: [GitHub Issues]
- Real-time Scanning: Daily instead of weekly
- ORM Risk Score: AI-generated risk assessment
- Automated Recommendations: AI-powered suggestions
- Email Alerts: Notification system
- Multi-search Engine: Bing, Yahoo, DuckDuckGo integration
- Executive Summaries: AI-written overviews
AceTrackโข - Professional ORM Management Platform ยฉ 2024 Ace Reputations. All rights reserved.