Add server side game developer roadmap

pull/4640/head
Kamran Ahmed 1 year ago
parent 980e243124
commit 3deee4dfc3
  1. 28
      src/components/FrameRenderer/renderer.ts
  2. 7908
      src/data/roadmaps/game-developer/game-developer.json
  3. 5
      src/data/roadmaps/server-side-game-developer/faqs.astro
  4. 7452
      src/data/roadmaps/server-side-game-developer/server-side-game-developer.json
  5. 50
      src/data/roadmaps/server-side-game-developer/server-side-game-developer.md
  6. 3
      src/lib/roadmap.ts
  7. 34
      src/pages/index.astro

@ -7,10 +7,13 @@ import {
renderTopicProgress,
updateResourceProgress,
} from '../../lib/resource-progress';
import type { ResourceProgressType, ResourceType } from '../../lib/resource-progress';
import type {
ResourceProgressType,
ResourceType,
} from '../../lib/resource-progress';
import { pageProgressMessage } from '../../stores/page';
import { showLoginPopup } from '../../lib/popup';
import {replaceChildren} from "../../lib/dom.ts";
import { replaceChildren } from '../../lib/dom.ts';
export class Renderer {
resourceId: string;
@ -95,7 +98,7 @@ export class Renderer {
.then(() => {
return renderResourceProgress(
this.resourceType as ResourceType,
this.resourceId
this.resourceId,
);
})
.catch((error) => {
@ -143,7 +146,7 @@ export class Renderer {
this.jsonToSvg(
this.resourceType === 'roadmap'
? `/${this.resourceId}.json`
: `/best-practices/${this.resourceId}.json`
: `/best-practices/${this.resourceId}.json`,
);
}
}
@ -183,7 +186,7 @@ export class Renderer {
resourceType: this.resourceType as ResourceType,
topicId,
},
newStatus
newStatus,
)
.then(() => {
renderTopicProgress(topicId, newStatus);
@ -217,7 +220,7 @@ export class Renderer {
const normalizedGroupId = groupId.replace(/^\d+-/, '');
this.updateTopicStatus(
normalizedGroupId,
!isCurrentStatusDone ? 'done' : 'pending'
!isCurrentStatusDone ? 'done' : 'pending',
);
}
@ -243,9 +246,12 @@ export class Renderer {
action: `${this.resourceType} / ${this.resourceId}`,
label: externalLink,
});
window.open(`https://${externalLink}`);
} else {
window.location.href = `https://${externalLink}`;
}
window.open(`https://${externalLink}`);
return;
}
@ -265,7 +271,7 @@ export class Renderer {
resourceType: this.resourceType,
resourceId: this.resourceId,
},
})
}),
);
return;
}
@ -280,7 +286,7 @@ export class Renderer {
e.preventDefault();
this.updateTopicStatus(
normalizedGroupId,
!isCurrentStatusLearning ? 'learning' : 'pending'
!isCurrentStatusLearning ? 'learning' : 'pending',
);
return;
}
@ -289,7 +295,7 @@ export class Renderer {
e.preventDefault();
this.updateTopicStatus(
normalizedGroupId,
!isCurrentStatusSkipped ? 'skipped' : 'pending'
!isCurrentStatusSkipped ? 'skipped' : 'pending',
);
return;
@ -302,7 +308,7 @@ export class Renderer {
resourceId: this.resourceId,
resourceType: this.resourceType,
},
})
}),
);
}

File diff suppressed because it is too large Load Diff

@ -0,0 +1,5 @@
---
import type { FAQType } from '../../components/FAQs/FAQs.astro';
export const faqs: FAQType[] = [];
---

@ -0,0 +1,50 @@
---
pdfUrl: '/pdfs/roadmaps/server-side-game-developer.pdf'
order: 17
briefTitle: 'Server Side Game Developer'
briefDescription: 'Roadmap to becoming a Server Side Game Developer in 2023'
title: 'Server Side Game Developer'
description: 'Roadmap to becoming a Server Side Game Developer in 2023'
hasTopics: true
isNew: true
isHidden: true
schema:
headline: 'Server Side Game Developer Roadmap'
description: 'Learn what Server Side Game Development is, what server side game developers do and how to become one using our community-driven roadmap.'
imageUrl: 'https://roadmap.sh/roadmaps/server-side-game-developer.png'
datePublished: '2023-10-26'
dateModified: '2023-10-26'
seo:
title: 'Server Side Game Developer Roadmap'
description: 'Learn what Server Side Game Development is, what server side game developers do and how to become one using our community-driven roadmap.'
keywords:
- 'server side game developer roadmap 2023'
- 'server side game developer roadmap 2023'
- 'guide to becoming a server side game developer'
- 'guide to becoming a server side game developer'
- 'server side game developer roadmap'
- 'server side game developer'
- 'server side game engineer'
- 'server side game skills'
- 'server side game development'
- 'server side game development skills'
- 'server side game development skills test'
- 'server side game engineer roadmap'
- 'server side game developer roadmap'
- 'become a server side game developer'
- 'server side game developer career path'
- 'skills for game development'
- 'learn server side game development'
- 'what is server side game development'
- 'server side game developer quiz'
- 'server side game developer interview questions'
relatedRoadmaps:
- 'backend'
sitemap:
priority: 1
changefreq: 'monthly'
tags:
- 'roadmap'
- 'main-sitemap'
- 'role-roadmap'
---

@ -8,7 +8,8 @@ export interface RoadmapFrontmatter {
title: string;
description: string;
hasTopics: boolean;
isForkable: boolean;
isForkable?: boolean;
isHidden: boolean;
isNew: boolean;
isUpcoming: boolean;
tnsBannerLink?: string;

@ -29,26 +29,30 @@ const videos = await getAllVideos();
<FeaturedItems
heading='Role based Roadmaps'
featuredItems={roleRoadmaps.map((roadmapItem) => ({
text: roadmapItem.frontmatter.briefTitle,
url: `/${roadmapItem.id}`,
isNew: roadmapItem.frontmatter.isNew,
isUpcoming: roadmapItem.frontmatter.isUpcoming,
}))}
featuredItems={roleRoadmaps
.filter((roadmapItem) => !roadmapItem.frontmatter.isHidden)
.map((roadmapItem) => ({
text: roadmapItem.frontmatter.briefTitle,
url: `/${roadmapItem.id}`,
isNew: roadmapItem.frontmatter.isNew,
isUpcoming: roadmapItem.frontmatter.isUpcoming,
}))}
showCreateRoadmap={true}
/>
<FeaturedItems
heading='Skill based Roadmaps'
featuredItems={skillRoadmaps.map((roadmapItem) => ({
text:
roadmapItem.frontmatter.briefTitle === 'Go'
? 'Go Roadmap'
: roadmapItem.frontmatter.briefTitle,
url: `/${roadmapItem.id}`,
isNew: roadmapItem.frontmatter.isNew,
isUpcoming: roadmapItem.frontmatter.isUpcoming,
}))}
featuredItems={skillRoadmaps
.filter((roadmapItem) => !roadmapItem.frontmatter.isHidden)
.map((roadmapItem) => ({
text:
roadmapItem.frontmatter.briefTitle === 'Go'
? 'Go Roadmap'
: roadmapItem.frontmatter.briefTitle,
url: `/${roadmapItem.id}`,
isNew: roadmapItem.frontmatter.isNew,
isUpcoming: roadmapItem.frontmatter.isUpcoming,
}))}
showCreateRoadmap={true}
/>

Loading…
Cancel
Save