Appion React Nextjs App landing Template

Welcome To Appion React Nextjs App landing Template

Thanks for purchasing this theme, your support is truly appreciated!

This document covers the installation and use of this theme and often reveals answers to common problems and issues - read this document thoroughly if you are experiencing any difficulties. If you have any questions that are beyond the scope of this document, feel free to email at devscorn@gmail.com Thank you so much!

Template Features

  • Available in Nextjs & Gatsbyjs version
  • Based on styled components
  • Individual theming options
  • Individual style loding for making page load superfast
  • Reusable components for highly customization
  • Clean & Simple Design
  • Nextjs & Gatsbyjs for SSR(server side rendaring) support
  • No CSS or SCSS file
  • Fully Responsive Design
  • Cross Browser Compatible with IE11+, Firefox, Safari, Opera, Chrome
Every image or media size should under 1MB

What Inside of Appion & How to configure

How to configure & Install Packages

When you get Appion.zip file form Themeforest first needt to unzip the file you will find two folder,
one folder contain Appion-Nextjs version and other file contain Appion-Gatsby version.

Appion run in server

  1. First go-to in next-landing folder
  2. run yarn install on next-landing
  3. run yarn dev on next-landing

Then , please go to address localhost:3000 on your browser and You will find default landing page.
Similarly
localhost:3000/ for Default Landing
localhost:3000/classic for Classic Landing
localhost:3000/modern for Modern Landing
localhost:3000/hosting for Hosting Landing
localhost:3000/crypto for Crypto Landing
localhost:3000/blog-full for Blog-Grid Full Page
localhost:3000/blog-grid for Blog-Grid Page
localhost:3000/blog-list for Blog-List Page
localhost:3000/blog-single for Blog-Single Page

Appion run in Gatsby.js server

  1. First go-to in gatsby-landing folder
  2. run yarn install on gatsby-landing folder
  3. run yarn dev on gatsby-landing folder

Then , please go to address localhost:8000 on your browser and You will find default landing page.
Similarly
localhost:8000/ for Default Landing
localhost:8000/classic for Classic Landing
localhost:8000/modern for Modern Landing
localhost:8000/hosting for Hosting Landing
localhost:8000/crypto for Crypto Landing
localhost:8000/blog-full for Blog-Grid full
localhost:8000/blog-grid for Blog-Grid Page
localhost:8000/blog-list for Blog-List Page
localhost:8000/blog-single for Blog-Single Page

next-landing folder Structure

After entering next-landing folder, You will find some other folders.

  1. pages
  2. src

In src folder

After entering to next-landing/src folder, You will find:

  1. assets
  2. components
  3. reusecore
  4. sections

Now, we will discuss about each and every folders and their tasks .

assets

In assets folder, you will find the data, images and theme folder. In data folder, you will find all of data uses in this template. You will also find the image folder, where all of the images are kept on the basis of the specific page. In theme folder, you will find all of themeing uses in this template.

components

Here all the Components we use in Appion.

reusecore

reusecore folder is most importantly use, you will find some basic components like Layout, Button, Counter, Navigation etc. We have written these components to make the developer's life easy. Here in details:
Accordion -> By this you can make any Accordion with your own style
Alert -> By this you can make any Alert with your own style
Button -> By this you can make any Button with your own style
Box -> By this you can align any area of block with your own style
Counter -> By this you can make any Counter with your own style
Layout -> Here in Layout all grid system are included
PageHeader -> By this you can make BreadCrumb with your own style
SectionTitle -> By this you can make any SectionTitle with your own style in template
SlickSlider -> By this you can make any slider with your own style in template
By using these basic components, you can write custom components according to your need.

sections

Here all the section include that’s we are used in our template like banner, about, features, news, wallet, Fund, FAQ etc etc for nextjs version.

In pages folder

In this folder , you will find the pages folder of next js and next configuration files. If you want to change something in next js folder , change here .

pages

As we have used next.js , we have a script to your package.json like this:

						{
						“scripts”: {
							“dev”: “next”,
							“build”: “next build”,
							“start”: “next start”
							}
						}
					

After that, the file-system is the main API. Every .js file becomes a route that gets automatically processed and rendered.
Please have a look at this link https://nextjs.org/docs/ for a quick look. You will understand the basic things so quickly.
As we have Three landing pages and three blog pages named index, classic, modern, blog-grid, blog-list, blog-single so we have seven js files named: index.js for Default Home Page.
home-two.js for Home-Two Page.
home-three.js for Home Three Page.
home-four.js for Home Four Page.
blog-grid.js for Blog Grid Page.
blog-list.js for Blog List Page.
blog-single for Blog-Single Page .

gatsby-landing folder structure

After entering gatsby-landing folder, You will find some other folders.

  1. src

In src folder

After entering to gatsby-landing/src folder, You will find:

  1. assets
  2. components
  3. pages
  4. reusecore
  5. sections

