Giter Club home page Giter Club logo

hygraphheadless-nextjs-application's Introduction

NextJS CMS Portfolio

The NextJS FullStack Portfolio project was conceived with two primary objectives. First and foremost, it aimed to optimize and create the third version of my portfolio, providing an enhanced showcase of my work and skills. Secondly, this project was not solely about personal presentation; it also served as a valuable learning opportunity. Throughout its development, I delved into a diverse array of cutting-edge technologies. These included libraries and tools such as "@graphcms/rich-text-react-renderer," "@splinetool/react-spline," "graphql," "next," "react," and "tailwindcss," among others. By incorporating these technologies into my portfolio project, I gained practical experience and expertise that enriched my development skills and expanded my toolkit.

Table of Contents

  • Featured
  • Technologies
  • Workflow
  • Deployment
  • Contributions
  • License
  • Acknowledgments

Featured

  1. Proficient in NextJS for building comprehensive applications, including managing environment variables, implementing SSL, and deploying on Vercel.
  2. Successfully integrated Spline 3D objects, suitable for VR headset usage and on-site interaction.
  3. Enhanced GraphQL skills for efficient data querying and manipulation.
  4. Mastered the use of the headless content management system GraphCMS, now known as Hygraph.

Technologies

  • graphcms/rich-text-react-renderer
  • splinetool/react-spline
  • splinetool/runtime
  • autoprefixer
  • eslint
  • eslint-config-next
  • graphql
  • graphql-request
  • html-react-parser
  • moment
  • next
  • postcss
  • react
  • react-dom
  • react-icons
  • react-multi-carousel
  • sass
  • swr
  • tailwindcss

Workflow

Downloading Correct Packages for Project:

  • Ensure I downloaded the necessary packages to kickstart your project.
  • These packages are like building blocks that provide essential functionalities.

Downloading Extra Packages for Styling:

  • To enhance styling, I added packages like "graphcms/rich-text-react-render" to customize and format text using Tailwind CSS.
  • These packages can also help with creating off-page links for a seamless user experience.

Setting Up Git and GitHub Repo:

  • Established a version control system using Git and create a repository on GitHub.
  • This enables you to track changes, collaborate with others, and sets the foundation for implementing Continuous Integration and Continuous Deployment (CI/CD) processes.

Setting Up Tailwind CSS:

  • Configured Tailwind CSS to streamline my styling process.
  • Tailwind provided utility classes that make it easier to design and style projects without writing extensive custom CSS.

Setting Up SCSS:

  • I also set up SCSS (Sass) to take advantage of its powerful features like variables, nesting, and modularization of styles.

Creating Pages:

  • I began building my project by creating individual pages, which are the different views or sections of your application that users interact with.

Creating Components:

  • Developed reusable components that encapsulate specific functionalities or UI elements, helping maintain a clean and organized codebase.

GraphQL Data Fetching:

  • Utilized GraphQL to fetch data from your headless content management system, Hygraph (formerly known as GraphCMS).
  • This enabled me to import dynamic content and features into my components, making my website more versatile and content-rich.

Deployment

Step 1 - Initial Deployment Setup

  • Logged into my Vercel account or create one if you don't have it already.
  • Connected my Vercel account to your GitHub repository where my Next.js application code is hosted.

Step 2 - Project Configuration

  • Select the GitHub repository containing my Next.js project in the Vercel dashboard.
  • Configured the deployment settings, including the branch to deploy (usually "main" or "master").
  • Defined environment variables if your application requires them, such as API keys or database connection strings.

Step 3 - Trigger Deployment

  • Trigger the initial deployment by clicking the "Deploy" button. Vercel will automatically build and deploy your application.
  • While deploying, Vercel will run tests to ensure everything is working correctly.

Step 4 - Debugging GraphQL Call

  • After the initial deployment, I encountered issues with your GraphQL calls, and accessed the Vercel dashboard.
  • Inspected the build logs and error messages to identify the issue. In my case, I noticed that one of my GraphQL calls stopped working.
  • I debugged the GraphQL call by examining my code and the arguments being passed.
  • I found that there was an empty argument causing the issue.
  • Corrected the empty argument and updated my code.

Step 5 - Final Deployment

  • Once I fixed the issue and tested it on the Vercel test site (provided during deployment), I confirmed that my GraphQL calls were working correctly.
  • Everything looked good on the test site, so I merged my changes to the main branch and triggered another deployment.
  • This deployment reflected my fixed GraphQL call and any other improvements I made.
  • After successful deployment, my Next.js application was live on the actual domain I configured, and users could access it without issues.

Contributing

Contributions to the Website are welcome! If you find any issues or have suggestions for improvements, please feel free to open an issue or submit a pull request.

License

This project is licensed under the MIT License.

Acknowledgments

The Website was developed by Gary Kozlowski.

hygraphheadless-nextjs-application's People

Contributors

gkozlowskidesign avatar

Stargazers

 avatar  avatar

Watchers

 avatar

hygraphheadless-nextjs-application's Issues

Recent Posts (GraphQL Slug Issue)

Screen Shot 2023-08-15 at 7 33 12 PM

Not sure why this isn't working, it was working literally hours ago. I added new posts to the site and redeployed it and suddenly it stopped working. May remove it from the live site temporarily until I can find a way to fix it. Please help.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.