Skip to content
Branch: master
Find file History
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Gatsby Theme


@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.

Demo Website (Source Code)

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


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


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


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: ``,
    // 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`

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="" bg="linear-gradient(to right, #D4145A 0%, #FBB03B 100%)">
This project is my entry to Adobe's #ChallengeYourPerspective contest.
You can’t perform that action at this time.