Skip to content

Commit 8d23ed6

Browse files
committed
Merge branch 'main' of https://github.com/eslutz/Torarr
2 parents 01866f7 + eeb7a7d commit 8d23ed6

1 file changed

Lines changed: 65 additions & 13 deletions

File tree

README.md

Lines changed: 65 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -196,44 +196,96 @@ Releases are driven by the `VERSION` file:
196196

197197
To cut a new release: update `VERSION` and merge to `main`.
198198

199-
## Building from Source
199+
## Contributing
200+
201+
Contributions are welcome! Please follow these guidelines when submitting changes.
202+
203+
### Building from Source
200204

201205
```bash
206+
# Clone the repository
202207
git clone https://github.com/eslutz/torarr.git
203208
cd torarr
204209

210+
# Install dependencies
211+
go mod download
212+
205213
# Build binary
206214
go build -o healthserver ./cmd/healthserver
207215

208216
# Build Docker image
209-
docker build -t torarr:local .
217+
docker build -t torarr .
210218
```
211219

212-
## Contributing
220+
### Development
221+
222+
```bash
223+
# Run tests
224+
go test ./...
225+
226+
# Run tests with race detector and coverage
227+
go test -race -coverprofile=coverage.out -covermode=atomic ./...
228+
229+
# View coverage report
230+
go tool cover -func=coverage.out
231+
232+
# Run linter
233+
golangci-lint run
234+
235+
# Run locally (requires Tor installation)
236+
export HEALTH_PORT=8085
237+
export TOR_CONTROL_ADDRESS=127.0.0.1:9051
238+
go run ./cmd/healthserver
239+
```
240+
241+
Before submitting a pull request:
213242

214243
1. Fork the repository
215244
2. Create a feature branch
216245
3. Make your changes
217-
4. Run tests and lint
218-
5. Submit a pull request
246+
4. Add tests if applicable
247+
5. Run linters and tests
248+
6. Submit a pull request
249+
250+
See our [Pull Request Template](.github/PULL_REQUEST_TEMPLATE.md) for more details.
219251

220252
## Security
221253

222-
- Don't expose the SOCKS proxy publicly; bind it to localhost or a private network.
223-
- The Tor control password is generated at startup if unset; treat container logs as sensitive if you rely on auto-generation.
254+
Security is a top priority for this project. If you discover a security vulnerability, please follow responsible disclosure practices.
255+
256+
**Reporting Vulnerabilities:**
257+
258+
Please report security vulnerabilities through GitHub Security Advisories:
259+
https://github.com/eslutz/torarr/security/advisories/new
224260

225-
Report vulnerabilities via GitHub Security Advisories:
226-
<https://github.com/eslutz/torarr/security/advisories/new>
261+
Alternatively, you can view our [Security Policy](.github/SECURITY.md) for additional contact methods and guidelines.
262+
263+
**Security Best Practices:**
264+
265+
- Keep your installation up to date with the latest releases
266+
- Never expose the SOCKS proxy port publicly; bind to localhost or private networks only
267+
- Treat container logs as sensitive if using auto-generated control passwords
268+
- Use strong, unique control passwords in production environments
269+
- Regularly monitor logs for suspicious activity
270+
- Consider using exit node restrictions for additional privacy
227271

228272
## License
229273

230-
This project is licensed under the MIT License - see [LICENSE](LICENSE).
274+
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.
275+
276+
You are free to use, modify, and distribute this software under the terms of the MIT License.
231277

232278
## Acknowledgments
233279

234-
- [Tor Project](https://www.torproject.org/) - Anonymous communication network
235-
- [Prometheus](https://prometheus.io/) - Monitoring system and time series database
280+
This project is built with and inspired by excellent open-source software:
281+
282+
- **[Tor Project](https://www.torproject.org/)** - Anonymous communication network
283+
- **[Prometheus](https://prometheus.io/)** - Monitoring system and time series database
284+
- **[fsnotify](https://github.com/fsnotify/fsnotify)** - Cross-platform file system notifications for Go
285+
286+
Special thanks to the open-source community for their contributions and support.
236287

237288
## Related Projects
238289

239-
- [Forwardarr](https://github.com/eslutz/forwardarr) - SPort update container for Gluetun to qBittorrent port syncing that updates the listening port on change
290+
- **[Forwardarr](https://github.com/eslutz/forwardarr)** - Automatic port forwarding sync from Gluetun VPN to qBittorrent
291+
- **[Unpackarr](https://github.com/eslutz/unpackarr)** - Container-native archive extraction service for Sonarr, Radarr, and more

0 commit comments

Comments
 (0)