Zlr3-NFJ@NFaJlhyfcw{k^vvtGl`N9xSo**rDW4S}i
zM9{fMPWo%4wYDG~BZ18BD+}h|GQKc-g^{++3MY>}W_uq7jGHx{mwE9fZiPCoxN$+7
zrODGGJrOkcPQUB(FD5aoS4g~7#6NR^ma7-!>mHuJfY5kTe6PpNNKC9GGRiu^L31uG
z$7v`*JknQHsYB!Tm_W{a32TM099djW%5e+j0Ve_ct}IM>XLF1Ap+YvcrLV=|CKo6S
zb+9Nl3_YdKP6%Cxy@6TxZ>;4&nTneadr
z_ES90ydCev)LV!dN=#(*f}|ZORFdvkYBni^aLbUk>BajeWIOcmHP#8S)*2U~QKI%S
zyrLmtPqb&TphJ;>yAxri#;{uyk`JJqODDw%(Z=2`1uc}br^V%>j!gS)D*q*f_-qf8&D;W1dJgQMlaH5er
zN2U<%Smb7==vE}dDI8K7cKz!vs^73o9f>2sgiTzWcwY|BMYHH5%Vn7#kiw&eItCqa
zIkR2~Q}>X=Ar8W|^Ms41Fm8o6IB2_j60eOeBB1Br!boW7JnoeX6Gs)?7rW0^5psc-
zjS16yb>dFn>KPOF;imD}e!enuIniFzv}n$m2#gCCv4jM#ArwlzZ$7@9&XkFxZ4n!V
zj3dyiwW4Ki2QG{@i>yuZXQizw_OkZI^-3otXC{!(lUpJF33gI60ak;Uqitp74|B6I
zgg{b=Iz}WkhCGj1M=hu4#Aw173YxIVbISaoc
z-nLZC*6Tgivd5V`K%GxhBsp@SUU60-rfc$=wb>zdJzXS&-5(NRRodFk;Kxk!S(O(a0e7oY=E(
zAyS;Ow?6Q&XA+cnkCb{28_1N8H#?J!*$MmIwLq^*T_9-z^&UE@A(z9oGYtFy6EZef
LrJugUA?W`A8`#=m
literal 0
HcmV?d00001
diff --git a/frontend/src/app/globals.css b/frontend/src/app/globals.css
new file mode 100644
index 0000000..a2dc41e
--- /dev/null
+++ b/frontend/src/app/globals.css
@@ -0,0 +1,26 @@
+@import "tailwindcss";
+
+:root {
+ --background: #ffffff;
+ --foreground: #171717;
+}
+
+@theme inline {
+ --color-background: var(--background);
+ --color-foreground: var(--foreground);
+ --font-sans: var(--font-geist-sans);
+ --font-mono: var(--font-geist-mono);
+}
+
+@media (prefers-color-scheme: dark) {
+ :root {
+ --background: #0a0a0a;
+ --foreground: #ededed;
+ }
+}
+
+body {
+ background: var(--background);
+ color: var(--foreground);
+ font-family: Arial, Helvetica, sans-serif;
+}
diff --git a/frontend/src/app/layout.js b/frontend/src/app/layout.js
new file mode 100644
index 0000000..7bf337d
--- /dev/null
+++ b/frontend/src/app/layout.js
@@ -0,0 +1,29 @@
+import { Geist, Geist_Mono } from "next/font/google";
+import "./globals.css";
+
+const geistSans = Geist({
+ variable: "--font-geist-sans",
+ subsets: ["latin"],
+});
+
+const geistMono = Geist_Mono({
+ variable: "--font-geist-mono",
+ subsets: ["latin"],
+});
+
+export const metadata = {
+ title: "Create Next App",
+ description: "Generated by create next app",
+};
+
+export default function RootLayout({ children }) {
+ return (
+
+
+ {children}
+
+
+ );
+}
diff --git a/frontend/src/app/page.js b/frontend/src/app/page.js
new file mode 100644
index 0000000..d625a20
--- /dev/null
+++ b/frontend/src/app/page.js
@@ -0,0 +1,103 @@
+import Image from "next/image";
+
+export default function Home() {
+ return (
+
+
+
+
+ -
+ Get started by editing{" "}
+
+ src/app/page.js
+
+ .
+
+ -
+ Save and see your changes instantly.
+
+
+
+
+
+
+
+ );
+}
diff --git a/src/Printbase.Application/Class1.cs b/src/Printbase.Application/Class1.cs
new file mode 100644
index 0000000..fff6417
--- /dev/null
+++ b/src/Printbase.Application/Class1.cs
@@ -0,0 +1,5 @@
+namespace Printbase.Application;
+
+public class Class1
+{
+}
\ No newline at end of file
diff --git a/src/Printbase.Application/Printbase.Application.csproj b/src/Printbase.Application/Printbase.Application.csproj
new file mode 100644
index 0000000..17b910f
--- /dev/null
+++ b/src/Printbase.Application/Printbase.Application.csproj
@@ -0,0 +1,9 @@
+
+
+
+ net9.0
+ enable
+ enable
+
+
+
diff --git a/src/Printbase.Domain/Class1.cs b/src/Printbase.Domain/Class1.cs
new file mode 100644
index 0000000..faafe41
--- /dev/null
+++ b/src/Printbase.Domain/Class1.cs
@@ -0,0 +1,5 @@
+namespace Printbase.Domain;
+
+public class Class1
+{
+}
\ No newline at end of file
diff --git a/src/Printbase.Domain/Printbase.Domain.csproj b/src/Printbase.Domain/Printbase.Domain.csproj
new file mode 100644
index 0000000..17b910f
--- /dev/null
+++ b/src/Printbase.Domain/Printbase.Domain.csproj
@@ -0,0 +1,9 @@
+
+
+
+ net9.0
+ enable
+ enable
+
+
+
diff --git a/src/Printbase.Infrastructure/Class1.cs b/src/Printbase.Infrastructure/Class1.cs
new file mode 100644
index 0000000..73d80a3
--- /dev/null
+++ b/src/Printbase.Infrastructure/Class1.cs
@@ -0,0 +1,5 @@
+namespace Printbase.Infrastructure;
+
+public class Class1
+{
+}
\ No newline at end of file
diff --git a/src/Printbase.Infrastructure/Printbase.Infrastructure.csproj b/src/Printbase.Infrastructure/Printbase.Infrastructure.csproj
new file mode 100644
index 0000000..17b910f
--- /dev/null
+++ b/src/Printbase.Infrastructure/Printbase.Infrastructure.csproj
@@ -0,0 +1,9 @@
+
+
+
+ net9.0
+ enable
+ enable
+
+
+
diff --git a/src/Printbase.WebApi/Dockerfile b/src/Printbase.WebApi/Dockerfile
new file mode 100644
index 0000000..da08e3a
--- /dev/null
+++ b/src/Printbase.WebApi/Dockerfile
@@ -0,0 +1,23 @@
+FROM mcr.microsoft.com/dotnet/aspnet:9.0 AS base
+USER $APP_UID
+WORKDIR /app
+EXPOSE 8080
+EXPOSE 8081
+
+FROM mcr.microsoft.com/dotnet/sdk:9.0 AS build
+ARG BUILD_CONFIGURATION=Release
+WORKDIR /src
+COPY ["src/Printbase.WebApi/Printbase.WebApi.csproj", "src/Printbase.WebApi/"]
+RUN dotnet restore "src/Printbase.WebApi/Printbase.WebApi.csproj"
+COPY . .
+WORKDIR "/src/src/Printbase.WebApi"
+RUN dotnet build "Printbase.WebApi.csproj" -c $BUILD_CONFIGURATION -o /app/build
+
+FROM build AS publish
+ARG BUILD_CONFIGURATION=Release
+RUN dotnet publish "Printbase.WebApi.csproj" -c $BUILD_CONFIGURATION -o /app/publish /p:UseAppHost=false
+
+FROM base AS final
+WORKDIR /app
+COPY --from=publish /app/publish .
+ENTRYPOINT ["dotnet", "Printbase.WebApi.dll"]
diff --git a/src/Printbase.WebApi/Printbase.WebApi.csproj b/src/Printbase.WebApi/Printbase.WebApi.csproj
new file mode 100644
index 0000000..c741fda
--- /dev/null
+++ b/src/Printbase.WebApi/Printbase.WebApi.csproj
@@ -0,0 +1,13 @@
+
+
+
+ net9.0
+ enable
+ enable
+
+
+
+
+
+
+
diff --git a/src/Printbase.WebApi/Printbase.WebApi.http b/src/Printbase.WebApi/Printbase.WebApi.http
new file mode 100644
index 0000000..b6f54d3
--- /dev/null
+++ b/src/Printbase.WebApi/Printbase.WebApi.http
@@ -0,0 +1,6 @@
+@Printbase.WebApi_HostAddress = http://localhost:5220
+
+GET {{Printbase.WebApi_HostAddress}}/weatherforecast/
+Accept: application/json
+
+###
diff --git a/src/Printbase.WebApi/Program.cs b/src/Printbase.WebApi/Program.cs
new file mode 100644
index 0000000..ee9d65d
--- /dev/null
+++ b/src/Printbase.WebApi/Program.cs
@@ -0,0 +1,41 @@
+var builder = WebApplication.CreateBuilder(args);
+
+// Add services to the container.
+// Learn more about configuring OpenAPI at https://aka.ms/aspnet/openapi
+builder.Services.AddOpenApi();
+
+var app = builder.Build();
+
+// Configure the HTTP request pipeline.
+if (app.Environment.IsDevelopment())
+{
+ app.MapOpenApi();
+}
+
+app.UseHttpsRedirection();
+
+var summaries = new[]
+{
+ "Freezing", "Bracing", "Chilly", "Cool", "Mild", "Warm", "Balmy", "Hot", "Sweltering", "Scorching"
+};
+
+app.MapGet("/weatherforecast", () =>
+{
+ var forecast = Enumerable.Range(1, 5).Select(index =>
+ new WeatherForecast
+ (
+ DateOnly.FromDateTime(DateTime.Now.AddDays(index)),
+ Random.Shared.Next(-20, 55),
+ summaries[Random.Shared.Next(summaries.Length)]
+ ))
+ .ToArray();
+ return forecast;
+})
+.WithName("GetWeatherForecast");
+
+app.Run();
+
+record WeatherForecast(DateOnly Date, int TemperatureC, string? Summary)
+{
+ public int TemperatureF => 32 + (int)(TemperatureC / 0.5556);
+}
diff --git a/src/Printbase.WebApi/Properties/launchSettings.json b/src/Printbase.WebApi/Properties/launchSettings.json
new file mode 100644
index 0000000..eb0c887
--- /dev/null
+++ b/src/Printbase.WebApi/Properties/launchSettings.json
@@ -0,0 +1,23 @@
+{
+ "$schema": "https://json.schemastore.org/launchsettings.json",
+ "profiles": {
+ "http": {
+ "commandName": "Project",
+ "dotnetRunMessages": true,
+ "launchBrowser": false,
+ "applicationUrl": "http://localhost:5220",
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ }
+ },
+ "https": {
+ "commandName": "Project",
+ "dotnetRunMessages": true,
+ "launchBrowser": false,
+ "applicationUrl": "https://localhost:7277;http://localhost:5220",
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ }
+ }
+ }
+}
diff --git a/src/Printbase.WebApi/appsettings.Development.json b/src/Printbase.WebApi/appsettings.Development.json
new file mode 100644
index 0000000..0c208ae
--- /dev/null
+++ b/src/Printbase.WebApi/appsettings.Development.json
@@ -0,0 +1,8 @@
+{
+ "Logging": {
+ "LogLevel": {
+ "Default": "Information",
+ "Microsoft.AspNetCore": "Warning"
+ }
+ }
+}
diff --git a/src/Printbase.WebApi/appsettings.json b/src/Printbase.WebApi/appsettings.json
new file mode 100644
index 0000000..10f68b8
--- /dev/null
+++ b/src/Printbase.WebApi/appsettings.json
@@ -0,0 +1,9 @@
+{
+ "Logging": {
+ "LogLevel": {
+ "Default": "Information",
+ "Microsoft.AspNetCore": "Warning"
+ }
+ },
+ "AllowedHosts": "*"
+}
|