Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
47 changes: 47 additions & 0 deletions MIGRATION_NOTES.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# Jekyll to Jackdaw Migration Notes

## 1. Project Initialization
* Run `jackdaw new <project_name>` to generate the standard directory structure:
* `site/src`: Content
* `site/templates`: ERB Templates
* `site/assets`: Static files (images, css, favicons)

## 2. Template Conversion
* **Layouts**: Consolidate Jekyll layouts (default, page, etc.) into `site/templates/layout.html.erb`.
* Replace `{{ content }}` with `<%= content %>`.
* Replace `{{ page.title }}` with `<%= title %>`.
* **Partials**: Convert `{% include file.html %}` to `<%= render 'file' %>`.
* Rename partial files to start with an underscore (e.g., `_nav.html.erb`).
* **Assets**:
* Move CSS/JS/Images to `site/assets/`.
* **Important**: When referencing in HTML, omit `assets/`.
* `site/assets/styles.css` -> `<link href="/styles.css">`
* `site/assets/img/logo.png` -> `<img src="/img/logo.png">`

## 3. Content Migration Strategies
* **File Extensions**:
* Regular pages: `.md` -> `.page.md`
* Blog posts: `.md` -> `.blog.md` (Filename must start with `YYYY-MM-DD-`)
* **Frontmatter Handling**:
* Jackdaw renders the *first H1* as the page title.
* **Task**: Strip YAML frontmatter (`--- ... ---`) and ensure the file starts with `# Page Title`.
* **Directory Structure**:
* Keep the same folder structure in `site/src` to maintain URLs.
* **Conflict Warning**: Do not create `topic.page.md` if you also have a folder named `topic/`. Instead, create `topic/index.page.md`.

## 4. Automation (Ruby Script)
For bulk migration of documentation, use a script to:
1. Iterate through source directories.
2. Read file content.
3. specific YAML frontmatter values (Title).
4. Rewrite file to destination with new header and `.page.md` extension.

## 5. Navigation & Indices
* Jackdaw does not automatically build navigation menus from folder structure.
* **Manual**: Edit `site/templates/_nav.html.erb`.
* **Auto-generated Indices**: Write scripts to generate index markdown files (e.g., "List of all Rules") if the content changes frequently.

## 6. Styling
* Jackdaw provides no default styling.
* Create a robust `styles.css` using CSS Variables for theming.
* Link fonts and stylesheets in the `<head>` of `layout.html.erb`.
2 changes: 2 additions & 0 deletions usefakermaker.com.site/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
public/
.DS_Store
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
19 changes: 19 additions & 0 deletions usefakermaker.com.site/site/assets/favicons/site.webmanifest
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"name": "FakerMaker",
"short_name": "FakerMaker",
"icons": [
{
"src": "/favicons/android-chrome-192x192.png",
"sizes": "192x192",
"type": "image/png"
},
{
"src": "/favicons/android-chrome-512x512.png",
"sizes": "512x512",
"type": "image/png"
}
],
"theme_color": "#ffffff",
"background_color": "#ffffff",
"display": "standalone"
}
Loading
Loading