Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

84 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🎟️ VoucherBot

An intelligent certification voucher aggregator

Continuously monitors community and official sources for certification discounts, free exam opportunities, beta exams, and promotional campaigns.

Python License Deploy Status


Table of Contents


Overview

VoucherBot is a program that automatically hunts for certification exam discounts across the internet β€” so you don't have to. Instead of manually checking dozens of websites, blogs, forums, and communities yourself, VoucherBot does it all in the background, filters out irrelevant results, and emails you whenever it finds a legitimate certification promotion.

The whole thing runs in the cloud (on a free service called Render), so once it's set up, it runs 24/7 without your computer needing to be on.


What You'll Need

Before you begin, you'll need to create free accounts on five websites. Don't worry β€” each one has a step-by-step guide below, and none of them require any payment information to get started.

Service What it does
Groq The AI brain of VoucherBot β€” reads posts it finds and decides if they contain real voucher offers
Supabase The database β€” stores everything VoucherBot discovers so it doesn't notify you about the same thing twice
Resend The email sender β€” delivers voucher notifications to your inbox
Google Gemini A backup AI brain β€” automatically takes over if Groq has any issues
Reddit Where VoucherBot looks for voucher posts β€” you need to give it permission to read Reddit

You'll also need a free account on Render, which is the service that actually runs VoucherBot in the cloud (covered in the deployment guides below).

πŸ’‘ Tip: Open each setup guide in its own browser tab before you start β€” it's faster to have them all ready.


Setup β€” Step by Step

Step 1 β€” Make a copy of VoucherBot

Go to the VoucherBot GitHub page and click the Fork button in the top-right corner. This makes your own personal copy of VoucherBot that you can connect to Render.

What's "forking"? Think of it like making a photocopy of a recipe. You get your own copy to work with, and any updates to the original can be pulled into yours later. You don't need to understand the code inside β€” you just need your own copy so Render can access it.

If you'd rather not create a GitHub account, you can also download the source code directly as a ZIP file β€” but GitHub is strongly recommended because it makes future updates much easier.


Step 2 β€” Download the settings file

Find the file called .env.example in the repository and download it to your computer. Rename it to .env (just remove the word "example" from the name).

This file is like a form with blank fields β€” you'll fill in the values you collect from each setup guide. You do not need to open a terminal or write any code to do this. A plain text editor (like Notepad on Windows or TextEdit on Mac) works perfectly.


Step 3 β€” Complete the account setup guides

Work through all five of the guides in the Account & API Key Setup Guides section below. Each guide gives you a key (a long string of letters and numbers) that you paste into your .env file.

Once all five guides are done, your .env file should have every blank filled in.


Step 4 β€” Save your settings somewhere safe

Once your .env file is complete, keep it somewhere you won't lose it β€” either saved on your computer or copied into a notes app. You'll need to paste these values into Render during the next step.


Step 5 β€” Deploy to Render (put it on the internet)

Follow the Render Deployment Guide to connect your GitHub copy of VoucherBot to Render, enter your settings, and launch the app.

Once this step is done, VoucherBot is live and running in the cloud. You'll start receiving email notifications whenever it finds certification vouchers β€” no further action needed.


Optional β€” Keep it from going to sleep

Render's free plan pauses your app if nobody visits it for a while. To prevent this, follow the optional UptimeRobot Setup Guide β€” it sets up a simple automated "ping" that keeps VoucherBot awake around the clock.


⚠️ One Important Note About Shutting Down

If you ever need to stop or restart VoucherBot (for example, from the Render dashboard), don't force-stop it while it's in the middle of checking a source.

VoucherBot uses a locking system to make sure it doesn't process the same source twice at the same time. If you cut the power abruptly (like clicking "Restart" right as it's working), that lock can get stuck β€” which may cause errors the next time it starts up.

The safe way: Use a single gentle stop (one Ctrl+C, or a graceful restart from Render's dashboard) and wait a moment. VoucherBot will finish what it's doing and then stop cleanly.

If you do see errors mentioning "lock" or "connection" after a restart, don't panic β€” simply restarting the app one more time clears them automatically.


Account & API Key Setup Guides

Complete all five of these guides before attempting to deploy. Each one walks you through creating a free account, finding the key or credential you need, and where to paste it in your .env file.

Service What you're setting up Guide
Groq Primary AI β€” analyses posts to find real voucher offers Groq Setup
Supabase Database β€” remembers what VoucherBot has already found Supabase Setup
Resend Email sender β€” delivers your voucher notifications Resend Setup
Google Gemini Backup AI β€” takes over automatically if Groq has issues Gemini Setup
Reddit API Gives VoucherBot permission to read Reddit posts Reddit Setup

Deployment Guides

Once the five account guides above are done, use these to get VoucherBot live:

Guide What it covers
Render Deployment Connects your copy of VoucherBot to Render and launches it in the cloud
UptimeRobot Setup (optional) Keeps VoucherBot from going to sleep on Render's free plan

Additional Documentation

These are for users who want to dig deeper into how VoucherBot works under the hood. You don't need to read any of these to get set up.

Resource Description
Architecture A detailed overview of the system architecture, application components, data flow, and design decisions.
Detailed Summary A highly detailed summary of the entire project.
Configuration A full reference of all available configuration options.
Schema The project's data schema.
Project Info General information about the project.
Testing How to run the automated test suite, what to expect while testing, and simple troubleshooting steps.
Sources An overview of all the sources VoucherBot monitors.

Contributing

Contributions are welcome! Please read CONTRIBUTING.md for contribution guidelines, development workflow, and best practices before submitting a pull request.


License

This project is licensed under the Apache License 2.0. See LICENSE for the full terms.


Goals

  • Reduce the time spent searching for certification discounts.
  • Aggregate information from multiple trusted sources.
  • Minimize false positives using AI-assisted filtering.
  • Provide timely notifications for new certification opportunities.
  • Offer an extensible platform that supports additional providers with minimal development effort.

Live Preview

Curious what VoucherBot actually finds? A selection of vouchers and certification offers collected by the bot is publicly displayed at:

voucherbot-preview.pages.dev

Feel free to browse through it and see the kind of deals VoucherBot surfaces β€” no setup required.

VoucherBot Preview

About

VoucherBot is an intelligent certification voucher aggregator that monitors Reddit, RSS feeds, vendor blogs, and event pages to discover certification promotions, discounts, and free exam opportunities using keyword filtering and AI-powered analysis.

Topics

Resources

Contributing

Security policy

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages