mirror of
https://github.com/kamranahmedse/developer-roadmap.git
synced 2025-08-21 00:21:35 +02:00
Update picture
This commit is contained in:
@@ -104,6 +104,11 @@ export function PersonalizedRoadmap(props: PersonalizedRoadmapProps) {
|
|||||||
onStart: () => {
|
onStart: () => {
|
||||||
setIsModalOpen(false);
|
setIsModalOpen(false);
|
||||||
},
|
},
|
||||||
|
onError: (error) => {
|
||||||
|
for (const nodeId of allPendingNodeIds) {
|
||||||
|
renderTopicProgress(nodeId, 'pending');
|
||||||
|
}
|
||||||
|
},
|
||||||
onData: (data) => {
|
onData: (data) => {
|
||||||
const { topicIds } = data;
|
const { topicIds } = data;
|
||||||
topicIds.forEach((topicId) => {
|
topicIds.forEach((topicId) => {
|
||||||
|
@@ -1,12 +1,11 @@
|
|||||||
import { Award } from 'lucide-react';
|
|
||||||
|
|
||||||
export function AuthorCredentials() {
|
export function AuthorCredentials() {
|
||||||
return (
|
return (
|
||||||
<div className="mx-auto mt-8 flex flex-col items-start gap-4 text-sm text-zinc-400 sm:flex-row sm:flex-wrap sm:items-center md:mt-12 md:justify-center md:gap-x-3 md:gap-y-2">
|
<div className="mx-auto mt-8 flex flex-col items-start gap-4 text-sm text-zinc-400 sm:flex-row sm:flex-wrap sm:items-center md:mt-12 md:justify-center md:gap-x-3 md:gap-y-2">
|
||||||
<div className="flex items-center gap-1">
|
<div className="flex items-center gap-1">
|
||||||
<img
|
<img
|
||||||
src="https://assets.roadmap.sh/guest/kamran-lqjta.jpeg"
|
src="https://github.com/kamranahmedse.png"
|
||||||
className="size-8 rounded-full object-cover mr-1.5"
|
className="mr-1.5 size-8 rounded-full object-cover"
|
||||||
alt="Kamran Ahmed"
|
alt="Kamran Ahmed"
|
||||||
/>
|
/>
|
||||||
<span>Course by</span>
|
<span>Course by</span>
|
||||||
@@ -22,7 +21,7 @@ export function AuthorCredentials() {
|
|||||||
<a
|
<a
|
||||||
href="https://github.com/kamranahmedse"
|
href="https://github.com/kamranahmedse"
|
||||||
target="_blank"
|
target="_blank"
|
||||||
className="hidden items-center gap-1 sm:inline-flex text-yellow-500 hover:text-yellow-400"
|
className="hidden items-center gap-1 text-yellow-500 hover:text-yellow-400 sm:inline-flex"
|
||||||
>
|
>
|
||||||
<svg className="size-4 fill-zinc-400" viewBox="0 0 24 24">
|
<svg className="size-4 fill-zinc-400" viewBox="0 0 24 24">
|
||||||
<path d="M12 2C6.477 2 2 6.477 2 12c0 4.42 2.865 8.17 6.839 9.49.5.092.682-.217.682-.482 0-.237-.008-.866-.013-1.7-2.782.603-3.369-1.342-3.369-1.342-.454-1.155-1.11-1.462-1.11-1.462-.908-.62.069-.608.069-.608 1.003.07 1.531 1.03 1.531 1.03.892 1.529 2.341 1.087 2.91.832.092-.647.35-1.088.636-1.338-2.22-.253-4.555-1.11-4.555-4.943 0-1.091.39-1.984 1.029-2.683-.103-.253-.446-1.27.098-2.647 0 0 .84-.269 2.75 1.022A9.607 9.607 0 0 1 12 6.82c.85.004 1.705.114 2.504.336 1.909-1.291 2.747-1.022 2.747-1.022.546 1.377.203 2.394.1 2.647.64.699 1.028 1.592 1.028 2.683 0 3.842-2.339 4.687-4.566 4.935.359.309.678.919.678 1.852 0 1.336-.012 2.415-.012 2.743 0 .267.18.578.688.48C19.138 20.167 22 16.418 22 12c0-5.523-4.477-10-10-10z" />
|
<path d="M12 2C6.477 2 2 6.477 2 12c0 4.42 2.865 8.17 6.839 9.49.5.092.682-.217.682-.482 0-.237-.008-.866-.013-1.7-2.782.603-3.369-1.342-3.369-1.342-.454-1.155-1.11-1.462-1.11-1.462-.908-.62.069-.608.069-.608 1.003.07 1.531 1.03 1.531 1.03.892 1.529 2.341 1.087 2.91.832.092-.647.35-1.088.636-1.338-2.22-.253-4.555-1.11-4.555-4.943 0-1.091.39-1.984 1.029-2.683-.103-.253-.446-1.27.098-2.647 0 0 .84-.269 2.75 1.022A9.607 9.607 0 0 1 12 6.82c.85.004 1.705.114 2.504.336 1.909-1.291 2.747-1.022 2.747-1.022.546 1.377.203 2.394.1 2.647.64.699 1.028 1.592 1.028 2.683 0 3.842-2.339 4.687-4.566 4.935.359.309.678.919.678 1.852 0 1.336-.012 2.415-.012 2.743 0 .267.18.578.688.48C19.138 20.167 22 16.418 22 12c0-5.523-4.477-10-10-10z" />
|
||||||
|
@@ -6,7 +6,7 @@ export function AuthorCredentials() {
|
|||||||
return (
|
return (
|
||||||
<div className="flex items-center gap-3 text-white lg:mt-auto">
|
<div className="flex items-center gap-3 text-white lg:mt-auto">
|
||||||
<img
|
<img
|
||||||
src="https://assets.roadmap.sh/guest/kamran-course-pf-agibf.jpg"
|
src="https://github.com/kamranahmedse.png"
|
||||||
className="aspect-[4/5] h-[110px] w-[88px] rounded-xl object-cover shadow-md"
|
className="aspect-[4/5] h-[110px] w-[88px] rounded-xl object-cover shadow-md"
|
||||||
alt="Kamran Ahmed"
|
alt="Kamran Ahmed"
|
||||||
/>
|
/>
|
||||||
|
@@ -35,7 +35,7 @@ export function MeetYourInstructor() {
|
|||||||
<div className="flex shrink-0 flex-col items-center">
|
<div className="flex shrink-0 flex-col items-center">
|
||||||
<div className="relative">
|
<div className="relative">
|
||||||
<img
|
<img
|
||||||
src="https://assets.roadmap.sh/guest/kamran-lqjta.jpeg"
|
src="https://github.com/kamranahmedse.png"
|
||||||
alt="Kamran Ahmed"
|
alt="Kamran Ahmed"
|
||||||
className="h-40 w-40 rounded-full object-cover ring-4 ring-yellow-500/40 transition-all duration-300 hover:ring-yellow-500/60"
|
className="h-40 w-40 rounded-full object-cover ring-4 ring-yellow-500/40 transition-all duration-300 hover:ring-yellow-500/60"
|
||||||
/>
|
/>
|
||||||
@@ -43,9 +43,7 @@ export function MeetYourInstructor() {
|
|||||||
<h5 className="mt-6 text-xl font-semibold text-zinc-100">
|
<h5 className="mt-6 text-xl font-semibold text-zinc-100">
|
||||||
Kamran Ahmed
|
Kamran Ahmed
|
||||||
</h5>
|
</h5>
|
||||||
<span className="text-yellow-400">
|
<span className="text-yellow-400">Founder of roadmap.sh</span>
|
||||||
Founder of roadmap.sh
|
|
||||||
</span>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="flex-1 space-y-8">
|
<div className="flex-1 space-y-8">
|
||||||
@@ -54,7 +52,10 @@ export function MeetYourInstructor() {
|
|||||||
{features.map((feature, index) => {
|
{features.map((feature, index) => {
|
||||||
const IconComponent = feature.icon;
|
const IconComponent = feature.icon;
|
||||||
return (
|
return (
|
||||||
<div key={index} className="flex items-center gap-3 rounded-lg border border-yellow-500/20 bg-gradient-to-r from-yellow-500/10 to-yellow-500/5 p-3">
|
<div
|
||||||
|
key={index}
|
||||||
|
className="flex items-center gap-3 rounded-lg border border-yellow-500/20 bg-gradient-to-r from-yellow-500/10 to-yellow-500/5 p-3"
|
||||||
|
>
|
||||||
<IconComponent className="size-4 shrink-0 text-yellow-400" />
|
<IconComponent className="size-4 shrink-0 text-yellow-400" />
|
||||||
<span className="text-sm font-medium text-zinc-300">
|
<span className="text-sm font-medium text-zinc-300">
|
||||||
{feature.text}
|
{feature.text}
|
||||||
|
@@ -80,6 +80,7 @@ const courses = roadmapData.courses || [];
|
|||||||
coursesCount={courses.length}
|
coursesCount={courses.length}
|
||||||
projectCount={projects.length}
|
projectCount={projects.length}
|
||||||
activeTab='courses'
|
activeTab='courses'
|
||||||
|
hasAIChat={true}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<div class='container'>
|
<div class='container'>
|
||||||
|
@@ -86,6 +86,7 @@ const { response: userCounts } =
|
|||||||
activeTab='projects'
|
activeTab='projects'
|
||||||
projectCount={projects.length}
|
projectCount={projects.length}
|
||||||
coursesCount={roadmapData.courses?.length || 0}
|
coursesCount={roadmapData.courses?.length || 0}
|
||||||
|
hasAIChat={true}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<div class='container'>
|
<div class='container'>
|
||||||
|
Reference in New Issue
Block a user