{"id":37028144,"url":"https://github.com/punchplatform/starters","last_synced_at":"2026-01-14T03:21:29.176Z","repository":{"id":48178441,"uuid":"232106258","full_name":"punchplatform/starters","owner":"punchplatform","description":"java python and punchlang samples to discover the punch platform FaaS","archived":false,"fork":false,"pushed_at":"2023-11-07T09:00:39.000Z","size":19871,"stargazers_count":23,"open_issues_count":3,"forks_count":1,"subscribers_count":5,"default_branch":"8.1","last_synced_at":"2025-07-25T01:22:31.463Z","etag":null,"topics":["java","kubernetes","punch","punchlet","python","spark"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","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/punchplatform.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,"governance":null}},"created_at":"2020-01-06T13:24:42.000Z","updated_at":"2023-10-27T15:35:28.000Z","dependencies_parsed_at":"2023-11-07T00:39:52.602Z","dependency_job_id":null,"html_url":"https://github.com/punchplatform/starters","commit_stats":{"total_commits":227,"total_committers":20,"mean_commits":11.35,"dds":0.6079295154185023,"last_synced_commit":"11e3416af56cb71fb5bd2c8cd16bd58759ad7bdb"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/punchplatform/starters","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/punchplatform%2Fstarters","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/punchplatform%2Fstarters/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/punchplatform%2Fstarters/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/punchplatform%2Fstarters/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/punchplatform","download_url":"https://codeload.github.com/punchplatform/starters/tar.gz/refs/heads/8.1","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/punchplatform%2Fstarters/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28408826,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-14T01:52:23.358Z","status":"online","status_checked_at":"2026-01-14T02:00:06.678Z","response_time":107,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["java","kubernetes","punch","punchlet","python","spark"],"created_at":"2026-01-14T03:21:28.447Z","updated_at":"2026-01-14T03:21:29.168Z","avatar_url":"https://github.com/punchplatform.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Punch Starters\n\nThis repository is a software development kit for Punch developers. It provides easy-to-start-with samples for various\nuse cases, implemented using java, python and punchlang functions.\n\nThe punch online documentation is available here: https://doc.punchplatform.com. \n\nThe starter examples use either docker or a kubernetes cluster equipped with the\npunch services. \n\nWith docker you only need docker to be installed on your laptop. \nIf your work with a target kubernetes cluster, make sure you installed \n'kubectl' and have a valid '.kube/config' file. \n \n## Punchlines\n\nSome sample punchlines are available in all runtimes : [java](punchlines/java), [spark](punchlines/spark)\nand [python](punchlines/python). Check out their guides to use them.\n\n## Custom Docker Images\n\nOne easy way to package a punch application is to generate your own image together with the required punchlet(s) or\ncustom functions. Check out the [custom_images](custom_images) folder.\n\n## Punchlets\n\nPunchlets are small arbitrary functions written using the punchlang language. \nCheckout the [punchlets](punchlines/java/punchlets) guide. Writing a punchlet is easy, testing it as easy.\n\n## Log Parser\n\nA robust and industrial log parser requires one or more punchlet(s), some additional resource files, some documentation\nand a way to package everything so that your parsers can be easily deployed on a production punch.\n\nThe parser SDK provides you with a toolkit to handle of all these packaging issues. It also provides you with a\nunit test framework.\n\nCheckout out the sample [parser](parser) folder.\n\n## Sigma Detection Rules\n\nCheckout out the sample [sigma_rule](sigma_rules) folder.\n\n## Model\n\nMlflow model that can be used in a punchline\n\nCheckout out the [model](model) guide.\n\n## Custom Functions Development\n\nYou can write your own Java or Python functions using the punch SDK. Refer to the [custom_nodes](custom_nodes) guide.\n\n## Simulator Tool\n\nA simulator tool is provided to ease the day-to-day working with the punch.  \nTo include these in your path type in:\n\n```sh\n. activate.sh\n```\n\nYou can now inject logs by simply executing `simulate.sh` from anywhere in the starters' repository.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpunchplatform%2Fstarters","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpunchplatform%2Fstarters","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpunchplatform%2Fstarters/lists"}