Update .gitignore to exclude TypeScript build info and add dist directory. Expand README with project overview, technology stack, prerequisites, and instructions for running and testing the application.
ci / server (push) Failing after 4m10s
ci / client (push) Successful in 17s

This commit is contained in:
Leonid Pershin
2026-08-18 11:11:48 +03:00
parent 84aafb0b69
commit e6739e7912
84 changed files with 5698 additions and 2 deletions
+22
View File
@@ -0,0 +1,22 @@
using Microsoft.Extensions.Configuration;
var builder = DistributedApplication.CreateBuilder(args);
var server = builder.AddProject<Projects.HSchool_Server>("server")
.WithHttpHealthCheck("/health")
.WithExternalHttpEndpoints();
// Integration tests and CI run headless: no Node, no dev server, just the game server.
var headless = builder.Configuration.GetValue("HSchool:Headless", false);
if (!headless)
{
var client = builder.AddViteApp("client", "../HSchool.Client")
.WithReference(server)
.WaitFor(server);
// On publish the built client is copied into the server image and served from wwwroot.
server.PublishWithContainerFiles(client, "wwwroot");
}
builder.Build().Run();
@@ -0,0 +1,19 @@
<Project Sdk="Aspire.AppHost.Sdk/13.4.6">
<PropertyGroup>
<OutputType>Exe</OutputType>
<RootNamespace>HSchool.AppHost</RootNamespace>
<UserSecretsId>hschool-apphost-8f2c1d4a</UserSecretsId>
<IsAspireHost>true</IsAspireHost>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Aspire.Hosting.AppHost" />
<PackageReference Include="Aspire.Hosting.JavaScript" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\HSchool.Server\HSchool.Server.csproj" />
</ItemGroup>
</Project>
@@ -0,0 +1,32 @@
{
"$schema": "https://json.schemastore.org/launchsettings.json",
"profiles": {
"https": {
"commandName": "Project",
"dotnetRunMessages": true,
"launchBrowser": true,
"applicationUrl": "https://localhost:17180;http://localhost:15180",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development",
"DOTNET_ENVIRONMENT": "Development",
"ASPIRE_DASHBOARD_OTLP_ENDPOINT_URL": "https://localhost:21180",
"ASPIRE_DASHBOARD_MCP_ENDPOINT_URL": "https://localhost:23180",
"ASPIRE_RESOURCE_SERVICE_ENDPOINT_URL": "https://localhost:22180"
}
},
"http": {
"commandName": "Project",
"dotnetRunMessages": true,
"launchBrowser": true,
"applicationUrl": "http://localhost:15180",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development",
"DOTNET_ENVIRONMENT": "Development",
"ASPIRE_ALLOW_UNSECURED_TRANSPORT": "true",
"ASPIRE_DASHBOARD_OTLP_ENDPOINT_URL": "http://localhost:19180",
"ASPIRE_DASHBOARD_MCP_ENDPOINT_URL": "http://localhost:18180",
"ASPIRE_RESOURCE_SERVICE_ENDPOINT_URL": "http://localhost:20180"
}
}
}
}
@@ -0,0 +1,8 @@
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
}
}
+9
View File
@@ -0,0 +1,9 @@
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning",
"Aspire.Hosting.Dcp": "Warning"
}
}
}