Skip to content

Commit 518bce9

Browse files
Initial release of FastCaptcha Python API v1.0.0
1 parent d0ab7d6 commit 518bce9

20 files changed

+2137
-1
lines changed

CHANGELOG.md

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
# Changelog
2+
3+
All notable changes to this project will be documented in this file.
4+
5+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7+
8+
## [1.0.0] - 2025-01-29
9+
10+
### Added
11+
- Initial release of FastCaptcha Python library
12+
- `FastCaptcha` class for solving image CAPTCHAs
13+
- Support for solving from local files, URLs, and base64 strings
14+
- `solve()` method for solving from file path or URL
15+
- `solve_url()` method for solving from URL
16+
- `solve_base64()` method for solving from base64-encoded images
17+
- `get_balance()` method for checking account credits
18+
- Context manager support for automatic session cleanup
19+
- Comprehensive error handling with custom exceptions
20+
- Type hints for better IDE support
21+
- Complete documentation and examples
22+
- PyPI package configuration
23+
24+
### Features
25+
- 95% accuracy for text-based image CAPTCHAs
26+
- Solve CAPTCHAs in under 0.3 seconds
27+
- Support for all major image formats (JPG, PNG, GIF, BMP, WebP)
28+
- Automatic retry logic for network errors
29+
- Timeout configuration
30+
- Session management with connection pooling
31+
32+
### Documentation
33+
- Comprehensive README with SEO optimization
34+
- 6 detailed example scripts
35+
- API documentation
36+
- Contributing guidelines
37+
- MIT License
38+
39+
## [Unreleased]
40+
41+
### Planned
42+
- Async/await support
43+
- Webhook notifications
44+
- Batch API endpoint
45+
- CLI tool
46+
- More examples for popular frameworks