Now, we will discuss about each and every folders and their tasks .

assets

In assets folder, you will find the data, images and theme folder. In data folder, you will find all of data uses in this template. You will also find the image folder, where all of the images are kept on the basis of the specific page. In theme folder, you will find all of themeing uses in this template.

components

Here all the Components we use in Appion.

pages

In this folder , you will find the pages folder of next js and next configuration files. If you want to change something in next js folder , change here .

pages

As we have used next.js , we have a script to your package.json like this:

							"scripts": {
								"build": "gatsby build",
								"develop": "gatsby develop",
								"format": "prettier --write \"**/*.{js,jsx,json,md}\"",
								"dev": "npm run develop",
								"serve": "gatsby serve",
								"clean": "gatsby clean",
								"test": "echo \"Write tests! -> https://gatsby.dev/unit-testing\" && exit 1"
							}
						

After that, the file-system is the main API. Every .js file becomes a route that gets automatically processed and rendered.
Please have a look at this link https://nextjs.org/docs/ for a quick look. You will understand the basic things so quickly.
As we have Three landing pages and three blog pages named index, classic, modern, blog-grid, blog-list, blog-single so we have seven js files named: index.js for Default Home Page.
home-two.js for Home-Two Page.
home-three.js for Home Three Page.
home-four.js for Home Four Page.
blog-grid.js for Blog Grid Page.
blog-list.js for Blog List Page.
blog-single for Blog-Single Page .

Here all the Components we use in Appion.

reusecore

reusecore folder is most importantly use, you will find some basic components like Layout, Button, Counter, Navigation etc. We have written these components to make the developer's life easy. Here in details:
Accordion -> By this you can make any Accordion with your own style
Alert -> By this you can make any Alert with your own style
Button -> By this you can make any Button with your own style
Box -> By this you can align any area of block with your own style
Counter -> By this you can make any Counter with your own style
Layout -> Here in Layout all grid system are included
PageHeader -> By this you can make BreadCrumb with your own style
SectionTitle -> By this you can make any SectionTitle with your own style in template
SlickSlider -> By this you can make any slider with your own style in template
By using these basic components, you can write custom components according to your need.

sections

Here all the section include that’s we are used in our template like banner, about, features, news, wallet, Fund, FAQ etc etc for nextjs version.

Appion deployment process

Gatsby Cloud Deployment for Gatsbay

  1. Upload your project into github/gitlab or bit bucket. Make this project private or public whatever you want.
  2. Go to gatsby cloud
  3. Choose i already have a site and get start
  4. Fillout the all available options
  5. Select your project repository from github/gitlab
  6. You may skip Integrations
  7. Then press create site

Vercel Deployment for Nextjs

    Install the Vercel CLI

  1. npm i -g vercel
  2. vercel --prod

Firebase Deployment for Nextjs

  1. Init firebasebase and create firbase project into project folder
  2. Before we go next delete public/index.html
  3. Open .babelrc file in editor and replace this code to module-resolver alias "alias": { "assets": "./src/client/assets", "components": "./src/client/components", "sections": "./src/client/sections", "reusecore": "./src/client/reusecore" }
  4. Open firebase.json then replace with this code { "hosting": { "public": "public", "rewrites": [ { "source": "**/**", "function": "nextjs-server" } ] }, "functions": { "source": ".", "ignore": [ ".firebase/**", ".firebaserc", "firebase.json", "**/node_modules/**", "**/public/**" ] } }
  5. install yarn add firebase-admin firebase-functions yarn add @babel/core @babel/cli @babel/preset-env cross-env rimraf -dev
  6. Open package.json and this code "main": "dist/server/index.js", "engines": { "node": "10" }
    if you face engine related issues then run yarn config set ignore-engines true
  7. Create two client and server folder into src/
  8. select > pages, > assets, > components, > reusecore, > sections and move into client folder
  9. add .babelrc, index.js into src/server/
  10. open .babelrc in editor and add this code { "presets": [ [ "@babel/preset-env", { "targets": { "node": "10.15.3" } } ] ] }
  11. open index.js in editor and add this code
    import * as admin from "firebase-admin"; import * as functions from "firebase-functions"; import next from "next"; admin.initializeApp(); const dev = process.env.NODE_ENV !== "production"; const app = next({ dev, // the absolute directory from the package.json file that initialises this module // IE: the absolute path from the root of the Cloud Function conf: { distDir: "dist/client" }, }); const handle = app.getRequestHandler(); const server = functions.https.onRequest((request, response) => { // log the page.js file or resource being requested console.log("File: " + request.originalUrl); return app.prepare().then(() => handle(request, response)); }); const nextjs = { server, };
  12. Finally run firebase-build firebase-preserve firebase-serve yarn firebase-predeploy yarn firebase-deploy

Stack We Used in Appion

  1. Yarn Workspace.
  2. React Js.
  3. Next Js.
  4. Gatsby Js.
  5. Styled Components.

Source and Credit