bulmatown 1.0.1 → 1.0.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (47) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +6 -3
  3. data/README.md +95 -31
  4. data/bridgetown.automation.rb +81 -13
  5. data/bulmatown.gemspec +1 -1
  6. data/components/bulmatown/hero.scss +10 -0
  7. data/components/bulmatown/navbar.scss +4 -0
  8. data/lib/bulmatown.rb +1 -1
  9. data/lib/bulmatown/version.rb +1 -1
  10. data/package.json +1 -1
  11. metadata +3 -39
  12. data/content/bulmatown/example_page.md +0 -8
  13. data/content/bulmatown/train-on-rails.jpeg +0 -0
  14. data/example/.gitignore +0 -35
  15. data/example/Gemfile +0 -22
  16. data/example/bridgetown.config.yml +0 -26
  17. data/example/frontend/fonts/forkawesome-webfont.eot +0 -0
  18. data/example/frontend/fonts/forkawesome-webfont.svg +0 -2849
  19. data/example/frontend/fonts/forkawesome-webfont.ttf +0 -0
  20. data/example/frontend/fonts/forkawesome-webfont.woff +0 -0
  21. data/example/frontend/fonts/forkawesome-webfont.woff2 +0 -0
  22. data/example/frontend/javascript/index.js +0 -4
  23. data/example/frontend/styles/index.scss +0 -5
  24. data/example/package.json +0 -37
  25. data/example/plugins/builders/.keep +0 -0
  26. data/example/plugins/site_builder.rb +0 -4
  27. data/example/src/404.html +0 -9
  28. data/example/src/_components/footer.liquid +0 -53
  29. data/example/src/_components/head.liquid +0 -9
  30. data/example/src/_components/navbar.liquid +0 -51
  31. data/example/src/_data/authors.yml +0 -5
  32. data/example/src/_data/site_metadata.yml +0 -18
  33. data/example/src/_layouts/default.html +0 -15
  34. data/example/src/_layouts/home.html +0 -5
  35. data/example/src/_layouts/page.html +0 -5
  36. data/example/src/_layouts/post.html +0 -5
  37. data/example/src/_posts/2020-06-13-this-is-groovy.md +0 -29
  38. data/example/src/_posts/2020-06-13-welcome-to-bridgetown.md +0 -30
  39. data/example/src/about.md +0 -11
  40. data/example/src/favicon.ico +0 -0
  41. data/example/src/images/jared-white-avatar.jpg +0 -0
  42. data/example/src/index.md +0 -21
  43. data/example/src/posts.md +0 -11
  44. data/example/start.js +0 -17
  45. data/example/sync.js +0 -35
  46. data/example/webpack.config.js +0 -78
  47. data/example/yarn.lock +0 -6129
