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

Gatsby-theme-suly-portfolio

Note

This package is only based on the original @lekoarts/gatsby-theme-cara. I did some customization and republish to npm registry. Happy Coding!

Features

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

Installation

npm install @lekoarts/gatsby-theme-cara-i

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-i

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-improved`,
        // Default title of the page
        siteTitleAlt: `Cara - @tjtechi/gatsby-theme-cara`,
        // Can be used for e.g. JSONLD
        siteHeadline: `Cara-improved - Gatsby Theme from @tjtechi`,
        // Will be used to generate absolute URLs for og:image etc.
        siteUrl: `https://suly.tech`,
        // Used for SEO
        siteDescription: `Playful and Colorful One-Page portfolio featuring Parallax effects and animations for developers`,
        // 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: `@tjtechi`,
    },
};

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 nice 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>