GitHub Issue Blog is an application that utilizes the GitHub API to fetch issues from a repository and display them as blog posts.
gitblog.mp4
These instructions will allow you to get a copy of the project and run the application locally for development and testing purposes.
- First, you need to have NodeJS installed on your machine. To do this, access the official NodeJS website by clicking here and follow the installation instructions for your operating system.
-
Clone the repository using the command or download the .zip file and extract the contents:
git clone https://github.com/lukeskw/react-gh-blog.git
-
Access the project folder
-
Install the project dependencies
npm install
-
Run the project in development mode
npm run dev
- Displaying your GitHub profile information, including image, followers count, name, etc.
- Listing and filtering all issues from the repository with a brief summary of their content.
- Creating a page to display a complete post (issue).
- Proper routing and navigation between different pages of the application.
- Fetching data from the GitHub API to display profile information and issues.
- Implementing forms for filtering and navigating through issues.
- Ensure that the application doesn't exceed the rate limit imposed by the GitHub API when making requests for fetching user profile information and repository issues.
- Implement proper error handling and feedback mechanisms if rate limits are reached.
- Ensure that the fetched data from the GitHub API, including user profile information and repository issues, is accurate and up-to-date
- TypeScript - A superset of JavaScript that adds static type definitions, enhancing code quality and developer productivity.
- ReactJS - A JavaScript library for building user interfaces, providing a component-based architecture and efficient rendering.
- Tailwind CSS - A utility-first CSS framework used for styling, providing a low-level utility approach for building custom designs.
- Tailwind Merge - A Tailwind CSS plugin that adds utilities for merging utility classes, enabling more flexible and concise styling.
- Vite - A blazing fast build tool for modern web development, offering instant server start and optimized build times.
- Axios - A promise-based HTTP client for making requests to APIs, used for handling asynchronous operations in web applications.
- Day.js - A lightweight and fast JavaScript library for parsing, validating, manipulating, and formatting dates.
- Phosphor React - A library of SVG icons as React components, offering a collection of customizable for use in web applications.