GithubHelp home page GithubHelp logo

gideonagyage / photo-gallery Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 733 KB

This project is part of the Codevixens Frontend Development Challenge (Day 9). A simple photo gallery application built using React.

Home Page: https://photo-gallery-navy-five.vercel.app

License: MIT License

HTML 12.90% CSS 12.77% JavaScript 74.33%
api bootstrap react reactjs unsplash unsplash-api grid-layout masonry-grid masonry-layout react-masonry-css

photo-gallery's Introduction

Photo Gallery App in React JS

Overview

This project is part of the Codevixens Frontend Development Challenge (Day 9). A simple photo gallery application built using React. It demonstrates how to integrate with an external API (Unsplash), manage state, and create a user interface to display fetched data.

Features

  • API Integration: Uses the Unsplash API to fetch images.
  • State Management: Uses React's useState hook to manage the fetched photos, loading state, and potential errors.
  • UI Components: A Photo component to display the photo, and the PhotoGallery component that renders the array of fetched photoss in a grid layout.
  • Error Handling: Handles errors during API calls and provides appropriate feedback to the user.
  • User Interface: Provides a simple UI for displaying the photos, including the photographer's name.

Installation

  1. Clone the repository:
git clone https://github.com/gideonagyage/Photo-Gallery.git
  1. Navigate to the project directory:
cd Photo-Gallery
  1. Install dependencies:
npm install

Usage

  1. Start the development server:
npm start
  1. Open your browser and navigate to
http://localhost:3000.

How it Works

The PhotoGallery component is the main component that houses the Photo components. It handles the following:

  1. API Integration: Fetches photos from the Unsplash API using fetch.
  2. State Management: Manages the fetched photos, loading state, and potential errors using useState.
  3. UI Rendering: Renders the photo grid and provides error messages if necessary.

Screenshots

  • Desktop View

Desktop Screenshot

  • Mobile View

Mobile Screenshot


Live Demo

Check out the live demo here.

Key Concepts

  1. API Integration: Interacting with external APIs to fetch data.
  2. State Management: Managing the data and UI state of the React application.
  3. UI Components: Creating reusable components to build the user interface.

Contributing

Feel free to fork this repository and submit pull requests. Any contributions are welcome!

License

This project is licensed under the MIT License.

Acknowledgements

  • Unsplash for providing the API and beautiful images.
  • Codevixens for organizing the challenge.
  • Chinaza Igboanugo, Lois Bassey, and Oyinkansola Shoroye for their contributions and guidance.

Feel free to customize it further to fit your needs! If you have any specific details you'd like to add or change, let me know.

photo-gallery's People

Contributors

gideonagyage avatar

Stargazers

 avatar

Watchers

 avatar

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.