A simple, modern photo gallery built with React and TypeScript, using the Unsplash API. Browse popular images, search instantly, and view your search history—all with a clean, student-friendly UI (no UI libraries used).
- Home Page: See the 20 most popular images from Unsplash.
- Live Search: Type in the search box and images update instantly (no search button needed).
- Search Caching: Previous search results are cached for faster loading if you search again.
- History Page: View your past search queries. Click any to see those results again.
- Infinite Scroll: More images load automatically as you scroll, on both Home and History pages.
- Image Modal: Click any image to see it full-size, with details like downloads, views, and likes.
- No UI Libraries: 100% custom CSS, no MUI, Bootstrap, or AntD.
Add your screenshots here!
- Clone the repo:
git clone https://github.com/Ana7K/acceleration-program.git cd acceleration-program - Install dependencies:
npm install
- Set up Unsplash API:
- Get a free API key from Unsplash Developers.
- Create a
.envfile in the root folder:REACT_APP_UNSPLASH_ACCESS_KEY=your_access_key_here
- Start the app:
The app will open at http://localhost:3000.
npm start
npm start— Run the app in development modenpm run build— Build for productionnpm test— Run tests
- React + TypeScript
- Unsplash API
- Custom CSS (no UI libraries)
src/app/— Main pages (Home, History, Router)src/shared/components/— Reusable UI componentssrc/shared/hooks/— Custom React hooks (API, infinite scroll, etc.)src/shared/types/— TypeScript types
Images powered by Unsplash.