Skip to content

Repository files navigation

✨ Bio: Alok345's Interactive Digital Persona

Project Banner (Replace with an actual screenshot or project banner demonstrating the application)

Welcome to Bio, a cutting-edge, interactive digital portfolio crafted by Alok345. This project serves as a dynamic showcase for skills, projects, and professional identity, built with the latest frontend technologies to deliver a stunning and responsive user experience.

Leveraging the robust capabilities of Next.js 16, React 19, and a rich ecosystem of modern web development tools, Bio provides a highly customizable and performant platform for anyone looking to make a lasting impression online.


πŸš€ Features

Bio is packed with advanced features designed to create an engaging and seamless user experience:

  • ⚑ Next.js 16 App Router: Enjoy lightning-fast page loads, optimized routing, and server components for superior performance.
  • 🎨 Modern UI/UX: A sleek and intuitive design built with Tailwind CSS, Radix UI, and shadcn/ui components for a beautiful, accessible interface.
  • πŸŒ™ Dark/Light Mode: Seamless theme switching with next-themes for personalized viewing preferences.
  • ✨ Fluid Animations: Enhance user engagement with smooth and captivating animations powered by Framer Motion and tw-animate-css.
  • πŸ”₯ Firebase Integration: Robust backend for data persistence, content management, and potentially authentication.
  • πŸ€– AI Capabilities: Explore innovative functionalities powered by Google Generative AI, integrating intelligent features into your digital persona.
  • πŸ”„ State Management: Efficient and predictable state handling across the application using Zustand.
  • πŸ’‘ Real-time Notifications: User-friendly toast messages and alerts via react-hot-toast and sonner.
  • βš™οΈ Type-Safe Development: Built with TypeScript for enhanced code quality, maintainability, and developer experience.
  • πŸ‘οΈβ€πŸ—¨οΈ Intersection Observer: Lazy loading and scroll-triggered effects for performance and visual dynamism.
  • πŸ–‹οΈ Optimized Fonts: Utilizes next/font to automatically optimize and load Geist, a new font family for Vercel, ensuring crisp typography.
  • 🧩 Modular Architecture: Clean, component-based structure for easy development and scalability.

πŸ› οΈ Tech Stack

Bio is built with a powerful and modern stack, ensuring high performance, scalability, and an excellent developer experience.

Core Technologies

Next.js React TypeScript Tailwind CSS

UI & Styling

Radix UI shadcn/ui Lucide React next-themes

Animations & Interactivity

Framer Motion react-intersection-observer

Backend & AI

Firebase Google Generative AI

State Management & Utilities

Zustand UUID Simplex Noise

Development Tools

ESLint Vercel PostCSS Dotenv


πŸ“‚ Project Structure

A clean and organized directory structure for easy navigation and development:

bio/
β”œβ”€β”€ public/
β”œβ”€β”€ scripts/
β”‚   └── seedFirebase.ts
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ app/
β”‚   β”‚   β”œβ”€β”€ (auth)/
β”‚   β”‚   β”œβ”€β”€ api/
β”‚   β”‚   β”œβ”€β”€ globals.css
β”‚   β”‚   β”œβ”€β”€ layout.tsx
β”‚   β”‚   └── page.tsx
β”‚   β”œβ”€β”€ components/
β”‚   β”‚   β”œβ”€β”€ ui/ (shadcn/ui components)
β”‚   β”‚   └── ... (custom components)
β”‚   β”œβ”€β”€ lib/
β”‚   β”‚   β”œβ”€β”€ firebase.ts
β”‚   β”‚   β”œβ”€β”€ utils.ts
β”‚   β”‚   └── ...
β”‚   └── hooks/
β”‚   └── store/ (Zustand stores)
β”œβ”€β”€ .gitignore
β”œβ”€β”€ AGENTS.md
β”œβ”€β”€ CLAUDE.md
β”œβ”€β”€ README.md
β”œβ”€β”€ build_log.txt
β”œβ”€β”€ build_log2.txt
β”œβ”€β”€ components.json
β”œβ”€β”€ eslint.config.mjs
β”œβ”€β”€ next.config.ts
β”œβ”€β”€ package-lock.json
β”œβ”€β”€ package.json
β”œβ”€β”€ postcss.config.mjs
└── tsconfig.json

βš™οΈ Installation & Setup

Follow these steps to get Bio up and running on your local machine.

1. Clone the Repository

git clone https://github.com/Alok345/bio.git
cd bio

2. Install Dependencies

Using npm:

npm install

Or with Yarn, pnpm, or Bun:

yarn install
# or
pnpm install
# or
bun install

3. Environment Variables

Create a .env.local file in the root of your project and add your environment variables. This typically includes Firebase configuration and Google Generative AI keys.

Example .env.local:

# Firebase Configuration
NEXT_PUBLIC_FIREBASE_API_KEY="YOUR_FIREBASE_API_KEY"
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN="YOUR_FIREBASE_AUTH_DOMAIN"
NEXT_PUBLIC_FIREBASE_PROJECT_ID="YOUR_FIREBASE_PROJECT_ID"
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET="YOUR_FIREBASE_STORAGE_BUCKET"
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID="YOUR_FIREBASE_MESSAGING_SENDER_ID"
NEXT_PUBLIC_FIREBASE_APP_ID="YOUR_FIREBASE_APP_ID"
NEXT_PUBLIC_FIREBASE_MEASUREMENT_ID="YOUR_FIREBASE_MEASUREMENT_ID"

# Google Generative AI (Gemini)
NEXT_PUBLIC_GEMINI_API_KEY="YOUR_GEMINI_API_KEY"

# Add any other sensitive keys or configurations here

4. Seed Firebase Data (Optional)

If your project utilizes Firebase and has initial data to populate, you can use the provided seeding script:

npm run seed

(Ensure your Firebase project is properly set up and authenticated for the seeding script to work.)


πŸš€ Usage

Once installed, you can run the project in different modes.

Development Server

To start the development server:

npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev

Open http://localhost:3000 with your browser to see the result. The page will auto-update as you edit the source files. You can start editing by modifying files within the src/app directory (e.g., src/app/page.tsx).

Build for Production

To build the application for production:

npm run build

This will create an optimized production build in the .next directory.

Start Production Server

To run the built application in production mode:

npm run start

Linting

To check for linting errors and enforce code style:

npm run lint

🌐 Deploy on Vercel

The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.

Connect your GitHub repository to Vercel, and it will automatically detect the Next.js project and deploy it.

For more details on deployment, check out the Next.js deployment documentation.


🀝 Contributing

Contributions are always welcome! If you have suggestions for improvements or new features, please feel free to:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature/AmazingFeature).
  3. Commit your changes (git commit -m 'Add some AmazingFeature').
  4. Push to the branch (git push origin feature/AmazingFeature).
  5. Open a Pull Request.

πŸ“œ License

This project is open-source and licensed under the MIT License. See the LICENSE file (if present, otherwise implicitly MIT) for more details.


πŸ‘€ Author

Alok345

  • GitHub: github.com/Alok345
  • Website/Portfolio: (Add your personal website or LinkedIn if available)

This README.md was generated with assistance from an AI technical writer.

Releases

Packages

Contributors

Languages