@@ -1,4 +0,0 @@
1
- import "../styles/index.scss"
2
- import Bulmatown from "bulmatown"
3
-
4
- console.info("Bridgetown is loaded!")
@@ -1,5 +0,0 @@
1
- //$text: #444;
2
-
3
- //$theme_variation: rust;
4
-
5
- @import "~bulmatown/frontend/styles"
@@ -1,37 +0,0 @@
1
- {
2
- "name": "new-bridgetown-site",
3
- "version": "1.0.0",
4
- "private": true,
5
- "scripts": {
6
- "build": "bundle exec bridgetown build",
7
- "serve": "bundle exec bridgetown serve",
8
- "webpack-build": "webpack --mode production",
9
- "webpack-dev": "webpack --mode development -w",
10
- "deploy": "yarn webpack-build && yarn build",
11
- "sync": "node sync.js",
12
- "start": "node start.js"
13
- },
14
- "dependencies": {
15
- "bridgetown-quick-search": "^1.0.3",
16
- "bulmatown": "^1.0.0"
17
- },
18
- "devDependencies": {
19
- "@babel/core": "^7.9.0",
20
- "@babel/plugin-proposal-class-properties": "^7.8.3",
21
- "@babel/plugin-proposal-decorators": "^7.10.1",
22
- "@babel/plugin-transform-runtime": "^7.9.0",
23
- "@babel/preset-env": "^7.9.0",
24
- "babel-loader": "^8.1.0",
25
- "browser-sync": "^2.26.7",
26
- "concurrently": "^5.2.0",
27
- "css-loader": "^3.4.2",
28
- "file-loader": "^6.0.0",
29
- "mini-css-extract-plugin": "^0.9.0",
30
- "node-sass": "^4.13.1",
31
- "sass-loader": "^8.0.2",
32
- "style-loader": "^1.1.3",
33
- "webpack": "^4.42.1",
34
- "webpack-cli": "^3.3.11",
35
- "webpack-manifest-plugin": "^2.2.0"
36
- }
37
- }
File without changes
@@ -1,4 +0,0 @@
1
- class SiteBuilder < Bridgetown::Builder
2
- # write builders which subclass SiteBuilder in plugins/builder
3
- end
4
-
@@ -1,9 +0,0 @@
1
- ---
2
- permalink: /404.html
3
- layout: default
4
- ---
5
-
6
- <h1>404</h1>
7
-
8
- <p><strong>Page not found :(</strong></p>
9
- <p>The requested page could not be found.</p>
@@ -1,53 +0,0 @@
1
- <footer class="footer">
2
- <div class="container">
3
- <div class="columns">
4
- <div class="column is-5">
5
- <div class="logo">
6
- {{ metadata.title}}
7
- </div>
8
-
9
- <h4>
10
- {{ metadata.tagline }}
11
- </h4>
12
-
13
- <div class="mt-3">
14
- Follow on Twitter: <strong><a href="https://twitter.com/{{ metadata.twitter }}">@{{ metadata.twitter }}</strong></a>
15
- </div>
16
-
17
- <div class="mt-6 is-size-7">
18
- Website content licensed <a rel="license" href="https://creativecommons.org/licenses/by-nc-sa/4.0/" target="_blank">CC BY-NC-SA 4.0</a>
19
- </div>
20
-
21
- </div>
22
- <div class="column is-4">
23
- <h4>
24
- Other <strong>Resources</strong>
25
- </h4>
26
-
27
- <div class="mt-5">
28
- <a href="https://wikipedia.org">Wikipedia</a><br/>
29
- <a href="https://archive.org/web/">Wayback Machine</a>
30
- </div>
31
- </div>
32
- <div class="column is-3">
33
- <h4>
34
- <strong>Share</strong> on Social Media
35
- </h4>
36
-
37
- <div class="mt-5">
38
- <a href="https://twitter.com/intent/tweet?url={{ url | uri_escape }}&via={{ metadata.twitter }}&text=Check%20out%20this%20awesome%20new%20site%20built%20with%20Bridgetown%20and%20Ruby%21&hashtags=SpinUpBridgetown%2CJamstack" class="button is-info">
39
- <span class="icon"> <i class="fa fa-twitter is-size-5"></i> </span>
40
- <span class="has-text-weight-bold">Tweet</span>
41
- </a>
42
- </div>
43
-
44
- <div class="mt-6">
45
- <a href="/feed.xml" class="button is-danger is-small">
46
- <span class="icon"> <i class="fa fa-rss"></i> </span>
47
- <span class="has-text-weight-bold">News Feed</span>
48
- </a>
49
- </div>
50
- </div>
51
- </div>
52
- </div>
53
- </footer>
@@ -1,9 +0,0 @@
1
- <meta charset="utf-8" />
2
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
3
- {% capture page_title %}{{ title | strip_html | strip_newlines }}{% endcapture %}
4
- <title>{% if page_title != "" %}{{ page_title | escape }} | {{ metadata.title | escape }}{% else %}{{ metadata.title | escape }}: {{ metadata.tagline | escape }}{% endif %}</title>
5
-
6
- <meta name="description" content="{{ metadata.description }}" />
7
-
8
- <link rel="stylesheet" href="{% webpack_path css %}" />
9
- <script src="{% webpack_path js %}" defer></script>
@@ -1,51 +0,0 @@
1
- {% rendercontent "bulmatown/navbar", class: "is-dark" %}
2
- {% with logo %}
3
- <a class="navbar-item" href="/">
4
- {{ metadata.title }}
5
- </a>
6
- {% endwith %}
7
- {% with items_start %}
8
- <a class="navbar-item" href="/">Home</a>
9
- <a class="navbar-item" href="/posts">Articles</a>
10
- <a class="navbar-item" href="/about">About</a>
11
- <div class="navbar-item has-dropdown is-hoverable">
12
- <a class="navbar-link" href="/topics">
13
- Topics
14
- </a>
15
- <div class="navbar-dropdown is-boxed">
16
- <a class="navbar-item" href="https://bulma.io/documentation/overview/start/">
17
- Overview
18
- </a>
19
- <a class="navbar-item" href="https://bulma.io/documentation/overview/modifiers/">
20
- Modifiers
21
- </a>
22
- <a class="navbar-item" href="https://bulma.io/documentation/columns/basics/">
23
- Columns
24
- </a>
25
- <a class="navbar-item" href="https://bulma.io/documentation/layout/container/">
26
- Layout
27
- </a>
28
- <a class="navbar-item" href="https://bulma.io/documentation/form/general/">
29
- Form
30
- </a>
31
- <hr class="navbar-divider">
32
- <a class="navbar-item" href="https://bulma.io/documentation/elements/box/">
33
- Elements
34
- </a>
35
- <a class="navbar-item" href="https://bulma.io/documentation/components/breadcrumb/">
36
- Components
37
- </a>
38
- </div>
39
- </div>
40
- {% endwith %}
41
-
42
- {% with items_end %}
43
- <div class="navbar-item search-item">
44
- {% render "bridgetown_quick_search/search", placeholder: "Search", input_class: "input" %}
45
- </div>
46
- <a class="navbar-item is-hidden-desktop-only" href="https://twitter.com/{{ metadata.twitter }}" target="_blank">
47
- <span class="icon"><i class="fa fa-twitter is-size-6"></i></span>
48
- <span class="is-hidden-tablet">Twitter</span>
49
- </a>
50
- {% endwith %}
51
- {% endrendercontent %}
@@ -1,5 +0,0 @@
1
- jared:
2
- name: Jared White
3
- avatar: /images/jared-white-avatar.jpg
4
- twitter: jaredcwhite
5
- website: https://jaredwhite.com
@@ -1,18 +0,0 @@
1
- # Site settings
2
- # These are used to personalize your new site. If you look in the HTML files,
3
- # you will see them accessed via {{ site.metadata.title }}, {{ site.metadata.email }}, and so on.
4
- # You can create any custom variable you would like, and they will be accessible
5
- # in the templates via {{ site.metadata.myvariable }}.
6
-
7
- title: Your awesome title
8
- tagline: This site is totally awesome
9
- email: your-email@example.com
10
- description: >- # this means to ignore newlines until "baseurl:"
11
- Write an awesome description for your new site here. It will appear in your document head meta (for Google search results) and in your feed.xml site description.
12
-
13
- twitter: jaredcwhite
14
-
15
- bulmatown_theme:
16
- image_sizes:
17
- embed: image
18
- hero: image_hero
@@ -1,15 +0,0 @@
1
- <!doctype html>
2
- <html lang="en">
3
- <head>
4
- {% render "head", metadata: site.metadata, title: page.title %}
5
- </head>
6
- <body class="{{ page.layout }} {{ page.page_class }}">
7
- {% render "navbar", metadata: site.metadata %}
8
-
9
- <main>
10
- {{ content }}
11
- </main>
12
-
13
- {% render "footer", url: site.url, metadata: site.metadata %}
14
- </body>
15
- </html>
@@ -1,5 +0,0 @@
1
- ---
2
- layout: bulmatown/homepage
3
- ---
4
-
5
- {{ content }}
@@ -1,5 +0,0 @@
1
- ---
2
- layout: bulmatown/page
3
- ---
4
-
5
- {{ content }}
@@ -1,5 +0,0 @@
1
- ---
2
- layout: bulmatown/post
3
- ---
4
-
5
- {{ content }}
@@ -1,29 +0,0 @@
1
- ---
2
- layout: post
3
- title: This is Groovy
4
- subtitle: Take a look at the source for this post to get an idea about how it works.
5
- image: https://res.cloudinary.com/mariposta/image/upload/w_1800,c_limit,q_65/EEF14FD7-4409-419C-B4CF-DE4934C67F1A_eexxp7.jpg
6
- image_hero: https://res.cloudinary.com/mariposta/image/upload/w_2048,c_limit,q_65/EEF14FD7-4409-419C-B4CF-DE4934C67F1A_eexxp7.jpg
7
- rainbow_hero: true
8
- author: jared
9
- ---
10
-
11
- You’ll find this post in your `_posts` directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run `bridgetown serve`, which launches a web server and auto-regenerates your site when a file is updated.
12
-
13
- Bridgetown requires blog post files to be named according to the following format:
14
-
15
- `YEAR-MONTH-DAY-title.EXT`
16
-
17
- Where `YEAR` is a four-digit number, `MONTH` and `DAY` are both two-digit numbers, and `EXT` is the file extension representing the format used in the file (for example, `md` for Markdown). After that, include the necessary front matter. Take a look at the source for this post to get an idea about how it works.
18
-
19
- Bridgetown also offers powerful support for code snippets:
20
-
21
- ```ruby
22
- def print_hi(name)
23
- puts "Hi, #{name}"
24
- end
25
- print_hi('Tom')
26
- #=> prints 'Hi, Tom' to STDOUT.
27
- ````
28
-
29
- Check out the [Bridgetown docs](https://bridgetownrb.com/docs/) for more info on how to get the most out of Bridgetown. File all bugs/feature requests at [Bridgetown’s GitHub repo](https://github.com/bridgetownrb/bridgetown). If you have questions, you can ask them on [Bridgetown Community Forum](https://community.bridgetownrb.com).
@@ -1,30 +0,0 @@
1
- ---
2
- layout: post
3
- title: "Your First Post on Bridgetown"
4
- subtitle: You’ll find this post in your _posts directory. Go ahead and edit it and re-build the site to see your changes!
5
- date: 2020-06-13 08:39:40 -0700
6
- categories: updates
7
- image: https://res.cloudinary.com/mariposta/image/upload/w_1800,c_limit,q_65/IMG_5232_srqhvl.jpg
8
- image_hero: https://res.cloudinary.com/mariposta/image/upload/w_2048,c_limit,q_65/IMG_5232_srqhvl.jpg
9
- author: jared
10
- ---
11
-
12
- You’ll find this post in your `_posts` directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run `bridgetown serve`, which launches a web server and auto-regenerates your site when a file is updated.
13
-
14
- Bridgetown requires blog post files to be named according to the following format:
15
-
16
- `YEAR-MONTH-DAY-title.EXT`
17
-
18
- Where `YEAR` is a four-digit number, `MONTH` and `DAY` are both two-digit numbers, and `EXT` is the file extension representing the format used in the file (for example, `md` for Markdown). After that, include the necessary front matter. Take a look at the source for this post to get an idea about how it works.
19
-
20
- Bridgetown also offers powerful support for code snippets:
21
-
22
- ```ruby
23
- def print_hi(name)
24
- puts "Hi, #{name}"
25
- end
26
- print_hi('Tom')
27
- #=> prints 'Hi, Tom' to STDOUT.
28
- ````
29
-
30
- Check out the [Bridgetown docs](https://bridgetownrb.com/docs/) for more info on how to get the most out of Bridgetown. File all bugs/feature requests at [Bridgetown’s GitHub repo](https://github.com/bridgetownrb/bridgetown). If you have questions, you can ask them on [Bridgetown Community Forum](https://community.bridgetownrb.com).
@@ -1,11 +0,0 @@
1
- ---
2
- layout: page
3
- title: About
4
- subtitle: This is an About page.
5
- ---
6
-
7
- This is the basic Bridgetown site template. You can find out more info about customizing your Bridgetown site, as well as basic Bridgetown usage documentation at [bridgetownrb.com](https://bridgetownrb.com/)
8
-
9
- You can find the source code for Bridgetown at GitHub:
10
- [bridgetownrb](https://github.com/bridgetownrb) /
11
- [bridgetown](https://github.com/bridgetownrb/bridgetown)
File without changes
@@ -1,21 +0,0 @@
1
- ---
2
- layout: home
3
- ---
4
-
5
- Welcome to my site!
6
-
7
- I write about topics that I care about and believe are important. I try to bring my authentic voice every time I set out to type, and I strive to share a viewpoint that gets you thinking and inspired to dig deeper.
8
-
9
- ----
10
- {: .my-6}
11
-
12
- # Latest Articles
13
- {: .mb-5 .title .has-text-centered}
14
-
15
- {% assign posts = site.posts | slice: 0, 6 %}
16
- {% render "bulmatown/collection", collection: posts, metadata: site.metadata %}
17
-
18
- {% if site.posts.size > 6 %}
19
- <a href="/posts/" class="button is-primary is-outlined is-small"><span>Previous Articles</span> <span class="icon"><i class="fa fa-arrow-right"></i></span></a>
20
- {: .mt-6 .has-text-centered}
21
- {% endif %}
@@ -1,11 +0,0 @@
1
- ---
2
- layout: page
3
- title: Articles
4
- pagination:
5
- enabled: true
6
- ---
7
-
8
- {% assign posts = paginator.documents %}
9
- {% render "bulmatown/collection", collection: posts, metadata: site.metadata %}
10
-
11
- {% render "bulmatown/pagination", paginator: paginator %}
@@ -1,17 +0,0 @@
1
- const concurrently = require('concurrently');
2
-
3
- // By default, configure Bridgetown to use port 4001 so Browsersync can use 4000
4
- // See also Browsersync settings in sync.js
5
- const port = 4001
6
-
7
- /////////////////
8
- // Concurrently
9
- /////////////////
10
- concurrently([
11
- { command: "yarn webpack-dev", name: "Webpack", prefixColor: "yellow"},
12
- { command: "sleep 4; yarn serve --port " + port, name: "Bridgetown", prefixColor: "green"},
13
- { command: "sleep 8; yarn sync", name: "Live", prefixColor: "blue"}
14
- ], {
15
- restartTries: 3,
16
- killOthers: ['failure', 'success'],
17
- }).then(() => { console.log("Done.");console.log('\033[0G'); }, () => {});
@@ -1,35 +0,0 @@
1
- const browserSync = require("browser-sync").create();
2
-
3
- // You can change these configuration values:
4
- const proxy = "http://localhost:4001"
5
- const port = 4000
6
- const uiPort = 4002
7
-
8
- ////////////////
9
- // Browsersync
10
- ////////////////
11
- browserSync.init({
12
- open: false,
13
- notify: false,
14
- proxy: proxy,
15
- port: port,
16
- files: "output/index.html",
17
- ghostMode: {
18
- clicks: false,
19
- forms: false,
20
- scroll: false,
21
- },
22
- reloadDelay: 0,
23
- injectChanges: false,
24
- ui: {
25
- port: uiPort
26
- },
27
- snippetOptions: {
28
- rule: {
29
- match: /<\/head>/i,
30
- fn: function (snippet, match) {
31
- return snippet + match;
32
- },
33
- },
34
- },
35
- });
@@ -1,78 +0,0 @@
1
- const path = require("path");
2
- const MiniCssExtractPlugin = require("mini-css-extract-plugin");
3
- const ManifestPlugin = require("webpack-manifest-plugin");
4
-
5
- module.exports = {
6
- entry: "./frontend/javascript/index.js",
7
- devtool: "source-map",
8
- // Set some or all of these to true if you want more verbose logging:
9
- stats: {
10
- modules: false,
11
- builtAt: false,
12
- timings: false,
13
- children: false,
14
- },
15
- output: {
16
- path: path.resolve(__dirname, "output", "_bridgetown", "static", "js"),
17
- filename: "all.[contenthash].js",
18
- },
19
- resolve: {
20
- extensions: [".js", ".jsx"],
21
- },
22
- plugins: [
23
- new MiniCssExtractPlugin({
24
- filename: "../css/all.[contenthash].css",
25
- }),
26
- new ManifestPlugin({
27
- fileName: path.resolve(__dirname, ".bridgetown-webpack", "manifest.json"),
28
- }),
29
- ],
30
- module: {
31
- rules: [
32
- {
33
- test: /\.(js|jsx)/,
34
- use: {
35
- loader: "babel-loader",
36
- options: {
37
- presets: ["@babel/preset-env"],
38
- plugins: [
39
- ["@babel/plugin-proposal-decorators", { "legacy": true }],
40
- ["@babel/plugin-proposal-class-properties", { "loose" : true }],
41
- [
42
- "@babel/plugin-transform-runtime",
43
- {
44
- helpers: false,
45
- },
46
- ],
47
- ],
48
- },
49
- },
50
- },
51
- {
52
- test: /\.(s[ac]|c)ss$/,
53
- use: [
54
- MiniCssExtractPlugin.loader,
55
- "css-loader",
56
- {
57
- loader: "sass-loader",
58
- options: {
59
- sassOptions: {
60
- includePaths: [
61
- path.resolve(__dirname, "src/_components")
62
- ],
63
- },
64
- },
65
- },
66
- ],
67
- },
68
- {
69
- test: /\.woff2?$|\.ttf$|\.eot$|\.svg$/,
70
- loader: "file-loader",
71
- options: {
72
- outputPath: "../fonts",
73
- publicPath: "../fonts",
74
- },
75
- },
76
- ],
77
- },
78
- };