I work with attorneys , who , as you probably know , are almost universally assholes . However , from timetotime , these assholes go after even bigger assholes . So , that ' s fun . <| sep |> 1 You add the type provider to your project just like any other NuGet package . The only difference is that your IDE may warn you that the package will be executing live code and that you should make sure you trust the source . 2 You define the types you want to use . They ' re defined a bit like . NET generic types , using one or more type parameters , except that one of the type parameters will be a compiletime constant usually a string literal pointing them to the developer resource that they will use to build your types in realtime while you code . Some examples type myJsonData JsonProvider type myExcelData ExcelProviderCDocumentsMy ProjectsResourcesstuff . xls type mySqlQueryResult SqlProviderData S o u r c eSTAGINGSERVERMSSQLSERVER , SELECT FROM CustomersIf the type provider can ' t read and parse data from the sources in the parameters , you ' ll get a red squiggle and a compiletime error . Otherwise , the type will be immediately created in the background . 3 Finally , you can actually create and use the types in your code . In the constructor , you may usually provide a different resource which will be used at runtime , and which will be expected to have the same structure as the compiletime resource otherwise you ' ll get a runtime error . this will read from at runtime let stronglyTypedJson myJsonData this will read from selectedPath at runtime , and expect it to match your stuff . xls file let stronglyTypedExcel myExcelData selectedPath this will run the same query as above , but on the user ' s database instead of the developer ' s let stronglyTypedQueryResults mySqlQueryResult localConnection let newCarModels stronglyTypedJson . Cars Seq . filter fun c c . Year 2016 Seq . map fun c c . Models let oldestThreeRows stronglyTypedExcel . Sheets . . Rows Seq . sortBy fun r r . Date Seq . take 3 let customerNames stronglyTypedQueryResults . Rows Seq . map fun r r . Name