{"id":19694001,"url":"https://github.com/nerkoux/dynamicportfolio","last_synced_at":"2026-01-19T03:01:47.496Z","repository":{"id":250294632,"uuid":"834050876","full_name":"nerkoux/DynamicPortfolio","owner":"nerkoux","description":"Dynamic Portfolio is a powerful, customizable platform that allows developers to create stunning portfolios with ease. Showcase your projects, skills, and experience in a beautiful, responsive design.","archived":false,"fork":false,"pushed_at":"2024-08-06T19:48:14.000Z","size":81,"stargazers_count":0,"open_issues_count":0,"forks_count":3,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-25T18:42:24.873Z","etag":null,"topics":["cloudflare-r2","dynamicportfolio","express","r2","reactjs","vue"],"latest_commit_sha":null,"homepage":"https://dynamicportfolio.akshatmehta.com","language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nerkoux.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-26T10:02:00.000Z","updated_at":"2024-08-06T19:48:17.000Z","dependencies_parsed_at":"2024-07-26T11:28:58.796Z","dependency_job_id":"3071cac6-786e-4df9-a499-558f1199de2f","html_url":"https://github.com/nerkoux/DynamicPortfolio","commit_stats":null,"previous_names":["nerkoux/dynamicportfolio"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/nerkoux/DynamicPortfolio","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nerkoux%2FDynamicPortfolio","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nerkoux%2FDynamicPortfolio/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nerkoux%2FDynamicPortfolio/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nerkoux%2FDynamicPortfolio/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nerkoux","download_url":"https://codeload.github.com/nerkoux/DynamicPortfolio/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nerkoux%2FDynamicPortfolio/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28559350,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-19T00:46:33.223Z","status":"online","status_checked_at":"2026-01-19T02:00:08.049Z","response_time":67,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cloudflare-r2","dynamicportfolio","express","r2","reactjs","vue"],"created_at":"2024-11-11T19:19:24.240Z","updated_at":"2026-01-19T03:01:47.481Z","avatar_url":"https://github.com/nerkoux.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Dynamic Portfolio 🚀\n\n![Dynamic Portfolio Banner](https://cdn.project.akshatmehta.com/dypo.png)\n\n## 🌟 Overview\n\nDynamic Portfolio is a powerful, customizable platform that allows developers to create stunning portfolios with ease. Showcase your projects, skills, and experience in a beautiful, responsive design.\n\n## ✨ Features\n\n- 🖼️ Custom profile image upload\n- 📊 Dynamic project showcase\n- 🛠️ Skill highlighting\n- 📚 Education and experience sections\n- 🔗 Social media and professional links integration\n- 🎨 Customizable design elements\n\n## 🚀 Getting Started\n\n### Prerequisites\n\n- Node.js (v20 or later)\n- npm or yarn\n- Cloudflare account (for R2 storage)\n\n### Installation\n\n1. Clone the repository: https://github.com/nerkoux/DynamicPortfolio.git\n2. cd dynamic-portfolio\n3. Install dependencies\n4. Set up environment variables: Create a `.env` file in the root directory and add the following as same as `.env.example`\n\n### Configuration\n\n#### API URL\nIn `client/components/RegistrationForm.jsx` and `client/components/Portfolio.jsx`, replace the API URL with your deployed API endpoint:\n\n```javascript\nconst API_URL = 'https://your-api-url.com/api';\n```\n\n### Cloudflare R2 Configuration\nIn `server/routes/api.js`, update the S3 client configuration:\n```javascript\nconst s3Client = new S3Client({\n  region: 'auto',\n  endpoint: `https://${process.env.R2_ACCOUNT_ID}.r2.cloudflarestorage.com`,\n  credentials: {\n    accessKeyId: process.env.R2_ACCESS_KEY_ID,\n    secretAccessKey: process.env.R2_SECRET_ACCESS_KEY,\n  },\n});\n```\n\n## 🤝 Contributing\n\n### Contributions are welcome! Please feel free to submit a Pull Request.\n\n\n## 📄 License\n### This project is licensed under the MIT License - see the LICENSE file for details.\n\n\n## 🙏 Acknowledgements\n\n- React\n- Express\n- Cloudflare R2\n- Vercel\n\n## Credits\nCreated with ❤️ by Akshat Mehta\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnerkoux%2Fdynamicportfolio","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnerkoux%2Fdynamicportfolio","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnerkoux%2Fdynamicportfolio/lists"}