Stories

Personal Blog React NextJS Template

DOCUMENTATION

  • Doc version: 1.0
  • Created: 06 September 2021
  • Last update: 27 Jan 2022

OVERVIEW

Stories is a clean and minimal blog template built with React Next.js aiming at faster performance, high code quality & SEO. This template is especially suitable for writers who need to create personal blog site with simple creative features and effects to make readers feel the pleasure of reading blog posts and articles.

Packed with a fine assortment of adventure and travel blog templates, tons of exciting predesigned layouts for all types of blogs.

Stories is a NextJS personal blog template mixes between modern, classic and minimal styles and will help you create a simple and clean blog, if you are a blogger, then it’s a perfect choice.

We used styled-components and carefully created custom components so that we don’t have to sacrifice performance. The styled component also provides an easy way to change the appearance of the entire website.

We have a dedicated support center for all of your support needs. It includes our Documentation and Ticket system for any questions you have. We usually get back to you within 12-24 hours.

Main Features

Creative Design: Stories is a bold theme that organizing content to follow natural eyes, striking balance between beautiful and visual hierarchy.

Fully Responsive: The theme passed Mobile-Friendly Test – by Google. We also tested carefully the theme on almost devices: laptop, tablet, and phone. All elements are 100% responsive and ready for all devices.

Multi layouts: 03 Home page layouts, 04 Archive page layouts, 04 single post format, 08 inner pages

Color & Fonts is easily changed

W3C Validated Code

Offcanvas sidebar

Compatible Browsers: IE8+, Firefox, Safari, Opera, Chrome

Well documentation included

Ticket System Support

What do you get?

Template source code [html, css, js]

Documentation

Note

All images are just used for Preview Purpose Only. They are not part of the template and NOT included in the final purchase files.

Change log

                                VERSION 2.0
                                - Add Mega menu
                                
                                VERSION 1.0
                                - First release.
                            

GET STARTED

Folder Structure

  • /components
    • /elements
      • /backToTop.js
      • /search.js
    • /layout
      • /bottom.js
      • /footer.js
      • /header.js
      • /layout.js
      • /menu.js
      • /nav.js
      • /sidebar.js
    • /slider
      • /BottomCarousel.js
      • /HomeSlider3.js
      • /PostCarousel1.js
      • /VerticalCarousel.js
  • /components
    • /404.js
    • /blank.js
    • /category.js
    • /category-big.js
    • /category-grid.js
    • /category-list.js
    • /category-masonry.js
    • /index.js
    • /page-about.js
    • /..........
  • /components/public
  • /package.json
  • /package-lock.json

Structure

_app.js Structure

								
                                import { useEffect } from "react";
                                import 'react-perfect-scrollbar/dist/css/styles.css';
                                import "slick-carousel/slick/slick.css";
                                import "slick-carousel/slick/slick-theme.css";
                                import "../public/assets/css/style.css";
                                import "../public/assets/css/widgets.css";
                                import "../public/assets/css/responsive.css";
                                import 'metismenujs/dist/metismenujs.css';

                                function MyApp({ Component, pageProps }) {
                                    useEffect(() => {
                                        if (typeof window !== "undefined") {
                                            window.WOW = require("wowjs");
                                        }

                                        new WOW.WOW().init();

                                        const xyz = require("masonry-layout");

                                        var msnry = new xyz(".grid", {
                                            itemSelector: ".grid-item",
                                            columnWidth: ".grid-sizer"
                                        });
                                    });
                                    return(
                                    
); } export default App;

Dependencies

package.json

								{
                                    "name": "stories",
                                    "version": "0.1.0",
                                    "private": true,
                                    "scripts": {
                                      "dev": "next dev",
                                      "build": "next build",
                                      "start": "next start"
                                    },
                                    "dependencies": {
                                      "masonry-layout": "^4.2.2",
                                      "metismenujs": "^1.3.1",
                                      "next": "11.1.0",
                                      "react": "17.0.2",
                                      "react-dom": "17.0.2",
                                      "react-perfect-scrollbar": "^1.5.8",
                                      "react-scroll-up": "^1.3.7",
                                      "react-slick": "^0.28.1",
                                      "slick-carousel": "^1.8.1",
                                      "wowjs": "^1.1.3"
                                    }
                                  }
							

Create a Page

Create page pages\blank.js

								function Blank() {
                                    export function MyPage() {
                                      return(
                                       

Hello!

) } export default Blank;

Routing

The Next.js router allows you to do client-side route transitions between pages, similar to a single-page application

A React component called Link is provided to do this client-side route transition.

								import Link from 'next/link'
					
                                function Home() {
                                return(
                                    
                                ) 
                                } 	
                                export default Home;	
							

In the example above we have multiple links, each one maps a path (href) to a known page:

  • / → pages/index.js
  • /about → pages/about.js
  • /blog/hello-world → pages/blog/[slug].js

Any in the viewport (initially or through scroll) will be prefetched by default (including the corresponding data) for pages using Static Generation. The corresponding data for server-rendered routes is not prefetched.

Deployment

If you haven’t already done so, push your Next.js app to a Git provider of your choice: GitHub, GitLab, or BitBucket. Your repository can be private or public.

Then, follow these steps:

  • Sign up to Vercel (no credit card is required).
  • After signing up, you’ll arrive on the “Import Project” page. Under “From Git Repository”, choose the Git provider you use and set up an integration. (Instructions: GitHub / GitLab / BitBucket).
  • Once that’s set up, click “Import Project From …” and import your Next.js app. It auto-detects that your app is using Next.js and sets up the build configuration for you. No need to change anything — everything should work just fine!
  • After importing, it’ll deploy your Next.js app and provide you with a deployment URL
  • To get more help on the deployment checkout

UPDATE

Important Note:

- Backup your website and theme folders completely to make sure you have a restore point in case of any complications.

Update using FTP

  1. Download the latest version of the theme to your device.
  2. Connect to your hosting via FTP software
  3. Upload the theme folder you unzipped to your site folder
  4. You should be asked to confirm overwriting of this folder and its contents. Confirm the overwrite.

SOURCES & CREDITS

THANK YOU

Thank you so much for using this template.

- AliThemes Team -