Set of helpers for creating and manipulating F# AST.
FsAst is part of Ionide tooling suite - You can support its development on Open Collective.
- Original blog post about the project by @ctaggart - http://blog.ctaggart.com/2014/09/generating-f-code-using-its-ast.html
- Applied Meta-Programming with Myriad and Falanax by @7sharp9 - https://7sharp9.dev/2019/04/24/2019-04-24-applied-metaprogramming-with-myriad/ (Although Myriad no longer uses FsAst)
- Sample for printing out generated code with Fantomas - https://github.com/ionide/FsAst/tree/master/sample
- You need .NET Core SDK - check the exact version in global.json
- Run
dotnet tool restore
to restore the .NET Core 3 local tools defined at .config/dotnet-tools.json - To build the project run
dotnet build
- @ctaggart - Original creator and maintainer of the FsAst.
Imposter syndrome disclaimer: I want your help. No really, I do.
There might be a little voice inside that tells you you're not ready; that you need to do one more tutorial, or learn another framework, or write a few more blog posts before you can help me with this project.
I assure you, that's not the case.
This project has some clear Contribution Guidelines and expectations that you can read here.
The contribution guidelines outline the process that you'll need to follow to get a patch merged. By making expectations and process explicit, I hope it will make it easier for you to contribute.
And you don't just have to write code. You can help out by writing documentation, tests, or even by giving feedback about this work. (And yes, that includes giving feedback about the contribution guidelines.)
Thank you for contributing!
The project is hosted on GitHub where you can report issues, fork the project and submit pull requests. Please read Contribution Guide
The library is available under MIT license, which allows modification and redistribution for both commercial and non-commercial purposes.
Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.