{"id":17696813,"url":"https://github.com/datashaman/tongs","last_synced_at":"2025-10-06T18:25:55.417Z","repository":{"id":49084213,"uuid":"235509118","full_name":"datashaman/tongs","owner":"datashaman","description":"Static site generator using Laravel Zero. Heavily based on metalsmith.","archived":false,"fork":false,"pushed_at":"2021-06-29T11:51:51.000Z","size":2295,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-07T18:15:52.523Z","etag":null,"topics":["laravel","metalsmith","ssg","static-site","static-site-generator","tongs"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/datashaman.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-01-22T05:59:57.000Z","updated_at":"2020-01-30T10:22:36.000Z","dependencies_parsed_at":"2022-09-15T14:20:55.352Z","dependency_job_id":null,"html_url":"https://github.com/datashaman/tongs","commit_stats":null,"previous_names":[],"tags_count":26,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/datashaman%2Ftongs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/datashaman%2Ftongs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/datashaman%2Ftongs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/datashaman%2Ftongs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/datashaman","download_url":"https://codeload.github.com/datashaman/tongs/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246399800,"owners_count":20770907,"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":["laravel","metalsmith","ssg","static-site","static-site-generator","tongs"],"created_at":"2024-10-24T14:45:26.049Z","updated_at":"2025-10-06T18:25:50.374Z","avatar_url":"https://github.com/datashaman.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# tongs\n\nStatic site generator using Laravel Zero. Heavily based on [metalsmith](https:/metalsmith.io). WIP.\n\n## example site\n\nSource code for the example site is at [datashaman/tongs-example](https://github.com/datashaman/tongs-example).\n\nThe built files are deployed at [tongs-example.datashaman.com](http://tongs-example.datashaman.com).\n\n## source and destination\n\nThe `source` and `destination` configs can be a string or a config array for a Laravel filesystem.\n\nIf it's a string, a _local_ filesystem is created with the root set to `directory`/`source` values, where `directory` will be the current working directory if you use the command-line app.\n\nFor example:\n\n    {\n        \"source\": \"src\",\n        \"destination\": {\n            \"driver\": \"s3\",\n            \"region\": \"eu-west-1\",\n            \"bucket\": \"example.com\"\n        }\n    }\n\nWill build from `src` directory to the root of an S3 bucket named `example.com` using the default AWS credentials.\n\n\n## plugins\n\nThe following plugins are provided by this package:\n\n### collections\n\nAdd posts to `collections` metadata by adding a `collection` value in front matter or matching files with a `pattern` (it uses [fnmatch](https://php.net/functions/fnmatch).\n\nFor example:\n\n    {\n        \"plugins\": {\n            \"collections\": {\n                \"posts\": \"posts/*.html\",\n                \"other\": {\n                    \"pattern\": \"other/*.html\"\n                }\n            }\n        }\n    }\n\nWill create two collections in metadata at `$collections['posts']` and `$collections['other']`. If you also add `collection: featured` to posts' frontmatter, you can access the collection of those posts at `$collections['featured']`.\n\n### drafts\n\nMark posts as being a draft so they are not built.\n\nFor example:\n\n    {\n        \"plugins\": {\n            \"drafts\": truu\n        }\n    }\n\nwill remove a post with `draft: true` in frontmatter.\n\n### markdown\n\nRender Markdown files into HTML.\n\nFor example:\n\n    {\n        \"plugins\": {\n            \"markdown\": {\n                \"breaksEnabled\": true,\n                \"strictMode\": true\n            }\n        }\n    }\n\nwill convert the content from Markdown to HTML (and rename files) using a [Parsedown](https://github.com/erusev/parsedown) parser. The configuration object is mangled to create config calls to the parser.\n\nFor example, the above will configure the parser with `setBreaksEnabled(true)` and `setStrictMode(true)`. Consult the [source code](https://github.com/erusev/parsedown/blob/master/Parsedown.php) for the options.\n\n### views\n\nRender views and layouts to HTML using Blade views.\n\nFor example:\n\n    {\n        \"plugins\": {\n            \"views\": {\n                \"paths\": [\n                    \"views\"\n                ],\n                \"compiled\": \".cache\"\n            }\n        }\n    }\n\nPut `view: post` frontmatter in a post and it will be rendered from `views/post.blade.php` with Blade. Local view variables are made up the post frontmatter and the global metadata values.\n\nMore plugin packages:\n\n* `feed` in [datashaman/tongs-feed](http://github.com/datashaman/tongs-feed)\n* `metadata` in [datashaman/tongs-metadata](http://github.com/datashaman/tongs-metadata)\n* `more` in [datashaman/tongs-more](http://github.com/datashaman/tongs-more)\n* `permalinks` in [datashaman/tongs-permalinks](http://github.com/datashaman/tongs-permalinks)\n* `sass` in [datashaman/tongs-sass](http://github.com/datashaman/tongs-sass)\n\nTo create your own plugins, look at the [plugin template](https://github.com/datashaman/tongs-plugin).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdatashaman%2Ftongs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdatashaman%2Ftongs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdatashaman%2Ftongs/lists"}