ChangeScout is a powerful, open-source web monitoring tool that helps you track changes on websites with advanced customization and notification capabilities.
- Track changes on any website
- Flexible scheduling with cron expressions
- Multiple monitoring modes (HTML, JSON)
- Custom HTTP request settings
- Selective content extraction
- Advanced processing options:
- Deduplication
- Trimming
- Sorting
- CSS/JSON path selection
- Multiple notification channels
- Currently supports Telegram
- Easy setup and configuration
- Microservice architecture
- GraphQL API
- Robust diff detection
- Scalable design
- Go 1.23
- GraphQL (gqlgen)
- SQLite
- Echo Framework
- Watermill for messaging
- JWT Authentication
- React
- TypeScript
- Tailwind CSS
- Apollo Client
- Vite
- Go 1.23+
- Bun (for frontend)
- Docker (optional)
- Clone the repository
git clone https://github.com/gelleson/changescout.git
cd changescout
- Set up environment
# Create .env file
cp .env.example .env
# Install backend dependencies
go mod download
# Install frontend dependencies
cd web && bun install
- Run the application
# Start backend
just start
# Start frontend development
just dev
ChangeScout offers extensive configuration options through:
- Environment variables
- CLI flags
- GraphQL API
Contributions are welcome! Please see CONTRIBUTING.md
- Fork the repository
- Create a feature branch
- Write tests
- Ensure CI passes
- Submit a pull request
No stars yet :(
If you find ChangeScout useful, consider:
- ⭐ Starring the repository
- � Financial Support via GitHub Sponsors
- 🐛 Reporting issues
- 📝 Improving documentation