{"id":20875040,"url":"https://github.com/servicestack/servicestackvs","last_synced_at":"2025-05-12T15:31:04.587Z","repository":{"id":18720710,"uuid":"21931780","full_name":"ServiceStack/ServiceStackVS","owner":"ServiceStack","description":"ServiceStackVS - Visual Studio extension for ServiceStack","archived":false,"fork":false,"pushed_at":"2023-03-02T20:41:33.000Z","size":255106,"stargazers_count":120,"open_issues_count":16,"forks_count":40,"subscribers_count":24,"default_branch":"master","last_synced_at":"2025-05-08T03:37:04.627Z","etag":null,"topics":["c-sharp","extension","servicestack","visual-studio"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":false,"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/ServiceStack.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,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2014-07-17T06:54:34.000Z","updated_at":"2024-07-28T14:39:54.000Z","dependencies_parsed_at":"2024-11-18T09:32:21.605Z","dependency_job_id":null,"html_url":"https://github.com/ServiceStack/ServiceStackVS","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ServiceStack%2FServiceStackVS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ServiceStack%2FServiceStackVS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ServiceStack%2FServiceStackVS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ServiceStack%2FServiceStackVS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ServiceStack","download_url":"https://codeload.github.com/ServiceStack/ServiceStackVS/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253765795,"owners_count":21960793,"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":["c-sharp","extension","servicestack","visual-studio"],"created_at":"2024-11-18T06:41:34.362Z","updated_at":"2025-05-12T15:30:59.568Z","avatar_url":"https://github.com/ServiceStack.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"Follow [@ServiceStack](https://twitter.com/servicestack) or join the [Google+ Community](https://plus.google.com/communities/112445368900682590445)\nfor updates, or [StackOverflow](http://stackoverflow.com/questions/ask) or the [Customer Forums](https://forums.servicestack.net/) for support.\n\n# [ServiceStack VS.NET Templates](https://visualstudiogallery.msdn.microsoft.com/5bd40817-0986-444d-a77d-482e43a48da7)\n\nServiceStackVS supports Visual Studio 2017, 2015 and 2013 and can be installed from within VS.NET:\n\n## Install ServiceStackVS \n\nInstall the ServiceStackVS VS.NET Extension by going to `Tools \u003e Extensions and Updates...`\n\n[![](https://raw.githubusercontent.com/ServiceStack/ServiceStackVS/master/Images/tools_extensions.png)](https://raw.githubusercontent.com/ServiceStack/ServiceStackVS/master/Images/tools_extensions.png)\n\nThen searching the Visual Studio Gallery for **ServiceStack**\n\n[![](https://raw.githubusercontent.com/ServiceStack/ServiceStackVS/master/Images/search_download.png)](https://raw.githubusercontent.com/ServiceStack/ServiceStackVS/master/Images/search_download.png)\n\nOptionally it can be downloaded and installed from the [VS.NET Gallery](http://visualstudiogallery.msdn.microsoft.com/5bd40817-0986-444d-a77d-482e43a48da7)\n\n[![VS.NET Gallery Download](https://raw.githubusercontent.com/ServiceStack/Assets/master/img/servicestackvs/vsgallery-download.png)](http://visualstudiogallery.msdn.microsoft.com/5bd40817-0986-444d-a77d-482e43a48da7)\n\nOnce installed you can create a new ServiceStack Project from the new VS.NET Projects dialog:\n\n![ServiceStack VS.NET Templates Dialog](https://raw.githubusercontent.com/ServiceStack/docs/master/docs/images/ssvs/new-projects-dialog.png)\n\nMost of ServiceStack Templates follow our [multi-project recommended projects structure](http://docs.servicestack.net/physical-project-structure).\n\n### Visual Studio 2015 or 2013\n\nIf you're still using VS.NET 2015 or 2013 you can install the previous VS.NET ServiceStackVS extension:\n\n - [ServiceStackVS.vsix](https://github.com/ServiceStack/ServiceStackVS/raw/master/dist/2018/ServiceStackVS.vsix)\n\n### Recommended Plugins and Tools\n\nTo take advantage of all the templates and to improve the development workflow, it's best to get the following Visual Studio \nplugins/extensions for all available versions of Visual Studio.\n\n- [Node Tools for Visual Stuido](https://github.com/Microsoft/nodejstools/releases/tag/v1.1.1)\n- [TypeScript Extension](https://github.com/Microsoft/TypeScript/releases)\n\n## ServiceStack VS.NET Templates\n\nThis project structure includes examples of a lot of the different tasks that will have to be done while building a \nsingle page application to guide developers as their application grows.\n\n - [Angular4 App](http://docs.servicestack.net/templates-single-page-apps)\n - [Aurelia App](http://docs.servicestack.net/templates-single-page-apps)\n - [React App](http://docs.servicestack.net/templates-single-page-apps)\n - [React Desktop Apps](http://docs.servicestack.net/templates-single-page-apps)\n - [Vue App](http://docs.servicestack.net/templates-single-page-apps)\n - [AngularJS 1.5 App](http://docs.servicestack.net/templates-angularjs-v15)\n - [ASP.NET Empty](http://docs.servicestack.net/templates-aspnet-empty)\n - [ServiceStack ASP.NET Empty](http://docs.servicestack.net/create-your-first-webservice)\n - [ServiceStack ASP.NET MVC4](https://github.com/ServiceStackApps/SocialBootstrapApi)\n - [ServiceStack ASP.NET with Bootstrap](https://github.com/ServiceStackApps/EmailContacts)\n - [ServiceStack ASP.NET with Razor](http://razor.servicestack.net)\n - [Self Host Empty](http://docs.servicestack.net/self-hosting)\n - [Self Host with Razor](http://razor.servicestack.net/#runs-everywhere)\n - [Windows Service Empty](http://docs.servicestack.net/templates-windows-service)\n\nThese project templates are structured to encourage patterns to help kickstart your new ServiceStack application.\n\n## Single Page App Templates\n\nOur goal with our [Webpack-powered Single Page App VS.NET templates](http://docs.servicestack.net/templates-single-page-apps) \nis to provide access to the best tooling and development experience whilst keeping complexity and required knowledge \nto an absolute minimum, as such we're constantly researching how we can simplify our SPA templates, using the least \nmoving parts and pick technologies that work seamlessly together whilst offering maximum value for minimal complexity. \nAs the best SPA tooling mandates an npm-based workflow this is a delicate balance of trade-offs as the number of 3rd party \nJS components, tools, transpilers, scripts and plugins required for building on a modern SPA JS framework can quickly \nexplode - something we actively fight hard against that influences each aspect of our default templates. \n\n### Benefits of TypeScript\n\nCentering around TypeScript enables a lot of benefits in both a modern Type Safe language as well as access to \nthe latest JS features whilst being able to target downstream ES5 browsers for broad compatibility. TypeScript\nis expertly designed and actively developed with frequent releases where new features added are backwards-compatible, \nintuitive and work well with existing features. Being encapsulated within a single tool means new features \ndoesn't introduce new complexity, i.e. there's no additional config files to learn and little possibility\nthat new TypeScript releases will break existing Apps. \n\n## F# Templates\n\nThe F# Project templates included in ServiceStackVS extension:\n\n![F# templates](https://raw.githubusercontent.com/ServiceStack/docs/master/docs/images/ssvs/new-projects-fsharp-dialog.png)\n\nThese F# templates follow the same recommended multi-project structure used in the C# templates. \nThere's also a community created [F# ServiceStack](http://visualstudiogallery.msdn.microsoft.com/278caff1-917a-4ac1-a552-e5a2ce0f6e1f) \nextension for ServiceStack (V3 and V4) projects in different single project configurations.\n\n### F# ASP.NET with Freebase API Demo\n\nBelow is an example of creating a service that serves data from Freebase, showing F# strengths of concise, readable code taking advantage of ServiceStack's built-in data formats:\n\n![](https://github.com/ServiceStack/Assets/raw/master/img/servicestackvs/fsharp-template-with-demo.gif)\n\n[About the F# Freebase Demo](https://github.com/ServiceStack/ServiceStackVS/blob/master/fsharp.md#f-aspnet-with-freebase-api-demo).\n\n# [Add ServiceStack Reference](http://docs.servicestack.net/add-servicestack-reference)\n\nServiceStack's **Add ServiceStack Reference** feature shows our initial support for adding generated Native Types to \nclient VS.NET projects using \n[ServiceStackVS](http://docs.servicestack.net/create-your-first-webservice#step-1-download-and-install-servicestackvs) - providing a \nsimpler, cleaner and more versatile alternative to WCF's **Add Service Reference** feature that's built into VS.NET. \n\nThe first languages supported are C#, F#, VB.Net and TypeScript, effectively providing a flexible alternative than sharing your \nDTO assembly with clients, now clients can easily add a reference to a remote ServiceStack instance and update DTO's directly \nfrom within VS.NET. This also lays the groundwork and signals our approach on adding support for typed API's in other languages in future. \nAdd a [feature request for your favorite language](http://servicestack.uservoice.com/forums/176786-feature-requests) to prioritize support for it sooner!\n\nOur goal with Native Types is to provide an alternative for sharing DTO dlls, that can enable a better dev workflow for \nexternal clients who are now able to generate (and update) Typed APIs for your Services from a remote url - reducing the \nburden and effort required to consume ServiceStack Services whilst benefiting from clients native language strong-typing feedback.\n\nServiceStackVS offers the generation and updating of these clients through the same context for C#, F# and VB.Net. \nThis gives developers a consistent way of creating and updating your DTOs regardless of your language of choice.\n\n### Supported Languages\n\n* [C# Add ServiceStack Reference](/csharp-add-servicestack-reference)\n* [TypeScript Add ServiceStack Reference](/typescript-add-servicestack-reference)\n* [Swift Add ServiceStack Reference](/swift-add-servicestack-reference)\n* [Java Add ServiceStack Reference](/java-add-servicestack-reference)\n* [Kotlin Add ServiceStack Reference](/kotlin-add-servicestack-reference)\n* [F# Add ServiceStack Reference](/fsharp-add-servicestack-reference)\n* [VB.NET Add ServiceStack Reference](/vbnet-add-servicestack-reference)\n\n## Example Usage\n\n\u003e C# Android PCL Client example\n\n![C# Android PCL Client example](https://raw.githubusercontent.com/ServiceStack/ServiceStackVS/master/Images/android-add-ref-demo.gif)\n\n\u003e VB.NET client talking with C# Server example\n\n![CSharp server with VB.Net client example](https://github.com/ServiceStack/Assets/raw/master/img/servicestackvs/servicestack%20reference/csharp-server-vb-client.gif)\n\n## ServiceStackXS - Xamarin Studio Addin\n\nServiceStack's **Add ServiceStack Reference** is now available for Xamarin Studio via the official ServiceStack addin, ServiceStackXS! Just like ServiceStackVS, ServiceStackXS includes Add/Update ServiceStack Reference for use with ServiceStack servers enabling a better workflow for external clients. ServiceStackXS is initially adding support for the following languages.\n\n* [C# Add ServiceStack Reference](/csharp-add-servicestack-reference)\n* [F# Add ServiceStack Reference](/fsharp-add-servicestack-reference)\n* [VB.NET Add ServiceStack Reference](/vbnet-add-servicestack-reference)\n\n#### Disable Update On Save Settings\n\nThe default behavior of ServiceStackVS is to update ServiceStack references on save so that you can easily get the latest changes \nand not work with incorrect or out of date references. Something this behavior might not be desired, so this behavior can be \ndisabled with a `servicestack.vsconfig` file at the base of the project with these refereces. The following snippet can be pasted \ninto a new file called `servicestack.vsconfig` at the ase of a project to control this behaviour on a project by project basis. \n\n###### Example of `servicestack.vsconfig`\n\n``` servicestack.vsconfig\nDisableNpmInstallOnSave true\nDisableBowerInstallOnSave true\nDisableUpdateReferenceOnSave true\n```\n\nTo apply this configuration, right click on the appropriate project, select `File`-\u003e`Add`-\u003e`New Item`, search for `Text` and add a \nnew file called `servicestack.vsconfig`. This file is just a key/value pair separated by space with 3 options.\n\n- `DisableNpmInstallOnSave` - This disables ServiceStackVS default to update NPM references on the save of a `packages.json` file*. *=This feature auto disables based on version of VS as to not intefer with other operations performing the NPM install.\n- `DisableBowerInstallOnSave` - This disables ServiceStackVS default to update Bower references on the save of a `bower.json` file*. * =This feature auto disables based on version of VS as to not intefer with other operations performing the Bower install.\n- `DisableUpdateReferenceOnSave` - This disables ServiceStackVS default to update ServiceStack reference files automatically on save.\n\n### Feedback\n\nWe hope **ServiceStackVS** helps make ServiceStack developers more productive than ever and we'll look at continue improving it with new features in future. [Suggestions and feedback are welcome](http://servicestack.uservoice.com/forums/176786-feature-requests) or raise any issues in the [Issues List](https://github.com/ServiceStack/Issues) or submit new [feature requests in our UserVoice](http://servicestack.uservoice.com/forums/176786-feature-requests).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fservicestack%2Fservicestackvs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fservicestack%2Fservicestackvs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fservicestack%2Fservicestackvs/lists"}