├── .gitignore ├── README.md ├── babel.config.js ├── dist ├── css │ └── app.73ea15ca.css ├── favicon.ico ├── index.html └── js │ ├── app.98c22e38.js │ ├── app.98c22e38.js.map │ ├── chunk-vendors.c932d26a.js │ └── chunk-vendors.c932d26a.js.map ├── netlify.toml ├── package.json ├── public ├── favicon.ico └── index.html ├── screenshot.png ├── src ├── App.vue ├── components │ ├── ArticlesList.vue │ └── Nav.vue ├── containers │ ├── Article.vue │ ├── Articles.vue │ └── Category.vue ├── main.js └── vue-apollo.js └── yarn.lock /.gitignore: -------------------------------------------------------------------------------- 1 | ############################ 2 | # OS X 3 | ############################ 4 | 5 | .DS_Store 6 | .AppleDouble 7 | .LSOverride 8 | Icon 9 | .Spotlight-V100 10 | .Trashes 11 | ._* 12 | 13 | 14 | ############################ 15 | # Linux 16 | ############################ 17 | 18 | *~ 19 | 20 | 21 | ############################ 22 | # Windows 23 | ############################ 24 | 25 | Thumbs.db 26 | ehthumbs.db 27 | Desktop.ini 28 | $RECYCLE.BIN/ 29 | *.cab 30 | *.msi 31 | *.msm 32 | *.msp 33 | 34 | 35 | ############################ 36 | # Packages 37 | ############################ 38 | 39 | *.7z 40 | *.csv 41 | *.dat 42 | *.dmg 43 | *.gz 44 | *.iso 45 | *.jar 46 | *.rar 47 | *.tar 48 | *.com 49 | *.class 50 | *.dll 51 | *.exe 52 | *.o 53 | *.seed 54 | *.so 55 | *.swo 56 | *.swp 57 | *.swn 58 | *.swm 59 | *.out 60 | *.pid 61 | 62 | 63 | ############################ 64 | # Logs and databases 65 | ############################ 66 | 67 | .tmp 68 | *.log 69 | *.sql 70 | *.sqlite 71 | *.sqlite3 72 | 73 | 74 | ############################ 75 | # Misc. 76 | ############################ 77 | 78 | *# 79 | ssl 80 | .idea 81 | nbproject 82 | public/uploads/* 83 | !public/uploads/.gitkeep 84 | 85 | ############################ 86 | # Node.js 87 | ############################ 88 | 89 | lib-cov 90 | lcov.info 91 | pids 92 | logs 93 | results 94 | node_modules 95 | .node_history 96 | 97 | 98 | ############################ 99 | # Tests 100 | ############################ 101 | 102 | testApp 103 | coverage 104 | 105 | ############################ 106 | # Strapi 107 | ############################ 108 | 109 | exports 110 | .cache 111 | build 112 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | > **Warning :warning:** 2 | > 3 | > This starter is deprecated. 4 | > 5 | > Instead, we recommend that you use our other Vue blog starters with better SEO support: 6 | > 7 | > * [**strapi-starter-gridsome-blog**](https://github.com/strapi/strapi-starter-gridsome-blog) 8 | > * [**strapi-starter-nuxt-blog**](https://github.com/strapi/strapi-starter-nuxt-blog) 9 | 10 | # Strapi Starter Vue Blog 11 | 12 | Vue starter for creating a blog with Strapi. 13 | 14 |  15 | 16 | This starter allows you to try Strapi with Vue with the example of a simple blog. It is fully customizable and due to the fact that it is open source, fully open to contributions. Do not hesitate to add new features etc ... 17 | 18 | You may want to know how to develop such a starter by your own! This starter is actually the result of this [tutorial](https://strapi.io/blog/build-a-blog-with-vue-strapi-and-apollo) 19 | 20 | ## Features 21 | 22 | - 2 Content types: Article, Category 23 | - 2 Created articles 24 | - 3 Created categories 25 | - Permissions set to `true` for article and category 26 | - Responsive design using UIkit 27 | 28 | Pages: 29 | 30 | - "/" display every articles 31 | - "/article/:id" display one article 32 | - "/category/:id" display articles depending on the category 33 | 34 | ## Getting started 35 | 36 | ### Backend 37 | 38 | See full instructions [here](https://github.com/strapi/strapi-legacy-blog) 39 | 40 | ### Frontend 41 | 42 | Start by installing the starter: 43 | 44 | ```bash 45 | git clone https://github.com/strapi/strapi-starter-vue-blog.git 46 | cd strapi-starter-vue-blog 47 | ``` 48 | 49 | Then start the frontend server: 50 | 51 | ```bash 52 | # Using yarn 53 | yarn install 54 | yarn develop 55 | 56 | # Using npm 57 | npm install 58 | npm run develop 59 | 60 | # Create a .env file containing the VUE_APP_STRAPI_API_URL variable 61 | echo "VUE_APP_STRAPI_API_URL=http://localhost:1337" >> .env 62 | ``` 63 | 64 | Vue server is running here => [http://localhost:8080](http://localhost:8080) 65 | 66 | Enjoy this starter! 67 | -------------------------------------------------------------------------------- /babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: ["@vue/cli-plugin-babel/preset"] 3 | }; 4 | -------------------------------------------------------------------------------- /dist/css/app.73ea15ca.css: -------------------------------------------------------------------------------- 1 | a{text-decoration:none}h1{font-size:120px}#category,h1{font-family:Staatliches}#category{font-weight:500}#title{letter-spacing:.4px;font-size:22px;font-size:1.375rem;line-height:1.13636}#banner{margin:20px;height:800px}#editor{font-size:16px;font-size:1rem;line-height:1.75}.uk-navbar-container{background:#fff!important;font-family:Staatliches}img:hover{opacity:1;-webkit-transition:opacity .25s cubic-bezier(.39,.575,.565,1);transition:opacity .25s cubic-bezier(.39,.575,.565,1)} -------------------------------------------------------------------------------- /dist/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/strapi/strapi-starter-vue-blog/b02b6cad795e67ad9a5bfbcac273e0e08bc129bf/dist/favicon.ico -------------------------------------------------------------------------------- /dist/index.html: -------------------------------------------------------------------------------- 1 |
\n {{ article.category.name }}\n
\n{{ article.title }}
\n\n {{ article.category.name }}\n
\n{{ article.title }}
\n\n {{ moment(article.published_at).format(\"MMM Do YY\") }}\n
\n22 | {{ article.category.name }} 23 |
24 |{{ article.title }}
25 |48 | {{ article.category.name }} 49 |
50 |{{ article.title }}
51 |21 | {{ moment(article.published_at).format("MMM Do YY") }} 22 |
23 |