diff --git a/AcDream.slnx b/AcDream.slnx
index 8772319..b87ab62 100644
--- a/AcDream.slnx
+++ b/AcDream.slnx
@@ -1,5 +1,11 @@
+
+
+
+
+
+
diff --git a/src/AcDream.App/AcDream.App.csproj b/src/AcDream.App/AcDream.App.csproj
new file mode 100644
index 0000000..162ad58
--- /dev/null
+++ b/src/AcDream.App/AcDream.App.csproj
@@ -0,0 +1,21 @@
+
+
+ Exe
+ net10.0
+ enable
+ enable
+ latest
+ true
+ AcDream.App
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/AcDream.App/Program.cs b/src/AcDream.App/Program.cs
new file mode 100644
index 0000000..f7c3234
--- /dev/null
+++ b/src/AcDream.App/Program.cs
@@ -0,0 +1,3 @@
+// src/AcDream.App/Program.cs
+Console.WriteLine("acdream app — phase 1 skeleton");
+return 0;
diff --git a/src/AcDream.Core/AcDream.Core.csproj b/src/AcDream.Core/AcDream.Core.csproj
new file mode 100644
index 0000000..a919781
--- /dev/null
+++ b/src/AcDream.Core/AcDream.Core.csproj
@@ -0,0 +1,16 @@
+
+
+ net10.0
+ enable
+ enable
+ latest
+ true
+
+
+
+
+
+
+
+
+
diff --git a/src/AcDream.Core/Placeholder.cs b/src/AcDream.Core/Placeholder.cs
new file mode 100644
index 0000000..d66c94e
--- /dev/null
+++ b/src/AcDream.Core/Placeholder.cs
@@ -0,0 +1,3 @@
+// src/AcDream.Core/Placeholder.cs
+namespace AcDream.Core;
+internal static class Placeholder { }
diff --git a/src/AcDream.Plugin.Abstractions/AcDream.Plugin.Abstractions.csproj b/src/AcDream.Plugin.Abstractions/AcDream.Plugin.Abstractions.csproj
new file mode 100644
index 0000000..10225ce
--- /dev/null
+++ b/src/AcDream.Plugin.Abstractions/AcDream.Plugin.Abstractions.csproj
@@ -0,0 +1,9 @@
+
+
+ net10.0
+ enable
+ enable
+ latest
+ true
+
+
diff --git a/src/AcDream.Plugin.Abstractions/Placeholder.cs b/src/AcDream.Plugin.Abstractions/Placeholder.cs
new file mode 100644
index 0000000..1cbfb0f
--- /dev/null
+++ b/src/AcDream.Plugin.Abstractions/Placeholder.cs
@@ -0,0 +1,3 @@
+// src/AcDream.Plugin.Abstractions/Placeholder.cs
+namespace AcDream.Plugin.Abstractions;
+internal static class Placeholder { }
diff --git a/tests/AcDream.Core.Tests/AcDream.Core.Tests.csproj b/tests/AcDream.Core.Tests/AcDream.Core.Tests.csproj
new file mode 100644
index 0000000..8bd478d
--- /dev/null
+++ b/tests/AcDream.Core.Tests/AcDream.Core.Tests.csproj
@@ -0,0 +1,25 @@
+
+
+
+ net10.0
+ enable
+ enable
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/AcDream.Core.Tests/SmokeTest.cs b/tests/AcDream.Core.Tests/SmokeTest.cs
new file mode 100644
index 0000000..3f71101
--- /dev/null
+++ b/tests/AcDream.Core.Tests/SmokeTest.cs
@@ -0,0 +1,11 @@
+// tests/AcDream.Core.Tests/SmokeTest.cs
+namespace AcDream.Core.Tests;
+
+public class SmokeTest
+{
+ [Fact]
+ public void TestProject_IsWired()
+ {
+ Assert.True(true);
+ }
+}