Giter VIP home page Giter VIP logo

renligeng / multilingual-gatsby-starter Goto Github PK

View Code? Open in Web Editor NEW

This project forked from camilorincon/multilingual-gatsby-starter

0.0 0.0 0.0 13.03 MB

Gatsby starter for a static portfolio website/blog, supporting multiple languages, NetlifyCMS, Material UI components customizable in Sass

Home Page: https://mountaincentral.netlify.com

License: MIT License

JavaScript 88.82% CSS 9.20% HTML 1.98%

multilingual-gatsby-starter's Introduction

Multilingual Gatsby NetlifyCMS Starter

This is a gatsby starter, it supports multiple languages, NetlifyCMS, styling in Sass, and material ui components. A hosted demo is found at https://mountaincentral.netlify.com

Table of Contents

Built With

  • GatsbyJS - to obtain static/offline Progressive Web App
  • NetlifyCMS - to obtain blog posts from markdown files.
  • react-i18next - Internationalization to obtain multilingual site
  • Sass - for styling
  • react-md - Material UI components customizable in Sass instead of inline styles

Getting Started

These instructions will get you a copy of this gastby starter up and running on your local machine for development and testing purposes.

Prerequisites

Make sure to have Node & Yarn installed on your local machine

Open a terminal window and install React & Gatsby's command line tool

yarn add react react-dom gatsby-cli

Clone the repo

Clone the repo in the directory of your choice and then move to this new directory

git clone https://github.com/charbelchahine/multilingual-gatsby-netlifycms.git
cd multilingual-gatsby-netlifycms

Install all dependencies for the prototype

yarn install

Development

Start a hot-reloading development environment

gatsby develop

You will now be able to view the prototype at http://localhost:8000/. Any change you make to your React components will immediately be visible in the browser.

Sass

Run yarn sasss before making changes to any of the .scss files.

Set up NetlifyCMS

The following steps-by-steps use Netlify to host the starter from GitHub. Other methods can be used to implement NetlifyCMS.

  1. Sign in or make a Netlify account
  2. Make a New site From Git and select GitHub
  3. Select the appropriate repo
  4. Go to the Identity tab and Enable Identity
  5. Click on Settings and usage
  6. Under Registration check Invite only
  7. Under External providers, add GitHub, Google etc
  8. Under Services enable git gateway
  9. Go back to the Identiy tab and invite users/yourself
  10. Go to your netlify hosted website /admin/ and login using your credentials to access the CMS

Configuring NetlifyCMS

In /static/admin/confiq.yml, the CMS can be configured. Right now, blog posts are configured to have the same path in english & french; hence the titles are also the same since they are configured to create the path in gatsby-node.js.

Lighthouse Audit

Audits Score
Performance 96%
Progressive Web App 96%
Accessibility 100%
Best Practices 100%
SEO 100%

Author

Charbel Chahine - LinkedIn

multilingual-gatsby-starter's People

Contributors

charbelchahine avatar dependabot[bot] avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.