Skip to content

sneakykiwi/prospector

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Prospector

⚠️ Project Status: Incomplete / Partially Abandoned
This project was affected by Reddit's API policy changes in April 2023.

A Go-based terminal application that mines Reddit for product ideas by searching for posts asking about tools, apps, and software solutions.

⚠️ Current Limitations

Reddit API Changes (April 2023):

  • Reddit discontinued self-service API access for new applications
  • New OAuth2 apps now require manual approval from Reddit
  • The approval process is opaque and can take weeks/months (or be denied)
  • Existing apps continue to work, but new developers are effectively locked out

Workaround Available:

  • The app can use Reddit's public JSON endpoints (no auth required)
  • However, this is heavily rate-limited (~2 requests/second)
  • Some features (like fetching comments) don't work with public API
  • Search results may be incomplete or inconsistent

Project Status:

  • Core functionality works with public JSON API fallback
  • OAuth2 implementation exists but requires Reddit approval to use
  • Development paused due to API access uncertainty
  • Codebase is functional but incomplete

Features

  • ✅ Automated Reddit search with pattern matching (via public JSON API)
  • ✅ Idea extraction and deduplication
  • ✅ Scoring system based on frequency, recency, engagement, and payment signals
  • ✅ Terminal UI built with Bubble Tea
  • ✅ Product verification with search link generation
  • ✅ Embedded database using BoltDB
  • ⚠️ Comment fetching requires OAuth2 (not available with public API)
  • ⚠️ Rate-limited to ~2 requests/second (public API limitation)

Setup

  1. Install Go 1.21 or later
  2. Clone the repository
  3. Run go mod download to install dependencies
  4. Create a .env file (see Configuration below)
  5. Run go run cmd/prospector/main.go

Configuration

Create a .env file in the project root. OAuth2 credentials are optional (but recommended if you have them):

Option 1: Public JSON API (No OAuth2 Required - Current Workaround)

This is the only option available for new users without Reddit API approval:

REDDIT_USER_AGENT=prospector/1.0
LOG_LEVEL=info
LOG_DEV=false

Limitations:

  • Rate-limited to ~2 requests per second
  • Some features unavailable (comment fetching)
  • May experience inconsistent results
  • No API approval needed

Option 2: OAuth2 API (Requires Reddit Approval - Likely Unavailable)

If you somehow have Reddit API approval (good luck):

REDDIT_CLIENT_ID=your_client_id
REDDIT_CLIENT_SECRET=your_client_secret
REDDIT_REDIRECT_URI=http://localhost:8080/callback
REDDIT_USER_AGENT=prospector/1.0
REDDIT_API_BASE_URL=https://oauth.reddit.com

LOG_LEVEL=info
LOG_DEV=false

Reality Check:

  • Reddit requires manual approval for new OAuth2 apps (as of April 2023)
  • Approval process is opaque and often denied
  • Most new developers cannot get API access
  • If you don't have credentials, the app automatically falls back to public JSON API

You can copy .env.example to .env and fill in your values.

Usage

  • Press s to start searching Reddit (expect slow performance with public API)
  • Use arrow keys to navigate the idea list
  • Press Enter to view idea details
  • Press o to open search links in browser
  • Press f to filter by status

Note: Due to rate limiting, searches will be slow. Be patient.

Why This Project Exists

This was built before Reddit's API policy changes. The codebase is functional and demonstrates:

  • Reddit API integration patterns
  • Terminal UI development with Bubble Tea
  • Data mining and idea extraction techniques
  • OAuth2 implementation (though now largely unusable)

However, Reddit's API restrictions make this project impractical for new users without existing API access.

Contributing

Feel free to fork and improve, but be aware that Reddit's API limitations will always be a constraint. Consider alternative data sources or APIs if building something similar.

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

Find new reddit project ideas!

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages