Skip to main content
View plugin on GitHub
See starters using this

Gatsby Theme

@lekoarts/gatsby-theme-cara

@lekoarts/gatsby-theme-cara is released under the MIT license. Current npm package version. Downloads per month on npm. Total downloads on npm. PRs welcome! Follow @lekoarts_de

Playful and Colorful One-Page portfolio featuring Parallax effects and animations. Especially designers and/or photographers will love this theme! Built with MDX and Theme UI.

Live Preview

Read the Source Code.

Also be sure to checkout other Free & Open Source Gatsby Themes

Features

  • Theme UI-based theming
  • react-spring parallax effect
  • CSS Animations on Shapes
  • Light/Dark mode

Installation

npm install @lekoarts/gatsby-theme-cara

Install as a starter

This will generate a new site (with the folder name “cara”) that pre-configures use of the theme including example content and additional plugins.

gatsby new cara LekoArts/gatsby-starter-portfolio-cara

View the starter’s code

Usage

Theme options

Key Default Value Description
basePath / Root url for the theme

Example usage

// gatsby-config.js
module.exports = {
  plugins: [
    {
      resolve: `@lekoarts/gatsby-theme-cara`,
      options: {
        // basePath defaults to `/`
        basePath: `/sideproject`
      }
    }
  ]
};

Additional configuration

In addition to the theme options, there are a handful of items you can customize via the siteMetadata object in your site’s gatsby-config.js

// gatsby-config.js
module.exports = {
  siteMetadata: {
    // Used for the title template on pages other than the index site
    siteTitle: `Cara`,
    // Default title of the page
    siteTitleAlt: `Cara - @lekoarts/gatsby-theme-cara`,
    // Can be used for e.g. JSONLD
    siteHeadline: `Cara - Gatsby Theme from @lekoarts`,
    // Will be used to generate absolute URLs for og:image etc.
    siteUrl: `https://cara.lekoarts.de`,
    // Used for SEO
    siteDescription: `Playful and Colorful One-Page portfolio featuring Parallax effects and animations`,
    // Will be set on the <html /> tag
    siteLanguage: `en`,
    // Used for og:image and must be placed inside the `static` folder
    siteImage: `/banner.jpg`,
    // Twitter Handle
    author: `@lekoarts_de`
  }
};

Shadowing

Please read the guide Shadowing in Gatsby Themes to understand how to customize the this theme! Generally speaking you will want to place your files into src/@lekoarts/gatsby-theme-cara/ to shadow/override files. The Theme UI config can be configured by shadowing its files in src/gatsby-plugin-theme-ui/.

Editing the content

The content of the page is managed by .mdx files inside the theme’s sections folder. You can edit the files by shadowing them in your site.

These files are available: intro.mdx, projects.mdx, about.mdx, contact.mdx

See the example that shadows via src/@lekoarts/gatsby-theme-cara/sections/intro.mdx:

# Hi, I'm Jane Doe

I'm creating noice web experiences for the next generation of consumer-facing companies

The other headings should be <h2> headings!

You also have access to the <ProjectCard /> component/shortcode which is used in the projects.mdx section. The component takes the props title (string), link (string), bg (string) and children (React.ReactNode). You would use it like that:

## Projects

<ProjectCard title="Freiheit" link="https://www.behance.net/gallery/58937147/Freiheit" bg="linear-gradient(to right, #D4145A 0%, #FBB03B 100%)">
This project is my entry to Adobe's #ChallengeYourPerspective contest.
</ProjectCard>