├── .gitignore
├── netlify.toml
├── src
├── favicon.png
├── data
│ ├── Hero.yml
│ ├── Contact.yml
│ ├── SocialMedia.yml
│ ├── Portfolio.yml
│ └── About.yml
├── assets
│ ├── images
│ │ └── gridsome.png
│ └── css
│ │ └── style.sass
├── layouts
│ └── Default.vue
├── main.js
├── pages
│ └── Index.vue
├── components
│ ├── Footer.vue
│ ├── About.vue
│ ├── Header.vue
│ ├── Hero.vue
│ ├── Blog.vue
│ ├── Portfolio.vue
│ └── Contact.vue
└── templates
│ └── BlogPost.vue
├── blog
├── 2018-11-10-poor-sick-man.md
├── 2016-09-14-god-zilla.md
├── 2018-11-10-wrath-of-the-dragon-god.md
└── 2017-08-14-justice-league.md
├── static
├── images
│ ├── galina-n-200668-unsplash.jpg
│ ├── malte-wingen-381988-unsplash.jpg
│ ├── mitchell-griest-687949-unsplash.jpg
│ ├── ruslan-bardash-351288-unsplash.jpg
│ ├── Behance.svg
│ ├── Twitter.svg
│ ├── Instagram.svg
│ ├── RSS.svg
│ └── GitHub.svg
└── admin
│ ├── index.html
│ └── config.yml
├── package.json
├── gridsome.config.js
└── README.md
/.gitignore:
--------------------------------------------------------------------------------
1 | *.log
2 | .cache
3 | src/.temp
4 | node_modules
5 | dist
6 |
--------------------------------------------------------------------------------
/netlify.toml:
--------------------------------------------------------------------------------
1 | [build]
2 | publish = "dist"
3 | command = "gridsome build"
--------------------------------------------------------------------------------
/src/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mittalyashu/gridsome-starter-netlifycms/HEAD/src/favicon.png
--------------------------------------------------------------------------------
/src/data/Hero.yml:
--------------------------------------------------------------------------------
1 | title: Gridsome Starter NetlifyCMS
2 | description: I think you will love this starter kit.
3 |
--------------------------------------------------------------------------------
/src/data/Contact.yml:
--------------------------------------------------------------------------------
1 | title: Contact
2 | description: You can catch me on social media or drop a message by filling the form.
3 |
--------------------------------------------------------------------------------
/src/assets/images/gridsome.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mittalyashu/gridsome-starter-netlifycms/HEAD/src/assets/images/gridsome.png
--------------------------------------------------------------------------------
/src/layouts/Default.vue:
--------------------------------------------------------------------------------
1 |
2 |
7 |
--------------------------------------------------------------------------------
/blog/2018-11-10-poor-sick-man.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Poor Sick man
3 | date: 2018-11-10 20:08:08 -0700
4 | slug: poor-sick-man
5 | ---
6 |
7 | Just simple second.
--------------------------------------------------------------------------------
/static/images/galina-n-200668-unsplash.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mittalyashu/gridsome-starter-netlifycms/HEAD/static/images/galina-n-200668-unsplash.jpg
--------------------------------------------------------------------------------
/static/images/malte-wingen-381988-unsplash.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mittalyashu/gridsome-starter-netlifycms/HEAD/static/images/malte-wingen-381988-unsplash.jpg
--------------------------------------------------------------------------------
/static/images/mitchell-griest-687949-unsplash.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mittalyashu/gridsome-starter-netlifycms/HEAD/static/images/mitchell-griest-687949-unsplash.jpg
--------------------------------------------------------------------------------
/static/images/ruslan-bardash-351288-unsplash.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mittalyashu/gridsome-starter-netlifycms/HEAD/static/images/ruslan-bardash-351288-unsplash.jpg
--------------------------------------------------------------------------------
/blog/2016-09-14-god-zilla.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: God zilla
3 | date: 2016-09-14T15:34:11.331Z
4 | slug: god-zilla
5 | ---
6 | The god zilla is a word and that's all I know.
7 |
--------------------------------------------------------------------------------
/src/main.js:
--------------------------------------------------------------------------------
1 | import DefaultLayout from '~/layouts/Default.vue'
2 | require('~/assets/css/style.sass')
3 |
4 | export default function (Vue) {
5 | Vue.component('Layout', DefaultLayout)
6 | }
--------------------------------------------------------------------------------
/src/data/SocialMedia.yml:
--------------------------------------------------------------------------------
1 | title: Social Media Icons
2 | items:
3 | - name: Twitter
4 | url: 'https://example.com'
5 | - name: RSS
6 | url: 'https://example.com'
7 | - name: Behance
8 | url: 'https://example.com'
9 | - name: GitHub
10 | url: 'https://example.com'
11 |
--------------------------------------------------------------------------------
/src/data/Portfolio.yml:
--------------------------------------------------------------------------------
1 | title: Portfolio
2 | items:
3 | - image: /static/images/ruslan-bardash-351288-unsplash.jpg
4 | title: Stool
5 | - image: /static/images/galina-n-200668-unsplash.jpg
6 | title: Plants
7 | - image: /static/images/mitchell-griest-687949-unsplash.jpg
8 | title: Bags
9 | - image: /static/images/malte-wingen-381988-unsplash.jpg
10 | title: Headphone
11 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "gridsome-starter-netlifycms",
3 | "scripts": {
4 | "build": "gridsome build",
5 | "develop": "gridsome develop",
6 | "explore": "gridsome explore"
7 | },
8 | "dependencies": {
9 | "@gridsome/source-filesystem": "^0.6.0",
10 | "@gridsome/transformer-remark": "^0.3.3",
11 | "gridsome": "^0.7.1",
12 | "node-sass": "^4.11.0",
13 | "sass-loader": "^8.0.0"
14 | },
15 | "license": "MIT"
16 | }
17 |
--------------------------------------------------------------------------------
/gridsome.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | siteName: 'Gridsome Starter NetlifyCMS',
3 | siteUrl: 'https://www.gridsome.org',
4 | siteDescription: 'Gridsome is a blazing-fast static site generator...',
5 | titleTemplate: `%s - Gridsome`,
6 |
7 | plugins: [
8 | {
9 | use: '@gridsome/source-filesystem',
10 | options: {
11 | path: 'blog/*.md',
12 | typeName: 'BlogPost',
13 | route: '/blog/:slug'
14 | }
15 | }
16 | ]
17 | }
18 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Gridsome Starter NetlifyCMS
2 |
3 | Now modify your website directly from NetlifyCMS, no need to mess around with coding. 😅
4 |
5 | [](https://app.netlify.com/start/deploy?repository=https://github.com/mittalyashu/gridsome-starter-netlifycms)
6 |
7 | ## Donate
8 |
9 | I've put a lot of time and effort into making **Gridsome Starter NetlifyCMS** project. If you love it, you can Become a Patron. I promise it will be a good investment 😉.
10 |
11 | [](https://www.patreon.com/bePatron?u=8494594)
12 |
--------------------------------------------------------------------------------
/blog/2018-11-10-wrath-of-the-dragon-god.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Wrath of the dragon god
3 | date: 2018-11-10 20:08:08 -0700
4 | slug: wrath-of-the-dragon-god
5 | ---
6 |
7 | Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa.liquet nec, vulputate eget, arcu. In enim justo, rhoncus ut, imperdiet a, venenatis vitae, justo.
8 |
9 | Nullam dictum felis eu pede mollis pretium. Integer tincidunt. Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate eleifend tellus.
10 |
11 | Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim. Aliquam lorem ante, dapibus in, viverra quis, feugiat a, tellus. Phasellus viverra nulla ut metus varius laoreet.
--------------------------------------------------------------------------------
/src/assets/css/style.sass:
--------------------------------------------------------------------------------
1 | @import url('https://fonts.googleapis.com/css?family=Nunito:400,700')
2 |
3 | *
4 | padding: 0
5 | margin: 0
6 | box-sizing: border-box
7 |
8 | body
9 | font-family: 'Nunito', sans-serif
10 | line-height: 1.5
11 | font-size: 16px
12 |
13 | a
14 | text-decoration: none
15 | color: #4DBA87
16 | cursor: pointer
17 |
18 | ul
19 | list-style: none
20 |
21 | h6
22 | font-size: 1rem
23 |
24 | .container
25 | padding-right: 15px
26 | padding-left: 15px
27 | margin-right: auto
28 | margin-left: auto
29 |
30 | @media (min-width:768px)
31 | .container
32 | width: 750px
33 |
34 | @media (min-width:992px)
35 | .container
36 | width: 970px
37 |
38 | @media (min-width:1200px)
39 | .container
40 | width: 1170px
--------------------------------------------------------------------------------
/src/pages/Index.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/src/components/Footer.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | Copyright © 2018 Gridsome
4 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/blog/2017-08-14-justice-league.md:
--------------------------------------------------------------------------------
1 | ---
2 | title: Justice League
3 | date: 2017-08-14 20:08:08 -0700
4 | slug: justice-league
5 | ---
6 |
7 | Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa.
8 |
9 | Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem.
10 |
11 | Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut, imperdiet a, venenatis vitae, justo.
12 |
13 | Nullam dictum felis eu pede mollis pretium. Integer tincidunt. Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate eleifend tellus.
14 |
15 | Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim. Aliquam lorem ante, dapibus in, viverra quis, feugiat a, tellus. Phasellus viverra nulla ut metus varius laoreet.
--------------------------------------------------------------------------------
/src/components/About.vue:
--------------------------------------------------------------------------------
1 |
2 |
10 |
11 |
12 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/src/components/Header.vue:
--------------------------------------------------------------------------------
1 |
2 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/static/admin/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | GitHub Authentication Example
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
27 |
28 |
29 |
30 | GitHub Auth Demo:
31 | Authenticate
32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/src/data/About.yml:
--------------------------------------------------------------------------------
1 | title: About
2 | items:
3 | - description: >-
4 | Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod
5 | tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim
6 | veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea
7 | commodo consequat.
8 | title: JavaScript
9 | - description: >-
10 | Duis aute irure dolor in reprehenderit in voluptate velit esse cillum
11 | dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
12 | proident, sunt in culpa qui officia deserunt mollit anim id est laborum
13 | title: Ruby on Rails
14 | - description: >-
15 | Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium
16 | doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo
17 | inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo.
18 | title: Branding
19 | - description: >-
20 | Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam
21 | nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas
22 | nulla pariatur?
23 | title: UI/UX
24 |
--------------------------------------------------------------------------------
/src/components/Hero.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
{{ Hero.title }}
4 |
{{ Hero.description }}
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
31 |
32 |
--------------------------------------------------------------------------------
/static/images/Behance.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/components/Blog.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 | query Blog {
14 | allBlogPost(sortBy: "DESC") {
15 | edges {
16 | node {
17 | id
18 | title
19 | date (format: "YYYY")
20 | path
21 | }
22 | }
23 | }
24 | }
25 |
26 |
27 |
57 |
--------------------------------------------------------------------------------
/static/images/Twitter.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/static/images/Instagram.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/static/images/RSS.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/components/Portfolio.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | {{ item.title }}
5 |
6 |
7 |
8 |
9 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/src/templates/BlogPost.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
{{ $page.blogPost.title }}
7 | {{ $page.blogPost.date }}
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
31 |
32 |
33 | query BlogPost ($path: String!) {
34 | blogPost (path: $path) {
35 | title
36 | date (format: "DD MMMM YYYY")
37 | content
38 | }
39 | }
40 |
41 |
42 |
--------------------------------------------------------------------------------
/static/images/GitHub.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/static/admin/config.yml:
--------------------------------------------------------------------------------
1 | backend:
2 | # Choose the backend you prefer (GitHub, GitLab, BitBucket)
3 | # Reference: https://www.netlifycms.org/docs/authentication-backends/
4 | name: github
5 | branch: master
6 | repo: mittalyashu/gridsome-starter-netlifycms
7 |
8 | media_folder: "static/images"
9 | public_folder: "static/images"
10 |
11 | collections:
12 | - name: "blogs"
13 | label: "Blogs"
14 | folder: "blog"
15 | create: true
16 | slug: "{{year}}-{{month}}-{{day}}-{{slug}}"
17 | fields:
18 | - { label: "title", name: "title", widget: "string" }
19 | - { label: "date", name: "date", widget: "date" }
20 | - { label: "slug", name: "slug", widget: "string" }
21 | - { label: "body", name: "body", widget: "markdown" }
22 |
23 | - name: "data"
24 | label: "Data"
25 | files:
26 | - name: "about"
27 | label: "About"
28 | file: "src/data/About.yml"
29 | fields:
30 | - { label: "Title", name: "title", widget: "string", default: "About" }
31 | - name: "items"
32 | label: "Items"
33 | widget: "list"
34 | fields:
35 | - { label: "Title", name: "title", widget: "string" }
36 | - { label: "Description", name: "description", widget: "text" }
37 |
38 | - name: "contact"
39 | label: "Contact"
40 | file: "src/data/Contact.yml"
41 | fields:
42 | - { label: "Title", name: "title", widget: "string", default: "Contact" }
43 | - { label: "Description", name: "description", widget: "text" }
44 |
45 | - name: "hero"
46 | label: "Hero"
47 | file: "src/data/Hero.yml"
48 | fields:
49 | - { label: "Title", name: "title", widget: "string" }
50 | - { label: "Description", name: "description", widget: "text" }
51 |
52 | - name: "portfolio"
53 | label: "Portfolio"
54 | file: "src/data/Portfolio.yml"
55 | fields:
56 | - { label: "Title", name: "title", widget: "string", default: "Portfolio" }
57 | - name: "items"
58 | label: "Work"
59 | widget: "list"
60 | fields:
61 | - { label: "Title", name: "title", widget: "string" }
62 | - { label: "Image", name: "image", widget: "image" }
63 |
64 | - name: "socialmedia"
65 | label: "Social Media"
66 | file: "src/data/SocialMedia.yml"
67 | fields:
68 | - { label: "Title", name: "title", widget: "string", default: "Social Media" }
69 | - name: "items"
70 | label: "Social Media"
71 | widget: "list"
72 | fields:
73 | - { label: "Name", name: "name", widget: "string" }
74 | - { label: "URL", name: "url", widget: "string" }
--------------------------------------------------------------------------------
/src/components/Contact.vue:
--------------------------------------------------------------------------------
1 |
2 |
32 |
33 |
34 |
49 |
50 |
133 |
134 |
--------------------------------------------------------------------------------