Loading repository data…
Loading repository data…
ramxcodes / repository
A modern, responsive portfolio website built with Next.js 15, TypeScript, Tailwind CSS, and Shadcn UI. Features a blog system, project showcase, work experience timeline, and contact form with Telegram integration.
A modern, responsive portfolio website built with Next.js 15, TypeScript, Tailwind CSS, and Shadcn UI. Features a blog system, project showcase, work experience timeline, and contact form with Telegram integration.
Click here to your portfolio template now:
Before you begin, ensure you have the following installed:
Create a .env file in the root directory with the following variables:
TELEGRAM_BOT_TOKEN="your-token"
TELEGRAM_CHAT_ID="your-chat-id"
GEMINI_API_KEY="your-api-key"
NODE_ENV="development"
NEXT_PUBLIC_URL="http://localhost:3000"
NEXT_PUBLIC_UMAMI_SRC="your-umami-script-url"
NEXT_PUBLIC_UMAMI_ID="your-umami-website-id"
Create a new bot with @BotFather on Telegram
Copy the bot token and add it to your .env file as TELEGRAM_BOT_TOKEN
Start a chat with your bot and send any message (e.g., "hello")
Get your chat ID:
# Run the test script to get your chat ID
bun run test-telegram
.env file as TELEGRAM_CHAT_IDVisit Umami:
Get your credentials:
/script.js)Configure environment variables:
NEXT_PUBLIC_UMAMI_SRC="https://[your-umami-instance]/script.js"
NEXT_PUBLIC_UMAMI_ID="your-website-id"
Clone the repository:
git clone https://github.com/ramxcodes/sleek-portfolio.git
cd sleek-portfolio
Install dependencies:
# Using bun (recommended)
bun install
# Using npm
npm install
Run the development server:
# Using bun
bun dev
# Using npm
npm run dev
Open http://localhost:3000 in your browser
The project uses configuration files in the src/config directory for easy customization:
About.tsx - About section contentContact.tsx - Contact form settingsExperience.tsx - Work experience detailsFooter.tsx - Footer links and contentGears.tsx - Setup/gear sectionHero.tsx - Hero section contentMeta.tsx - SEO and metadataNavbar.tsx - Navigation linksProjects.tsx - Project showcase settingsQuote.ts - Random quotes configurationResume.ts - Resume section detailsSetup.tsx - Development setup informationcat.ts - Enable disable the catsrc/components/technologies/Example:
export const NewTechIcon = () => {
return <svg>// SVG content from devicon</svg>;
};
src/data/blog/public/blog/src/data/projects/public/project/This project is licensed under the MIT License - see the LICENSE file for details.