{"id":27237961,"url":"https://github.com/fuseraft/hayward","last_synced_at":"2025-04-10T18:42:06.768Z","repository":{"id":271648770,"uuid":"907212999","full_name":"fuseraft/hayward","owner":"fuseraft","description":"The Hayward Project","archived":false,"fork":false,"pushed_at":"2025-03-06T04:36:05.000Z","size":559,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-24T16:22:16.218Z","etag":null,"topics":["dotnet","programming-languages"],"latest_commit_sha":null,"homepage":"","language":"C#","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/fuseraft.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","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":"2024-12-23T04:56:25.000Z","updated_at":"2025-03-06T04:36:09.000Z","dependencies_parsed_at":"2025-01-09T03:42:50.172Z","dependency_job_id":"5c00dfb7-2111-4cb6-b2d1-7659eb70d8c1","html_url":"https://github.com/fuseraft/hayward","commit_stats":null,"previous_names":["fuseraft/citrus","fuseraft/hayward"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fuseraft%2Fhayward","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fuseraft%2Fhayward/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fuseraft%2Fhayward/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fuseraft%2Fhayward/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fuseraft","download_url":"https://codeload.github.com/fuseraft/hayward/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248271909,"owners_count":21075800,"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":["dotnet","programming-languages"],"created_at":"2025-04-10T18:42:06.129Z","updated_at":"2025-04-10T18:42:06.758Z","avatar_url":"https://github.com/fuseraft.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Hayward 🥝\n\nA dynamically-typed object-oriented scripting language that runs on .NET.\n\n## Getting Started\n\nYou should visit the [docs](docs/README.md) to learn the fundamentals of the language.\n\nClone the repository:\n```bash\ngit clone https://github.com/fuseraft/hayward.git\n```\n\nBuild Hayward:\n```bash\n./build.sh\n```\n\nRun the test suite:\n```bash\n./bin/hayward scripts/test\n```\n\n## VS Code Extension\n\nFor syntax highlighting and code snippets in Visual Studio Code, install the [VS Code extension](https://marketplace.visualstudio.com/items?itemName=fuseraft.kiwi-lang).\n\n## Sample Code\n\nBelow is a simple markdown generator. You can find other examples in the [docs](docs/README.md) and in the [scripts](scripts/) directory. \n\n```hayward\n/#\nThis simple markdown generator reads all `.hayward` files found within the current \ndirectory and its subdirectories, and generates a markdown file called `output.md` \ncontaining the contents of each file.\n#/\n\nfn generate_markdown(output_name: string = \"output.md\",\n                     ext:         string = \".cs\",\n                     lang:        string = \"csharp\")\n  try\n    # get the absolute path to the output file (in the current directory)\n    var (output_path: string = fio::abspath(\"./${output_name}\"))\n    \n    # this list will contain the markdown content\n    var (markdown: list = [])\n    \n    # remove the file if it exists\n    fio::remove(output_path)\n\n    # loop through each file with a given extension\n    for path in fio::glob(\"./\", [\"./**/*${ext}\"]) do\n      # get the filename and read the text from the file\n      var (filename:  string = fio::filename(path),\n           content:   string = fio::read(path))\n\n      # create markdown content for the current file\n      markdown.push([\n        \"## ${filename}\", \n        \"```${lang}\", \n        content, \n        \"```\"\n      ]);\n\n    # write the markdown content to the output file\n    fio::writeln(output_path, markdown.flatten())\n\n    # throw an error if we could not generate the file\n    throw \"could not generate ${output_path}\" \n      when !fio::exists(output_path)\n    \n    println \"generated ${output_path}\"\n  catch (err)\n    println \"an error occurred: ${err}\";\n;\n\ngenerate_markdown(\"hayward-files.md\", \".hayward\", \"hayward\")\n```\n\n## Contributing\n\nContributions are highly appreciated! Here’s how to get involved:\n\n1. **Join the Discussion**: Join the community on [Discord](https://discord.gg/9PW3857Bxs).\n2. **Fork the Repository**: Fork Hayward on GitHub.\n3. **Clone the Repository**: Clone your forked copy to your machine.\n4. **Set Up Your Environment**: Follow the steps in \"Getting Started.\"\n5. **Make Changes**: Implement new features or fix issues.\n6. **Test Your Changes**: Run all tests to ensure stability.\n7. **Submit a Pull Request**: Submit your changes for review.\n\nFor more details, please refer to [CONTRIBUTING.md](CONTRIBUTING.md).\n\n## License\n\nThis project is licensed under the [MIT License](LICENSE).","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffuseraft%2Fhayward","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffuseraft%2Fhayward","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffuseraft%2Fhayward/lists"}