|
1 | | -This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://nextjs.org/docs/app/api-reference/cli/create-next-app). |
| 1 | +# Professional Developer Portfolio |
| 2 | + |
| 3 | +A modern, interactive portfolio website built with Next.js 14, featuring GitHub-style aesthetics and smooth scroll animations. |
| 4 | + |
| 5 | +[](https://codecov.io/gh/attarchi/attarchi.github.io) |
| 6 | + |
| 7 | +## Tech Stack |
| 8 | + |
| 9 | +- **Framework**: Next.js 14 (App Router) |
| 10 | +- **Styling**: Tailwind CSS |
| 11 | +- **UI Components**: shadcn/ui |
| 12 | +- **Animations**: Framer Motion |
| 13 | +- **Content**: MDX/Markdown |
| 14 | +- **Deployment**: GitHub Pages |
| 15 | +- **CI/CD**: GitHub Actions |
| 16 | + |
| 17 | +## Features |
| 18 | + |
| 19 | +- Interactive scroll-triggered animations |
| 20 | +- Professional GitHub-inspired design |
| 21 | +- Responsive layout for all devices |
| 22 | +- Blog system with MDX support |
| 23 | +- Dark/Light theme support |
| 24 | +- SEO optimized |
| 25 | +- Performance focused |
2 | 26 |
|
3 | 27 | ## Getting Started |
4 | 28 |
|
5 | | -First, run the development server: |
| 29 | +1. Clone the repository: |
| 30 | +```bash |
| 31 | +git clone https://github.com/attarchi/attarchi.github.io.git |
| 32 | +cd attarchi.github.io |
| 33 | +``` |
6 | 34 |
|
| 35 | +2. Install dependencies: |
| 36 | +```bash |
| 37 | +yarn install |
| 38 | +``` |
| 39 | + |
| 40 | +3. Run the development server: |
7 | 41 | ```bash |
8 | | -npm run dev |
9 | | -# or |
10 | 42 | yarn dev |
11 | | -# or |
12 | | -pnpm dev |
13 | | -# or |
14 | | -bun dev |
15 | 43 | ``` |
16 | 44 |
|
17 | 45 | Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. |
18 | 46 |
|
19 | | -You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file. |
| 47 | +## Project Structure |
| 48 | + |
| 49 | +``` |
| 50 | +/app # Next.js app router pages |
| 51 | +/components # Reusable React components |
| 52 | +/content/posts # Blog posts in MDX format |
| 53 | +/lib # Utility functions and hooks |
| 54 | +/public # Static assets |
| 55 | +``` |
| 56 | + |
| 57 | +## Development |
20 | 58 |
|
21 | | -This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load [Geist](https://vercel.com/font), a new font family for Vercel. |
| 59 | +- `yarn dev` - Start development server |
| 60 | +- `yarn build` - Build for production |
| 61 | +- `yarn start` - Start production server |
| 62 | +- `yarn lint` - Run ESLint |
| 63 | +- `yarn type-check` - Run TypeScript type checking |
22 | 64 |
|
23 | | -## Learn More |
24 | 65 |
|
25 | | -To learn more about Next.js, take a look at the following resources: |
| 66 | +## Design System |
26 | 67 |
|
27 | | -- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. |
28 | | -- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial. |
| 68 | +- **Typography**: JetBrains Mono (headings) and Inter (body) |
| 69 | +- **Colors**: GitHub-inspired palette with light/dark mode support |
| 70 | +- **Animations**: Scroll-triggered with Framer Motion |
| 71 | +- **Components**: Custom-built with shadcn/ui and Tailwind CSS |
29 | 72 |
|
30 | | -You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome! |
31 | 73 |
|
32 | | -## Deploy on Vercel |
| 74 | +## Deployment |
| 75 | + |
| 76 | +The site is automatically deployed to GitHub Pages using GitHub Actions. Each push to the main branch triggers a new deployment. |
| 77 | + |
| 78 | +### Manual GitHub Pages Setup |
| 79 | + |
| 80 | +1. **Repository Configuration** |
| 81 | + - Go to your repository settings |
| 82 | + - Navigate to "Pages" under "Code and automation" |
| 83 | + - Set the source to "GitHub Actions" |
| 84 | + |
| 85 | +2. **Next.js Configuration** |
| 86 | + Add the following to your `next.config.js`: |
| 87 | + ```js |
| 88 | + /** @type {import('next').NextConfig} */ |
| 89 | + const nextConfig = { |
| 90 | + output: 'export', |
| 91 | + basePath: '/<youname>.github.io', |
| 92 | + images: { |
| 93 | + unoptimized: true, |
| 94 | + }, |
| 95 | + } |
| 96 | + |
| 97 | + module.exports = nextConfig |
| 98 | + ``` |
| 99 | + |
| 100 | +3. **Custom Domain (Optional)** |
| 101 | + - Add your custom domain in repository settings |
| 102 | + - Create a CNAME file in the `public` directory |
| 103 | + - Update DNS settings with your domain provider |
| 104 | + |
| 105 | +### Deployment Verification |
| 106 | + |
| 107 | +After deployment: |
| 108 | +1. Wait for the GitHub Actions workflow to complete |
| 109 | +2. Visit `https://<youname>.github.io` |
| 110 | +3. Verify all pages and assets load correctly |
| 111 | +4. Check that all animations and interactions work |
| 112 | +5. Test the site on different devices and browsers |
| 113 | + |
| 114 | + |
| 115 | +### Deploy on Vercel |
33 | 116 |
|
34 | 117 | 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. |
35 | 118 |
|
36 | 119 | Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details. |
| 120 | + |
| 121 | + |
| 122 | +## Contributing |
| 123 | + |
| 124 | +Feel free to open issues or submit pull requests for any improvements. |
| 125 | + |
| 126 | +## License |
| 127 | + |
| 128 | +MIT License - feel free to use this code for your own portfolio! |
0 commit comments