> For the complete documentation index, see [llms.txt](https://arif-hanif.gitbook.io/slackclone/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://arif-hanif.gitbook.io/slackclone/server/api/setup-server.md).

# Setup HotChocolate Server

We will begin by adding a very simple GraphQL server to a blank ASP.NET Core app. Modify Startup.cs to look like shown below.

{% code title="./Startup.cs" %}

```csharp
using HotChocolate;
using HotChocolate.AspNetCore;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;


namespace SlackClone
{
    public class Query
    {
        public string Hello => "World";
    }

    public class Startup
    {
        // This method gets called by the runtime. 
        // Use this method to add services to the container.
        // For more information on how to configure your application, 
        // visit https://go.microsoft.com/fwlink/?LinkID=398940
        public void ConfigureServices(IServiceCollection services)
        {
            // Adds GraphQL Schema
            services.AddGraphQL(services =>
                SchemaBuilder.New()
                    .AddServices(services)
                    .AddQueryType<Query>()
                    .Create());
        }

        // This method gets called by the runtime. 
        // Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }
            // Adds GraphQL Service
            app.UseGraphQL();
        }
    }
}
```

{% endcode %}

After Startup.cs has been modified, we can start the server by typing `dotnet run` . Once the server is running, open a command prompt/ terminal and type the following curl command. Verify if you are running a secure server or not you may need to update the url.

```
curl -X POST
  -H "Content-Type: application/json"
  --data "{ \"query\": \"{ hello }\" }"
  https://localhost:5000
```

&#x20;If everything went well you should see a response like below.

![](https://3683023892-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LurxKF9uo_T_1SndGac%2F-LvcEL_PXl-Ml7SSMIm5%2F-LvcFEplZM-3N6FDLVz1%2Fimage.png?alt=media\&token=222dbd47-b63a-4a0a-8bde-7f636fcb97f6)
