book-theme 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 06d5a9f873d9d52f5f61f6e838935dfe278f667b3f23d25fc9b033c284236c8f
4
+ data.tar.gz: b3923d1ddf214e49f9ec7637ef2bb4db51083f591a32a969a126e017c7996951
5
+ SHA512:
6
+ metadata.gz: b546c5e59ee052162220762eb4f09514dafb4553304a89f828f9068e73895ce0a7a40767cb91f1527335abe840211a3688ca079de1188c2bbb52fac38a76c75d
7
+ data.tar.gz: 2e827395d1caf48abb0bc7aafa2ccfb99ddf01c6fb664909910278ff3edbaa131b75c0057334631348a1714035bac922254713676888e4eae92a1c6923ed95c9
data/404.html ADDED
@@ -0,0 +1,91 @@
1
+ ---
2
+ layout: default
3
+ permalink: /404.html
4
+ title: 404 - Not Found
5
+ ---
6
+
7
+ <div class="profile-container">
8
+
9
+ <!-- SECTION: Tags Style Header -->
10
+ <div class="tags-container">
11
+ [ 404 / PAGE NOT FOUND / LOST ]
12
+ </div>
13
+
14
+ <!-- SECTION: Meta Data Table -->
15
+ <!-- Reusing the book meta table style for status info -->
16
+ <section class="meta-section">
17
+ <table class="meta-table">
18
+ <tr>
19
+ <th>I. Status</th>
20
+ <td>
21
+ <span class="symbol-bullet">𝄖</span> Missing<br>
22
+ <span class="symbol-bullet">𝄖</span> Unreachable
23
+ </td>
24
+ </tr>
25
+ <tr>
26
+ <th>II. Location</th>
27
+ <td>
28
+ <span class="symbol-bullet">𝄖</span> Unknown Directory<br>
29
+ <span class="symbol-bullet">𝄖</span> {{ page.url }}
30
+ </td>
31
+ </tr>
32
+ <tr>
33
+ <th>III. Action</th>
34
+ <td>
35
+ <span class="symbol-bullet">𝄖</span> Return Home<br>
36
+ <span class="symbol-bullet">𝄖</span> Retry Request
37
+ </td>
38
+ </tr>
39
+ </table>
40
+ </section>
41
+
42
+ <!-- SECTION: Warning Box -->
43
+ <!-- Reusing the warning style for the error message -->
44
+ <section class="warning-box">
45
+ <strong>BEFORE YOU CONTINUE</strong>
46
+ <p>The page you are looking for might have been removed, had its name changed, or is temporarily unavailable.</p>
47
+ <p class="disclaimer">
48
+ <span class="hangul-symbol">ᅳ</span> Viewer discretion is advised
49
+ </p>
50
+ <p class="wip-note">
51
+ This error page is currently a work in progress. Some details may be incomplete, missing, or subject to change as it continues to be developed
52
+ </p>
53
+ </section>
54
+
55
+ <!-- SECTION: Introduction / Content -->
56
+ <section class="introduction">
57
+ <h2>Introduction</h2>
58
+ <div class="content-body">
59
+ <p>
60
+ <span style="float:left; font-size: 3rem; line-height: 0.8; margin-right: 10px; font-family: 'Georgia', serif;">Y</span>
61
+ ou seem to have wandered into a section of the library that does not exist. Perhaps the book was misplaced, or the link you followed is outdated.
62
+ </p>
63
+ <p>
64
+ We recommend returning to the main index to find what you are looking for. Do not despair; even the best libraries have missing volumes.
65
+ </p>
66
+ </div>
67
+ </section>
68
+
69
+ <!-- SECTION: Scroll Box (Optional Decorative) -->
70
+ <div class="scroll-box">
71
+ <p>Suggested Actions:</p>
72
+ <p>1. Check the URL for typing errors.</p>
73
+ <p>2. Return to the homepage.</p>
74
+ <p>3. Contact the librarian if the problem persists.</p>
75
+ </div>
76
+ <span class="scroll-label">scroll to read more</span>
77
+
78
+ <!-- SECTION: Navigation Button -->
79
+ <div style="text-align: center; margin-top: 30px;">
80
+ <a href="{{ '/' | relative_url }}" style="text-decoration: none; border: 1px solid #333; padding: 10px 20px; color: #333; text-transform: uppercase; letter-spacing: 2px; font-size: 0.8rem;">
81
+ Return to Library
82
+ </a>
83
+ </div>
84
+
85
+ <!-- SECTION: Footer -->
86
+ <footer>
87
+ <p>Original Design by <a href="https://toyhou.se/Starcorex" target="_blank" style="color: inherit;">Starcorex</a></p>
88
+ <p>Adapted for Jekyll by {{ site.author | default: "You" }}</p>
89
+ </footer>
90
+
91
+ </div>
data/Gemfile ADDED
@@ -0,0 +1,35 @@
1
+ source "https://rubygems.org"
2
+
3
+ # Jekyll core
4
+ gem "jekyll", "~> 4.3"
5
+
6
+ # SCSS/Sass support
7
+ gem "jekyll-sass-converter", "~> 3.0"
8
+
9
+ # Optional plugins (GitHub Pages supports these)
10
+ group :jekyll_plugins do
11
+ gem "jekyll-seo-tag"
12
+ gem "jekyll-feed"
13
+ gem "jekyll-sitemap"
14
+ end
15
+
16
+ group :jekyll_plugins do
17
+ gem "jekyll-fa-icons"
18
+ end
19
+
20
+ group :jekyll_plugins do
21
+ gem "jekyll-feed"
22
+ end
23
+
24
+ # Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
25
+ # and associated library.
26
+ platforms :mingw, :x64_mingw, :mswin, :jruby do
27
+ gem "tzinfo"
28
+ gem "tzinfo-data"
29
+ end
30
+
31
+ # Performance-booster for watching directories on Windows
32
+ platforms :mingw, :x64_mingw, :mswin do
33
+ gem "wdm"
34
+ end
35
+
data/README.md ADDED
@@ -0,0 +1,136 @@
1
+ # 📚 Paperback Book Theme for Jekyll
2
+
3
+ A beautiful, vintage-inspired Jekyll theme for creating book library/profile pages. Based on the original [Paperback HTML design](https://toyhou.se/30182937.paperback-f2u/30231690.live-preview) by Starcorex, adapted for Jekyll with dynamic content generation.
4
+
5
+ ![Theme Preview](https://github.com/breakthebull/book-theme/blob/main/screenshot.png)
6
+
7
+ ---
8
+
9
+ ## Features
10
+
11
+ - **Decorative Card Layout** – Double-border frame with ornamental corner symbols (❧)
12
+ - **Left Sidebar**
13
+ - Book cover image with decorative corners
14
+ - Optional "Buy Book" button
15
+ - Quote box with elegant line dividers
16
+ - 5 metadata sections with alternating background colors
17
+ - About/Warning section (full-width)
18
+ - **Right Content Area**
19
+ - Book title with trait tags `[ TRAIT / TRAIT / TRAIT ]`
20
+ - Scrollable introduction box with drop cap (CSS `::first-letter`)
21
+ - Horizontal scrolling related books list (hidden scrollbar)
22
+ - Footer with credits
23
+ - **Responsive Design** – Optimized for desktop, tablet, and mobile
24
+ - **Auto-Generated Links** – Related books pull automatically from your `_books/` collection
25
+ - **Batch File Generator** – `new-book.bat` creates new book profiles with interactive prompts
26
+
27
+ ---
28
+
29
+ ## Installation
30
+
31
+ ### 1. Clone or Download
32
+ ```bash
33
+ # Clone your repository
34
+ git clone https://github.com/breakthebull/book-theme.git
35
+ cd book-theme
36
+ ```
37
+
38
+ ### 2. Install Dependencies
39
+ ```bash
40
+ bundle install
41
+ ```
42
+
43
+ ### 3. Configure `_config.yml`
44
+ ```yaml
45
+ title: "My Book Library"
46
+ author: "Your Name"
47
+ url: "https://yourdomain.com"
48
+
49
+ collections:
50
+ books:
51
+ output: true
52
+ permalink: /books/:title/
53
+ ```
54
+
55
+ ### 4. Run Locally
56
+ ```bash
57
+ bundle exec jekyll serve
58
+ ```
59
+ Visit `http://localhost:4000`
60
+
61
+ ### 5. Deploy to Nixihost
62
+ ```bash
63
+ bundle exec jekyll build
64
+ # Upload contents of _site/ folder to public_html/ via FTP
65
+ ```
66
+
67
+ ---
68
+
69
+ ## 📖 Creating New Books
70
+
71
+ ### Option 1: Use the Batch Generator (Windows)
72
+ ```bash
73
+ new-book.bat
74
+ ```
75
+ Follow the interactive prompts to fill in book details. The file will auto-open in your default editor.
76
+
77
+ ### Option 2: Manual Creation
78
+ Create a new file in `_books/`:
79
+ ```yaml
80
+ ---
81
+ title: "The Great Gatsby"
82
+ subtitle: "A Novel"
83
+ author: "F. Scott Fitzgerald"
84
+ published: "1925"
85
+ publisher: "Charles Scribner's Sons"
86
+ genre: "Classic Fiction"
87
+ series: "Standalone"
88
+ pages: "180"
89
+ status: "Completed"
90
+ traits: ["Tragic", "Symbolic", "Elegant"]
91
+ cover_image: "/assets/covers/gatsby.jpg"
92
+ quote: "So we beat on, boats against the current..."
93
+ description: "A story of wealth, love, and the American Dream."
94
+ buy_link: "https://amazon.com/example"
95
+ content_warning: "Infidelity, Death"
96
+ about_text: "A story of wealth, love, and the American Dream in the Jazz Age."
97
+ work_in_progress: false
98
+ ---
99
+
100
+ ## Introduction
101
+
102
+ Write your book review, analysis, or synopsis here...
103
+ ```
104
+
105
+ ---
106
+
107
+ ## Customization
108
+
109
+ ### Colors
110
+ Edit `_sass/main.scss` variables:
111
+ ```scss
112
+ $color-bg: #f5f3ed;
113
+ $color-text: #4a4a4a;
114
+ $color-accent: #8b7355;
115
+ $color-border: #c9b9a4;
116
+ ```
117
+
118
+ ## Credits
119
+
120
+ - **Original Design:** [Starcorex](https://toyhou.se/30182937.paperback-f2u/30231690.live-preview) on Toyhou.se
121
+ - **Jekyll Adaptation:** DAR
122
+ - **Fonts:** Cormorant Garamond, Space Mono (Google Fonts)
123
+
124
+ ---
125
+
126
+ ## License
127
+
128
+ This theme is adapted from the original Paperback HTML design. Please credit [Starcorex](https://toyhou.se/30182937.paperback-f2u/30231690.live-preview) and me when using this theme.
129
+
130
+ ## 📬 Support
131
+
132
+ For questions or issues, please open a GitHub issue or contact me directly.
133
+
134
+ ---
135
+
136
+ **Happy Reading! 📚✨**
@@ -0,0 +1,20 @@
1
+ ---
2
+ title: "Default Book"
3
+ author: ""
4
+ genre: ""
5
+ published: ""
6
+ pages: ""
7
+ status: "Completed"
8
+ traits: ["", "", ""]
9
+ cover_image: "/assets/covers/placeholder.jpg"
10
+ quote: ""
11
+ description: ""
12
+ buy_link: ""
13
+ content_warning: ""
14
+ about_text: ""
15
+ work_in_progress: false
16
+ ---
17
+
18
+ ## Introduction
19
+
20
+ Write your book review here...
@@ -0,0 +1,34 @@
1
+ ---
2
+ title: "Test Book 1"
3
+ subtitle: "Book One"
4
+ author: "Apple Bottom"
5
+ published: "2932"
6
+ publisher: "Pelican Pants"
7
+ genre: "Crazy Weird"
8
+ series: "The Test"
9
+ pages: "200"
10
+ status: "Completed"
11
+ traits: [\"Brave\", \"Smart\", \"Fast\"]
12
+ cover_image: "/assets/covers/placeholder.jpg"
13
+ quote: "Testing is for smart people"
14
+ description: "Sometimes the world needs a test."
15
+ about_title: ""
16
+ about_text: "Enjoy a world full of tests and how no one wants to take them."
17
+ work_in_progress: false
18
+ ---
19
+
20
+ ## Introduction
21
+
22
+ *Write your book review, analysis, or synopsis here. This content will appear in the scrollable box on the right side of the page.*
23
+
24
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
25
+
26
+ ### Key Themes
27
+
28
+ - Theme one
29
+ - Theme two
30
+ - Theme three
31
+
32
+ ### Final Thoughts
33
+
34
+ Your concluding thoughts about the book...
@@ -0,0 +1,31 @@
1
+ ---
2
+ title: "Test Book 2"
3
+ author: "Apple Bottom"
4
+ genre: "Crazy Weird"
5
+ series: "Standalone"
6
+ status: "Completed"
7
+ traits: [\"Brave\", \"Funny\", \"Smart\"]
8
+ cover_image: "/assets/covers/placeholder.jpg"
9
+ quote: "There are worlds out there that don't take tests"
10
+ description: "Smart and funny."
11
+ content_warning: "too smart"
12
+ about_title: "ABOUT THIS BOOK"
13
+ about_text: "Testing isn't for everyone until they realize it just might be."
14
+ work_in_progress: false
15
+ ---
16
+
17
+ ## Introduction
18
+
19
+ *Write your book review, analysis, or synopsis here. This content will appear in the scrollable box on the right side of the page.*
20
+
21
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
22
+
23
+ ### Key Themes
24
+
25
+ - Theme one
26
+ - Theme two
27
+ - Theme three
28
+
29
+ ### Final Thoughts
30
+
31
+ Your concluding thoughts about the book...
data/_books/my-book.md ADDED
@@ -0,0 +1,17 @@
1
+ ---
2
+ title: "Example Book"
3
+ # ... other front matter
4
+ ---
5
+
6
+ ## Introduction
7
+ This is the standard intro text.
8
+
9
+ ## Additional Notes
10
+ <div class="scroll-section">
11
+ Lorem ipsum dolor sit amet, consectetur... (Long text here)
12
+ </div>
13
+
14
+ ## Reviews
15
+ <div class="scroll-section">
16
+ More long text here...
17
+ </div>
@@ -0,0 +1,25 @@
1
+ ---
2
+ title: "The Great Gatsby"
3
+ subtitle: "A Novel"
4
+ author: "F. Scott Fitzgerald"
5
+ translator: "N/A"
6
+ published: "1925"
7
+ publisher: "Charles Scribner's Sons"
8
+ genre: "Classic Fiction"
9
+ series: "Standalone"
10
+ pages: "180"
11
+ status: "Completed"
12
+ traits: ["Tragic", "Symbolic", "Elegant"]
13
+ cover_image: "/assets/covers/gatsby.jpg"
14
+ quote: "So we beat on, boats against the current, borne back ceaselessly into the past."
15
+ content_warning: "Infidelity, Death, Substance Abuse"
16
+ about_title: "ABOUT THIS BOOK"
17
+ about_text: "A story of wealth, love, and the American Dream in the Jazz Age."
18
+ work_in_progress: false
19
+ description: "A story of wealth, love, and the American Dream in the Jazz Age."
20
+ buy_link: "https://amazon.com/example-book"
21
+ ---
22
+
23
+ Your detailed review and analysis goes here. This content will appear in the scrollable box on the right side of the page.
24
+
25
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit...
data/_config.yml ADDED
@@ -0,0 +1,45 @@
1
+ # Site settings
2
+ title: My Little Website
3
+ tagline: "Changing the world, one uninspired quote at a time"
4
+ url: "http://yourwebsite.com" # The base hostname & protocol for your site. Use it if you need absolute URL's
5
+
6
+ collections:
7
+ books:
8
+ output: true
9
+ permalink: /books/:title/
10
+
11
+ defaults:
12
+ - scope:
13
+ path: ""
14
+ type: "books"
15
+ values:
16
+ layout: "book-profile"
17
+
18
+ # Build settings
19
+ markdown: kramdown
20
+ highlighter: rouge
21
+
22
+ # Plugins (GitHub Pages supports these)
23
+ plugins:
24
+ - jekyll-seo-tag
25
+ - jekyll-feed
26
+ - jekyll-sitemap
27
+ - jekyll-fa-icons
28
+
29
+ # Social
30
+ socialimg: /img/social.jpg # be sure to change this image
31
+ facebook: fbusername
32
+ twitter: twusername
33
+ github: ghusername
34
+ googleplus: gusername
35
+ instagram: igusername
36
+
37
+ # Contact
38
+ phone: "916-276-1044" # This is my real number. You should text me.
39
+ email: "hello@garrettboatman.com" # This is my real email address. Please don't email me.
40
+
41
+ # Use this for production
42
+ #sass:
43
+ # style: compressed
44
+
45
+ exclude: [.scss, README.md, node_modules, gruntfile.js, package.json]
@@ -0,0 +1,22 @@
1
+ <div class="about-header">
2
+ <h3>{{ include.about_title | default: "📖 ABOUT THIS BOOK" }}</h3>
3
+ </div>
4
+ <div class="about-content">
5
+ {% if include.about_text %}
6
+ <p>{{ include.about_text }}</p>
7
+ {% else %}
8
+ <p>This book profile includes detailed information about the themes, characters, and narrative structure.</p>
9
+ {% endif %}
10
+
11
+ {% if include.content_warning %}
12
+ <p class="disclaimer">
13
+ <span class="symbol-hangul">ᅳ</span> <strong>Content Warning:</strong> {{ include.content_warning }}
14
+ </p>
15
+ {% endif %}
16
+
17
+ {% if include.work_in_progress %}
18
+ <p class="wip-note">
19
+ This profile is currently a work in progress. Some details may be incomplete, missing, or subject to change.
20
+ </p>
21
+ {% endif %}
22
+ </div>
@@ -0,0 +1,35 @@
1
+ <div class="meta-section">
2
+ <div class="meta-item meta-item-1">
3
+ <h3>I. Title</h3>
4
+ <p><span class="symbol">𝄖</span> {{ include.title }}</p>
5
+ {% if include.subtitle %}
6
+ <p><span class="symbol">𝄖</span> {{ include.subtitle }}</p>
7
+ {% endif %}
8
+ </div>
9
+
10
+ <div class="meta-item meta-item-2">
11
+ <h3>II. Author</h3>
12
+ <p><span class="symbol">𝄖</span> {{ include.author }}</p>
13
+ {% if include.translator %}
14
+ <p><span class="symbol">𝄖</span> Translated by {{ include.translator }}</p>
15
+ {% endif %}
16
+ </div>
17
+
18
+ <div class="meta-item meta-item-3">
19
+ <h3>III. Published</h3>
20
+ <p><span class="symbol">𝄖</span> {{ include.published }}</p>
21
+ <p><span class="symbol">𝄖</span> {{ include.publisher | default: "Unknown Publisher" }}</p>
22
+ </div>
23
+
24
+ <div class="meta-item meta-item-4">
25
+ <h3>IV. Genre</h3>
26
+ <p><span class="symbol">𝄖</span> {{ include.genre }}</p>
27
+ <p><span class="symbol">𝄖</span> {{ include.series | default: "Standalone" }}</p>
28
+ </div>
29
+
30
+ <div class="meta-item meta-item-5">
31
+ <h3>V. Status</h3>
32
+ <p><span class="symbol">𝄖</span> {{ include.status | default: "Completed" }}</p>
33
+ <p><span class="symbol">𝄖</span> {{ include.pages }} pages</p>
34
+ </div>
35
+ </div>
@@ -0,0 +1,4 @@
1
+ <div class="footer-credit">
2
+ <p>Original Design by <a href="https://toyhou.se/Starcorex" target="_blank">Starcorex</a></p>
3
+ <p>Adapted for Jekyll by DAR</p>
4
+ </div>
@@ -0,0 +1,2 @@
1
+ <!-- Loading in some scripts here -->
2
+ <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
@@ -0,0 +1,36 @@
1
+ <head>
2
+ <meta charset="utf-8">
3
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
4
+ <meta name="viewport" content="width=device-width, initial-scale=1">
5
+
6
+ <!-- Plain Description -->
7
+ <title>{{ site.title }}</title>
8
+ <meta name="description" content="{% if page.excerpt %}{{page.excerpt}}{% else %}{{site.tagline}}{% endif %}">
9
+ <link rel="icon" type="image/png" href="/favicon.png">
10
+
11
+ <!-- Google+ -->
12
+ <link rel="publisher" href="https://plus.google.com/{{site.googleplus}}"/>
13
+ <meta itemprop="name" content="{% if page.fulltitle %}{{page.fulltitle}}{% else %}{{page.title}} | {{ site.title }} {% endif %}">
14
+ <meta itemprop="description" content="{% if page.excerpt %}{{page.excerpt}}{% else %}{{site.tagline}}{% endif %}">
15
+ <meta itemprop="image" content="{% if page.image %}{{site.url}}{{page.image}}{% else %}{{site.url}}{{site.socialimg}}{% endif %}">
16
+
17
+ <!-- Facebook -->
18
+ <meta property="og:type" content="website"/>
19
+ <meta property="og:title" content="{% if page.fulltitle %}{{page.fulltitle}}{% else %}{{page.title}} | {{ site.title }} {% endif %}"/>
20
+ <meta property="og:description" content="{% if page.excerpt %}{{page.excerpt}}{% else %}{{site.tagline}}{% endif %}"/>
21
+ <meta property="og:image" content="{% if page.image %}{{site.url}}{{page.image}}{% else %}{{site.url}}{{site.socialimg}}{% endif %}"/>
22
+ <meta property="og:url" content="{{site.url}}{{page.url}}"/>
23
+ <meta property="og:site_name" content="{{ site.title }} "/>
24
+
25
+ <!-- Twitter -->
26
+ <meta name="twitter:card" content="summary">
27
+ <meta name="twitter:title" content="{% if page.fulltitle %}{{page.fulltitle}}{% else %}{{page.title}} | {{ site.title }} {% endif %}">
28
+ <meta name="twitter:description" content="{% if page.excerpt %}{{page.excerpt}}{% else %}{{site.tagline}}{% endif %}">
29
+ <meta name="twitter:image" content="{{site.url}}{{site.socialimg}}">
30
+ <meta name="twitter:url" content="{{site.url}}{{page.url}}">
31
+
32
+ <!-- CSS & fonts -->
33
+ <link rel="stylesheet" href="css/app.css">
34
+ <!-- Put your fonts here -->
35
+
36
+ </head>
@@ -0,0 +1,13 @@
1
+ <div class="warning-box">
2
+ <h3>BEFORE YOU READ</h3>
3
+ <p>This profile may include sensitive themes and serious topics that could be distressing to some readers</p>
4
+ <p class="disclaimer">
5
+ <span class="hangul-symbol">ᅳ</span> Viewer discretion is advised
6
+ </p>
7
+ <p class="wip-note">
8
+ This profile is currently a work in progress. Some details may be incomplete, missing, or subject to change as it continues to be developed
9
+ </p>
10
+ {% if include.warning %}
11
+ <p class="content-warning">Content Warning: {{ include.warning }}</p>
12
+ {% endif %}
13
+ </div>