watosan
watosan copied to clipboard
Fullstack blog: VueJS + NuxtJS + MongoDB + Apollo + GraphQL + SSR + PWA
Watosan
:metal: Fullstack blog VueJS + NuxtJS + MongoDB + Apollo + GraphQL + SSR + PWA + AMP :metal:
:exclamation: Warning! This project is currently under development. Project may contain errors, incomplete parts and everything what incomplete project may have.
Todo list
- [ ] Use better font
- [ ] Fix font rendering
- [ ] Fix bundle size (at least swtich off from highlightjs)
- [ ] Fix OG and TC definitions according to @nuxt/pwa documentation
- [ ] Try to get 100 lh score for all checks
- [ ] Make sure PWA works corretly with 100 lh score
- [ ] Make codestyle to be consistent. Rewrite es5 to es6 cuz of backpack usage
:clipboard: Installation
# Install dependencies
npm i
# Configure the project
# It will create .env file for you and generate JWT Secret
node install
:space_invader: Usage
# Serve in development mode
npm run dev
# Build for production
npm run build
# Serve in production mode
npm run start
# Lint
npm run lint
# Lint and fix
npm run lint:fix
:gem: Features
- Send email (subscriptions)
- reCaptcha
- Posts
- Tags
- Backoffice
- Meta
-
- Open Graph (incomplete!)
-
- Twitter Card (incomplete!)
:muscle: Tools, methodologies
- SSR (NuxtJS)
- NuxtJS PWA
- VueJS
- HighlightJS
- reCaptcha
- Vue-multiselect
- Sass
- JWT
- MongoDB (Mongoose)
- GraphQL (Apollo)
- ENV (dotenv)
- PM2
- Speakingurl (slug)
- Nodemailer for mailing
- Backpack
- Markdown
-
- Plugins:
-
-
- markdown-it-highlightjs
-
-
-
- markdown-it-emoji
-
- ESLint (standard, vue-recommended)