Skip to content

Core Config

Gerald McAlister edited this page Dec 3, 2018 · 3 revisions

The core config file contains the the definitions that are required for the minimum functionality of the website. These properties will be used in various places throughout the website, so make sure this is filled out properly!

Properties

This configuration contains several required parameters, however, you can optionally leave several parts of it blank. Specifically, the social media links, keywords, site keys, and description can all be left blank with minimal visual impact to the site. However, it is highly recommended that you fill them all out!

static

  • Type: Boolean
  • Default Value: true
  • Required: Yes
  • Description: Indicates whether the website is setup to be purely static or not. This will determine how you deploy the website!

user_email

  • Type: String
  • Default Value: Empty
  • Required: Yes if static, no if dynamic.
  • Description: The email to use to contact you at for the contact form. This is required in static setups but not required for dynamic setups.

formspree_gold

  • Type: Boolean
  • Default Value: false
  • Required: Yes if static, no if dynamic.
  • Description: Indicates whether you have a Formspree Gold account. Only required when statically deployed like the email field.

user

  • Type: String
  • Default Value: Empty
  • Required: Yes
  • Description: Your name or alias. This is displayed anywhere your name is required on the site.

rss_link

  • Type: String
  • Default Value: Empty
  • Required: Yes
  • Description: A link to an RSS feed for yourself. Used to display recent blog posts or other feeds. You can use a service like TwittRSS.me to use Twitter if you don't have a blog.

user_picture

  • Type: URL
  • Default Value: Empty
  • Required: Yes
  • Description: A link to a profile picture to use on various pages. Can also be a locally stored image on the site.

user_bio

  • Type: HTML
  • Default Value: Empty
  • Required: Yes
  • Description: A small biography about yourself. Can use HTML to easily add links and other fancy things to the bio. Used on the Contact Page.

user_bio_brief

  • Type: HTML
  • Default Value: Empty
  • Required: Yes
  • Description: A very brief biography about yourself. Can use HTML to easily add links and other fancy things to the bio. Used on the Home Page for SEO purposes.

description

  • Type: String
  • Default Value: Empty
  • Required: No
  • Description: A description to provide search engines about your website. Should be short and simple!

keywords

  • Type: List of Strings
  • Default Value: Empty
  • Required: No
  • Description: A list of keywords to provide search engines about your website. Make sure to include anything you may need!

site_keys

  • Type: Dictionary of Strings to Strings.
  • Default Value: Empty
  • Required: No
  • Description: A list of keys and values to use for various parts of the site. Currently supported keys are:
    • google_recaptcha_key - Used for a custom ReCaptcha box on the Contact Page when not using Formspree.
    • google_site_tracking_id - Used for Google Analytics to track statistics about the site. Dynamically injected at runtime for each page!

contact_subjects

  • Type: List of Strings
  • Default Value: Empty
  • Required: No
  • Description: A list of possible subjects users can choose when contacting you. When left empty the user will be able to type anything as the subject. Useful for filtering these emails, though a dynamic setup should be used in this case to ensure these values aren't modified in the web browser.

social_medias

  • Type: List of Social Media Objects
  • Default Value: Empty
  • Required: No
  • Description: A list of Social Media Objects. These icons and links will appear at the bottom of each page of your site. See below for the format of these objects!

Social Media Object

The social media object contains various properties used to display your social media links at the bottom of each page.

Properties

id

  • Type: String
  • Default Value: Empty
  • Required: Yes
  • Description: A unique ID for this social media icon.

name

  • Type: String
  • Default Value: Empty
  • Required: No
  • Description: The name of the social media icon. Used for the alt text on the icon image.

color

  • Type: Hex Color
  • Default Value: White
  • Required: No
  • Description: The color to switch the icon to when hovered over.

icon

  • Type: String
  • Default Value: Empty
  • Required: Yes
  • Description: The icon to use for this social media option. These icons are provided by Font Awesome so visit their site to find the names of them.

link

  • Type: URL
  • Default Value: Empty
  • Required: Yes
  • Description: The link to your social media page for this object.

Supported Formats

RSS Feeds Default Images

RSS feeds are supported for any RSS feeds, but this project checks for the following domains, and adds nicer default images if no cover image is provided for a feed item:

  • Medium.com
  • Blogspot.com
  • Wordpress.com

Example Configuration

{
    "static": true,
    "user_email": "me.nospam@example.com",
    "formspree_gold": false,
    "user": "Gerald McAlister",
    "rss_link": "https://medium.com/feed/@gemisis",
    "user_picture": "https://secure.gravatar.com/avatar/8150dfa4d069cdf366386f39cc213327?size=400",
    "user_bio": "Put a user bio here! You can even <a href=\"https://www.geraldmcalister.com\">put links here</a>!",
    "description": "Gerald McAlister is a software engineer. Visit this site to learn more about him!",
    "keywords": [
        "programmer",
        "software engineer",
        "virtual reality",
        "mixed reality",
        "artificial intelligence"
    ],
    "site_keys": {
        "google_recaptcha_key": "Key Here",
        "google_site_tracking_id": "Key here"
    },
    "contact_subjects": [
        "Speaker Request",
        "Career Advice",
        "Job Opportunity",
        "Old Contact"
    ],
    "social_medias": [
        {
            "id": "social-fb",
            "name": "Facebook",
            "color": "#3B5998",
            "icon": "fa-facebook-square",
            "link": "https://www.facebook.com/gerald.mcalister"
        },
        {
            "id": "social-gh",
            "name": "GitHub",
            "color": "#323131",
            "icon": "fa-github-square",
            "link": "https://www.github.com/gemisis"
        },
        {
            "id": "social-li",
            "name": "LinkedIn",
            "color": "#0077B5",
            "icon": "fa-linkedin",
            "link": "https://www.linkedin.com/in/gemcalister"
        },
        {
            "id": "social-tw",
            "name": "Twitter",
            "color": "#4099FF",
            "icon": "fa-twitter-square",
            "link": "https://www.twitter.com/gemisisDev"
        }
    ]
}

Clone this wiki locally