{"id":22282841,"url":"https://github.com/maxfreck/pechkin","last_synced_at":"2026-04-27T23:39:25.414Z","repository":{"id":57016586,"uuid":"120093522","full_name":"maxfreck/pechkin","owner":"maxfreck","description":"Pechkin is a small and easy-to-use mailing library for PHP","archived":false,"fork":false,"pushed_at":"2020-09-20T19:22:01.000Z","size":27,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-08-13T03:53:55.484Z","etag":null,"topics":["curl","email","php","php-library","proxy","smtp-client"],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/maxfreck.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}},"created_at":"2018-02-03T13:28:06.000Z","updated_at":"2020-09-20T19:14:31.000Z","dependencies_parsed_at":"2022-08-22T09:30:28.984Z","dependency_job_id":null,"html_url":"https://github.com/maxfreck/pechkin","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/maxfreck/pechkin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxfreck%2Fpechkin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxfreck%2Fpechkin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxfreck%2Fpechkin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxfreck%2Fpechkin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/maxfreck","download_url":"https://codeload.github.com/maxfreck/pechkin/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxfreck%2Fpechkin/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32360116,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-27T20:07:02.737Z","status":"ssl_error","status_checked_at":"2026-04-27T20:07:00.910Z","response_time":128,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["curl","email","php","php-library","proxy","smtp-client"],"created_at":"2024-12-03T16:36:38.725Z","updated_at":"2026-04-27T23:39:25.396Z","avatar_url":"https://github.com/maxfreck.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Pechkin — a small and easy-to-use mailing library for PHP\n\n## Features\n\n- Support for PSR-7 streams.\n- Send emails with multiple To, Cc, Bcc and Reply-to addresses.\n- Send emails through http/socks proxy.\n- Support for raw, multipart/alternative, multipart/mixed and multipart/related emails.\n\n## Installing Pechkin\n\nThe recommended way to install Pechkin is through [Composer](http://getcomposer.org).\n\nInstall Composer:\n\n```bash\ncurl -sS https://getcomposer.org/installer | php\n```\n\nNext, run the Composer command to install the latest stable version of Pechkin:\n\n```bash\nphp composer.phar require maxfreck/pechkin\n```\n\nAfter installing, you need to require Composer's autoloader:\n\n```php\nrequire 'vendor/autoload.php';\n```\n\nYou can then later update Pechkin using composer:\n\n ```bash\ncomposer.phar update\n ```\n\n## Using Pechkin\n\nAll email metainformation (content type, file name, attachment disposition) is passed as a stream metadata.\n\nBasic usage example:\n\n```php\n\u003c?php\n\n//use composer's autoloader\nrequire '../vendor/autoload.php';\n\nuse \\Pechkin\\CurlMailer;\nuse \\Pechkin\\Streams\\FileStream;\n\nuse \\Pechkin\\fn;\n\n\nfn::$host = 'example.org';\n\n$body = \u003c\u003c\u003cEOD\n\u003ch1\u003eLorem ipsum\u003c/h1\u003e\n\u003cdiv\u003e\u003cimg src=\"cid:img1\"\u003e\u003c/div\u003e\n\u003cp\u003eLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor\nincididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud\nexercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute\nirure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla\npariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia\ndeserunt mollit anim id est laborum.\u003c/p\u003e\nEOD;\n\n$mailer = new CurlMailer(\n    \"smtps://smtp.example.org:465\",\n    \"nemo@example.org\",\n    \"Nemo's password\",\n    (object)[\n        'from' =\u003e (object)['email' =\u003e 'nemo@example.org', 'name' =\u003e 'Nemo Nobody'],\n        'replyTo' =\u003e [\n            (object)['email' =\u003e 'nemo@example.org', 'name' =\u003e 'Nemo Nobody'],\n        ],\n        'to' =\u003e [\n            (object)['email' =\u003e 'foo@example.com', 'name' =\u003e 'Mr. Foo'],\n        ],\n        'subject' =\u003e \"Hello, Mr. Foo\",\n        'body' =\u003e FileStream::fromString($body, ['content-type' =\u003e 'text/html; charset=\"utf-8\"']),\n        'altBody' =\u003e FileStream::fromString(\"This is alt body\"),\n        //'proxy' =\u003e 'socks5://127.0.0.1:8080' //See CURLOPT_PROXY for more information\n    ]\n);\n\n$mailer-\u003eaddAttachment(\n    new FileStream(\n        'image.png',\n        'r',\n        [\n            'content-type' =\u003e fn::fileMime('image.png'),\n            'name' =\u003e 'image.png',\n            'disposition' =\u003e 'inline'\n        ]\n    ),\n    'img1' //Attachment content ID\n);\n\n$mailer-\u003esend();\n```\n\n## To-Do\n\n- Raw SMTP sender similar to PHPMailer.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaxfreck%2Fpechkin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmaxfreck%2Fpechkin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaxfreck%2Fpechkin/lists"}