{"id":22288409,"url":"https://github.com/albertito/spf","last_synced_at":"2025-07-28T22:32:44.550Z","repository":{"id":23928155,"uuid":"100187346","full_name":"albertito/spf","owner":"albertito","description":"SPF (Sender Policy Framework) implementation in Go [mirror]","archived":false,"fork":false,"pushed_at":"2023-07-06T08:56:34.000Z","size":243,"stargazers_count":20,"open_issues_count":1,"forks_count":8,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-06-19T02:01:06.365Z","etag":null,"topics":["go-library","smtp-server","spf","spf-library","spf-record"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/albertito.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-08-13T15:48:26.000Z","updated_at":"2024-05-10T14:15:30.000Z","dependencies_parsed_at":"2024-06-19T01:39:09.744Z","dependency_job_id":"d4113cac-9272-4baa-a20c-bbfb01b2ffe8","html_url":"https://github.com/albertito/spf","commit_stats":{"total_commits":92,"total_committers":7,"mean_commits":"13.142857142857142","dds":0.07608695652173914,"last_synced_commit":"6140b4090e9e7150741ff4c254866f154af0bb57"},"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/albertito%2Fspf","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/albertito%2Fspf/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/albertito%2Fspf/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/albertito%2Fspf/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/albertito","download_url":"https://codeload.github.com/albertito/spf/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":227961828,"owners_count":17847841,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["go-library","smtp-server","spf","spf-library","spf-record"],"created_at":"2024-12-03T17:04:39.917Z","updated_at":"2024-12-03T17:04:40.669Z","avatar_url":"https://github.com/albertito.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# blitiri.com.ar/go/spf\n\n[![GoDoc](https://godoc.org/blitiri.com.ar/go/spf?status.svg)](https://pkg.go.dev/blitiri.com.ar/go/spf)\n[![Tests Status](https://img.shields.io/github/checks-status/albertito/spf/master)](https://github.com/albertito/spf/actions)\n[![Go Report Card](https://goreportcard.com/badge/github.com/albertito/spf)](https://goreportcard.com/report/github.com/albertito/spf)\n[![Coverage Status](https://coveralls.io/repos/github/albertito/spf/badge.svg?branch=next)](https://coveralls.io/github/albertito/spf)\n\n[spf](https://godoc.org/blitiri.com.ar/go/spf) is an open source\nimplementation of the [Sender Policy Framework\n(SPF)](https://en.wikipedia.org/wiki/Sender_Policy_Framework) in Go.\n\nIt is used by the [chasquid](https://blitiri.com.ar/p/chasquid/) and\n[maddy](https://maddy.email) SMTP servers.\n\n\n## Example\n\n```go\n// Check if `sender` is authorized to send from the given `ip`. The `domain`\n// is used if the sender doesn't have one.\nresult, err := spf.CheckHostWithSender(ip, domain, sender)\nif result == spf.Fail {\n\t// Not authorized to send.\n}\n```\n\nSee the [package documentation](https://pkg.go.dev/blitiri.com.ar/go/spf) for\nmore details.\n\n\n## Status\n\nAll SPF mechanisms, modifiers, and macros are supported.\n\nThe API should be considered stable. Major version changes will be announced\nto the mailing list (details below).\n\n\n## Contact\n\nIf you have any questions, comments or patches please send them to the mailing\nlist, `chasquid@googlegroups.com`.\n\nTo subscribe, send an email to `chasquid+subscribe@googlegroups.com`.\n\nYou can also browse the\n[archives](https://groups.google.com/forum/#!forum/chasquid).\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falbertito%2Fspf","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falbertito%2Fspf","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falbertito%2Fspf/lists"}