CONTRIBUTING.md

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
# Contributing to FastCaptcha Python
2+
3+
Thank you for your interest in contributing to FastCaptcha! We welcome contributions from the community.
4+
5+
## How to Contribute
6+
7+
### Reporting Bugs
8+
9+
If you find a bug, please open an issue on GitHub with:
10+
- A clear description of the bug
11+
- Steps to reproduce
12+
- Expected vs actual behavior
13+
- Your Python version and OS
14+
15+
### Suggesting Features
16+
17+
We love new ideas! Open an issue with:
18+
- Clear description of the feature
19+
- Use case and benefits
20+
- Example code showing how it would work
21+
22+
### Pull Requests
23+
24+
1. Fork the repository
25+
2. Create a new branch (`git checkout -b feature/amazing-feature`)
26+
3. Make your changes
27+
4. Add tests if applicable
28+
5. Ensure code follows PEP 8 style guide
29+
6. Commit your changes (`git commit -m 'Add amazing feature'`)
30+
7. Push to your branch (`git push origin feature/amazing-feature`)
31+
8. Open a Pull Request
32+
33+
### Code Style
34+
35+
- Follow PEP 8 guidelines
36+
- Use meaningful variable and function names
37+
- Add docstrings to all functions and classes
38+
- Keep functions small and focused
39+
40+
### Testing
41+
42+
Before submitting a PR, ensure:
43+
- All existing tests pass
44+
- New features have tests
45+
- Code coverage doesn't decrease
46+
47+
## Development Setup
48+
49+
```bash
50+
# Clone the repository
51+
git clone https://github.com/fastcaptcha/fastcaptcha.git
52+
cd fastcaptcha
53+
54+
# Install in development mode
55+
pip install -e .[dev]
56+
57+
# Run tests
58+
pytest
59+
60+
# Check code style
61+
flake8 fastcaptcha/
62+
black --check fastcaptcha/
63+
```
64+
65+
## Questions?
66+
67+
Feel free to reach out:
68+
69+
- GitHub Issues: [Open an issue](https://github.com/fastcaptcha/fastcaptcha/issues)
70+
71+
Thank you for contributing! 🎉

DOWNLOAD_INSTRUCTIONS.md

Lines changed: 159 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,159 @@
1+
# Download Instructions for GitHub
2+
3+
This repository is ready to be uploaded to GitHub. Follow these steps:
4+
5+
## Option 1: Download via ZIP (Easiest)
6+
7+
1. **Download this folder** as a ZIP file from your Replit workspace
8+
2. **Extract the ZIP file** on your computer
9+
3. **Upload to GitHub**:
10+
- Go to https://github.com/new
11+
- Repository name: `fastcaptcha-python`
12+
- Description: "Official Python client for FastCaptcha - Fastest image CAPTCHA solver API"
13+
- Make it **Public** (important for SEO and discoverability)
14+
- Click "Create repository"
15+
- Click "uploading an existing file"
16+
- Drag and drop all files from the extracted folder
17+
- Commit the files
18+
19+
## Option 2: Using Git (Recommended)
20+
21+
### Initial Setup
22+
23+
```bash
24+
# Navigate to the fastcaptcha-python directory
25+
cd fastcaptcha-python
26+
27+
# Initialize git repository
28+
git init
29+
30+
# Add all files
31+
git add .
32+
33+
# Create first commit
34+
git commit -m "Initial release of FastCaptcha Python v1.0.0"
35+
36+
# Add your GitHub repository as remote
37+
git remote add origin https://github.com/YOUR_USERNAME/fastcaptcha-python.git
38+
39+
# Push to GitHub
40+
git branch -M main
41+
git push -u origin main
42+
```
43+
44+
### Create Release Tag
45+
46+
```bash
47+
# Tag the release
48+
git tag -a v1.0.0 -m "FastCaptcha Python v1.0.0"
49+
git push origin v1.0.0
50+
```
51+
52+
## Option 3: Using GitHub Desktop
53+
54+
1. Download GitHub Desktop: https://desktop.github.com/
55+
2. Open GitHub Desktop
56+
3. File → Add Local Repository
57+
4. Choose the `fastcaptcha-python` folder
58+
5. Click "Publish repository"
59+
6. Uncheck "Keep this code private"
60+
7. Click "Publish Repository"
61+
62+
## After Uploading to GitHub
63+
64+
### 1. Create a GitHub Release
65+
66+
1. Go to your repository on GitHub
67+
2. Click "Releases" → "Create a new release"
68+
3. Tag version: `v1.0.0`
69+
4. Release title: "FastCaptcha Python v1.0.0 - Initial Release"
70+
5. Description: Copy from `CHANGELOG.md`
71+
6. Click "Publish release"
72+
73+
### 2. Add Topics (for SEO)
74+
75+
1. Go to your repository
76+
2. Click the gear icon next to "About"
77+
3. Add topics:
78+
- `captcha`
79+
- `captcha-solver`
80+
- `python`
81+
- `ocr`
82+
- `api-client`
83+
- `automation`
84+
- `web-scraping`
85+
- `fastcaptcha`
86+
4. Add website: `https://fastcaptcha.org`
87+
5. Save changes
88+
89+
### 3. Update Repository Settings
90+
91+
**Description:**
92+
```
93+
Official Python client for FastCaptcha - Fastest AI-powered image CAPTCHA solver with 95% accuracy. Solve CAPTCHAs in 0.3s. Alternative to 2Captcha.
94+
```
95+
96+
**Website:**
97+
```
98+
https://fastcaptcha.org
99+
```
100+
101+
**Topics:** (as listed above)
102+
103+
### 4. Enable GitHub Pages (Optional)
104+
105+
If you want to host documentation:
106+
1. Settings → Pages
107+
2. Source: Deploy from branch
108+
3. Branch: main → /docs (if you add a docs folder)
109+
110+
## Repository URLs
111+
112+
After publishing, your repository will be at:
113+
114+
- **Repository**: `https://github.com/YOUR_USERNAME/fastcaptcha-python`
115+
- **Raw files**: `https://raw.githubusercontent.com/YOUR_USERNAME/fastcaptcha-python/main/`
116+
- **Releases**: `https://github.com/YOUR_USERNAME/fastcaptcha-python/releases`
117+
118+
## Recommended: Update Links
119+
120+
After publishing to GitHub, update these references:
121+
122+
1. **In setup.py**: Change repository URL
123+
2. **In pyproject.toml**: Change repository URL
124+
3. **In README.md**: Update GitHub links
125+
126+
Example:
127+
```python
128+
# Replace YOUR_USERNAME with your actual GitHub username
129+
url='https://github.com/YOUR_USERNAME/fastcaptcha-python',
130+
```
131+
132+
## Next Steps
133+
134+
1. ✅ Upload to GitHub
135+
2. ✅ Create release v1.0.0
136+
3. ✅ Add topics and description
137+
4. ✅ Update setup.py with correct GitHub URL
138+
5. ✅ Publish to PyPI (see PYPI_PUBLISHING_GUIDE.md)
139+
6. ✅ Update your FastCaptcha.org website with links to:
140+
- GitHub repo
141+
- PyPI package
142+
- Documentation
143+
144+
## SEO Benefits
145+
146+
Having your code on GitHub helps with:
147+
- 🔍 **Google Discovery**: GitHub repos rank well in search
148+
- 📊 **Trust Signals**: Shows active development
149+
- 🌐 **Backlinks**: Links from GitHub to fastcaptcha.org boost SEO
150+
- 👥 **Community**: Developers can contribute and report issues
151+
-**Social Proof**: GitHub stars show popularity
152+
153+
## Questions?
154+
155+
156+
157+
---
158+
159+
**Ready to share your FastCaptcha Python client with the world!** 🚀

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2025 FastCaptcha - Bijaya kumar Tiadi
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

MANIFEST.in

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
include README.md
2+
include LICENSE
3+
include requirements.txt
4+
recursive-include examples *.py *.jpg *.png
5+
recursive-exclude * __pycache__
6+
recursive-exclude * *.py[co]

0 commit comments

Comments
 (0)