This project is a personal portfolio website built with Next.js, showcasing skills, projects etc.
- Responsive Design: Optimized for all screen sizes, ensuring a seamless experience across devices.
- Dynamic Project Management: Easily update project content without code changes.
- Dark Mode Support: Built-in dark mode toggle for enhanced user experience.
- Next.js: React-based framework for building performant, production-ready web applications.
- React: Component-based library for building the user interface.
- TypeScript: Static type-checking for better code quality.
- Tailwind CSS: Utility-first CSS framework for styling.
- Vercel: Platform for frictionless deployment and hosting.
-
Clone the Repository:
git clone https://github.com/ajittupe2548/ajit-tupe-portfolio cd ajit-tupe-portfolio
-
Install Dependencies:
npm install
-
(Optional) Enable User Tracking: If you want to enable user interaction tracking using Google Sheets, follow these steps:
- Create a Google Sheet and note the sheet ID. Add columns:
Section
,Label
,Action
,Date
,Time
, andIsMobile
. - In the Google Sheet, go to the Extensions tab and select Apps Script.
- Replace the Apps Script code with the snippet below.
- In the script, replace
YOUR_SHEET_ID
with the actual sheet ID and save the file. - Click Deploy > New Deployment > Select type > Web app.
- Set access to "Anyone" and click Deploy.
- Authorize the Apps Script with your Google account.
- Copy the deployment ID after authorization and add it to the
.env.local
file asSCRIPT_DEPLOYMENT_ID
. - Your tracking setup is complete.
const SHEET_NAME = 'Sheet1'; const SPREADSHEET_ID = 'YOUR_SHEET_ID'; function doPost(e) { var sheet = SpreadsheetApp.openById(SPREADSHEET_ID).getSheetByName(SHEET_NAME); const { section, label, action, date, time, isMobile } = JSON.parse( e.postData.contents ); sheet.appendRow([section, label, action, date, time, isMobile]); var output = ContentService.createTextOutput( JSON.stringify({ status: 'Success' }) ); output.setMimeType(ContentService.MimeType.JSON); return output; }
- Create a Google Sheet and note the sheet ID. Add columns:
-
Run the Development Server:
npm run dev
-
Open http://localhost:3000 in your browser to view the site.
Deploy the project effortlessly on Vercel by connecting your GitHub repository. Vercel will automatically build and deploy the main
branch.
- Modify components in
src/components/
to update the layout and design.
This project is licensed under the MIT License.