This commit is contained in:
Rory Hinnen
2026-05-03 12:57:26 -05:00
parent 5931b090e0
commit f8052460b3
11 changed files with 108 additions and 0 deletions
+9
View File
@@ -0,0 +1,9 @@
.DS_Store
Build
.build
Packages
xcuserdata/
DerivedData/
.swiftpm/configuration/registries.json
.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata
.netrc
+1
View File
@@ -0,0 +1 @@
Place any assets you want copied into the build here.
+1
View File
@@ -0,0 +1 @@
This is the best place to put images for your build, creating subfolders below here as needed.
+3
View File
@@ -0,0 +1,3 @@
If you want Ignite to generate pages based on Markdown files, you should place them in here. You can group your content however, you want – category, year, etc – just by placing them into subfolders of Content.
The same path (minus "Content") is used to place your rendered Markdown files in the Build folder, but you can also use the "path" YAML front matter to customize this.
+1
View File
@@ -0,0 +1 @@
If you need to import some pre-written HTML, you can place files here then bring them into your project using Include("YourFilename.html"). The Include element automatically looks in this Includes folder.
+22
View File
@@ -0,0 +1,22 @@
IgniteStarter
MIT License
Copyright (c) 2024 Paul Hudson and other authors.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
+17
View File
@@ -0,0 +1,17 @@
// swift-tools-version: 5.9
// The swift-tools-version declares the minimum version of Swift required to build this package.
import PackageDescription
let package = Package(
name: "IgniteStarter",
platforms: [.macOS(.v13)],
dependencies: [
.package(url: "https://github.com/twostraws/Ignite.git", branch: "main")
],
targets: [
.executableTarget(
name: "IgniteStarter",
dependencies: ["Ignite"]),
]
)
+5
View File
@@ -0,0 +1,5 @@
# IgniteStarter
This repository contains a starter project built using the [Ignite static site generator](https://github.com/twostraws/Ignite) – it includes just enough to get you going, so you should refer to the [IgniteSamples](https://github.com/twostraws/IgniteSamples) repository for detailed code samples.
You'll find small text file in each folder explaining what that folder does. Once you're happy with that, you should delete those files.
+11
View File
@@ -0,0 +1,11 @@
import Foundation
import Ignite
struct MainLayout: Layout {
var body: some Document {
Body {
content
IgniteFooter()
}
}
}
+11
View File
@@ -0,0 +1,11 @@
import Foundation
import Ignite
struct Home: StaticPage {
var title = "Home"
var body: some HTML {
Text("Hello world!")
.font(.title1)
}
}
+27
View File
@@ -0,0 +1,27 @@
import Foundation
import Ignite
@main
struct IgniteWebsite {
static func main() async {
var site = ExampleSite()
do {
try await site.publish()
} catch {
print(error.localizedDescription)
}
}
}
struct ExampleSite: Site {
var name = "Hello World"
var titleSuffix = " – My Awesome Site"
var url = URL(static: "https://www.example.com")
var builtInIconsEnabled = true
var author = "John Appleseed"
var homePage = Home()
var layout = MainLayout()
}