# Modern Space Theme Portfolio using Next.js 14 and Three.js

[](https://github.com/sanidhyy "Ask Me Anything!")
[](https://github.com/sanidhyy/space-portfolio/blob/main/LICENSE "GitHub license")
[](https://github.com/sanidhyy/space-portfolio/commits/main "Maintenance")
[](https://github.com/sanidhyy/space-portfolio/branches "GitHub branches")
[](https://github.com/sanidhyy/space-portfolio/commits "Github commits")
[](https://github.com/sanidhyy/space-portfolio/issues "GitHub issues")
[](https://github.com/sanidhyy/space-portfolio/pulls "GitHub pull requests")
[](https://spaceportfolio.netlify.app/ "Netlify Status")
# :notebook_with_decorative_cover: Table of Contents
- [Folder Structure](#bangbang-folder-structure)
- [Getting Started](#toolbox-getting-started)
- [Screenshots](#camera-screenshots)
- [Tech Stack](#gear-tech-stack)
- [Stats](#wrench-stats)
- [Contribute](#raised_hands-contribute)
- [Acknowledgements](#gem-acknowledgements)
- [Buy Me a Coffee](#coffee-buy-me-a-coffee)
- [Follow Me](#rocket-follow-me)
- [Learn More](#books-learn-more)
- [Deploy on Vercel](#page_with_curl-deploy-on-vercel)
- [Give A Star](#star-give-a-star)
- [Star History](#star2-star-history)
- [Give A Star](#star-give-a-star)
## :bangbang: Folder Structure
Here is the folder structure of this app.
```bash
space-portfolio/
|- app/
|-- apple-icon.png
|-- favicon.ico
|-- globals.css
|-- icon1.png
|-- icon2.png
|-- layout.tsx
|-- page.tsx
|- components/
|-- main/
|-- sub/
|- config/
|-- index.ts
|- constants/
|-- index.ts
|- lib/
|-- motion.ts
|-- utils.ts
|- public/
|- .eslintrc.json
|- .gitignore
|- eslint.config.mjs
|- netlify.toml
|- next.config.js
|- package-lock.json
|- package.json
|- postcss.config.js
|- tailwind.config.ts
|- tsconfig.json
```
## :toolbox: Getting Started
1. Make sure **Git** and **NodeJS** is installed.
2. Clone this repository to your local computer.
3. Open terminal in root directory. Run `npm install --legacy-peer-deps` or `yarn install --legacy-peer-deps`.
4. Now app is fully configured 👍 and you can start using this app using `npm run dev` or `yarn dev`.
## :camera: Screenshots:




## :gear: Tech Stack
[](https://react.dev/ "React JS") [](https://nextjs.org/ "Next JS") [](https://www.typescriptlang.org/ "Typescript") [](https://tailwindcss.com/ "Tailwind CSS") [](https://netlify.app/ "Netlify") [](https://threejs.org/ "Three.js")
## :wrench: Stats
[](https://pagespeed.web.dev/analysis/https-spaceportfolio-netlify-app/2efbmg117d "Stats for Space Portfolio")
## :raised_hands: Contribute
You might encounter some bugs while using this app. You are more than welcome to contribute. Just submit changes via pull request and I will review them before merging. Make sure you follow community guidelines.
## :gem: Acknowledgements
Useful resources and dependencies that are used in Space Portfolio.
- [@heroicons/react](https://www.npmjs.com/package/@heroicons/react): ^2.2.0
- [@react-three/drei](https://www.npmjs.com/package/@react-three/drei): ^10.7.7
- [@react-three/fiber](https://www.npmjs.com/package/@react-three/fiber): ^9.6.1
- [@types/node](https://www.npmjs.com/package/@types/node): ^25
- [@types/react](https://www.npmjs.com/package/@types/react): 19.2.15
- [@types/react-dom](https://www.npmjs.com/package/@types/react-dom): 19.2.3
- [autoprefixer](https://www.npmjs.com/package/autoprefixer): ^10.5.0
- [clsx](https://www.npmjs.com/package/clsx): ^2.1.1
- [eslint](https://www.npmjs.com/package/eslint): ^10.4.0
- [eslint-config-next](https://www.npmjs.com/package/eslint-config-next): 16.2.6
- [framer-motion](https://www.npmjs.com/package/framer-motion): ^12.39.0
- [next](https://www.npmjs.com/package/next): 16.2.6
- [postcss](https://www.npmjs.com/package/postcss): ^8
- [react](https://www.npmjs.com/package/react): 19.2.6
- [react-dom](https://www.npmjs.com/package/react-dom): 19.2.6
- [react-icons](https://www.npmjs.com/package/react-icons): ^5.6.0
- [react-intersection-observer](https://www.npmjs.com/package/react-intersection-observer): ^10.0.3
- [tailwind-merge](https://www.npmjs.com/package/tailwind-merge): ^3.6.0
- [tailwindcss](https://www.npmjs.com/package/tailwindcss): ^3.3.0
- [three](https://www.npmjs.com/package/three): ^0.184.0
- [typescript](https://www.npmjs.com/package/typescript): ^6
## :coffee: Buy Me a Coffee
[](https://www.buymeacoffee.com/sanidhy "Buy me a Coffee")
## :rocket: Follow Me
[](https://github.com/sanidhyy "Follow Me")
[](https://x.com/intent/tweet?text=Check+out+this+amazing+app:&url=https%3A%2F%2Fgithub.com%2Fsanidhyy%2Fspace-portfolio "Tweet")
## :books: Learn More
To learn more about Next.js, take a look at the following resources:
- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.
You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome!
## :page_with_curl: Deploy on Vercel
The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.
Check out [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details.
## :star: Give A Star
You can also give this repository a star to show more people and they can use this repository.
## :star2: Star History