We can't find the internet
Attempting to reconnect
Something went wrong!
Hang in there while we get back on track
developer-roadmap changelog
Hey there, tech enthusiasts! We've got some exciting updates and fixes to share with you. Check out the latest changes to our project below:
New Features 🚀
- Linux Roadmap: We've added a comprehensive Linux roadmap to help you master Linux in 2024. This includes a step-by-step guide, resources, and detailed descriptions. Plus, we've updated the SEO, tags, and related roadmaps for better search engine optimization and categorization.
- User Open Graph: Now you can generate open graph images based on your username! This feature enhances user profiles with relevant information and a snazzy open graph image.
- Image Compressor: Say hello to faster loading times! We've implemented an image compressor that optimizes image sizes across various formats for better performance.
- Activity Stream: Keep track of your activities with our new activity stream feature. It displays user activities, sorts them, and shows relevant info like resource type, title, and timestamps.
- Skill Profile Alert: We've added a new alert component to encourage you to create a skill profile. Showcase your skills and learning progress by adding your profile to your social media bio, resume, and more.
Bug Fixes 🐞
- Plagiarized Source Replacement: We've removed a plagiarized article about the history of JavaScript and replaced it with the original source from Fireship. Integrity and credibility are our top priorities!
- IF Function Content Fix: The content of the IF function in the data analyst roadmap has been updated to provide a clearer and more detailed explanation of its uses in Excel.
- Quiz Anchor Link: Fixed an issue with a quiz anchor link reference in the RelatedRoadmaps component to ensure it directs users to the correct page for all quizzes.
Improvements 🌟
- Copy Button: Added a copy button to the UpdatePublicProfileForm component. Now you can easily copy the URL of your public profile with a single click.
- Open Graph Image Override: Implemented the ability to override Open Graph images and fixed canonical URLs to ensure the correct images and URLs are displayed when sharing guides on social media.
We hope these updates make your experience even better. Happy learning and coding! 🚀
Included Commits
This commit adds a new alert component called SkillProfileAlert.tsx to the UpdateProfile folder. The alert encourages users to create a skill profile to showcase their skills and learning progress. It provides ideas on how users can use their skill profile, such as adding it to their social media bio, resume, email signature, GitHub profile, and sharing it with potential employers. The alert also prompts users to mark their expertise in the roadmaps. Additionally, the UpdatePublicProfileForm.tsx file is modified to include the SkillProfileAlert component, emphasizing the importance of creating a skill profile to showcase skills.
In summary, this commit introduces a new alert component to promote the creation of skill profiles for users to showcase their skills and learning progress. It provides suggestions on how users can utilize their skill profile and encourages them to mark their expertise in roadmaps. The modification in the UpdatePublicProfileForm file integrates the SkillProfileAlert component to emphasize the significance of creating a skill profile.
Files changed
- src/components/UpdateProfile/SkillProfileAlert.tsx
- src/components/UpdateProfile/UpdatePublicProfileForm.tsx
This commit adds a copy button functionality to the UpdatePublicProfileForm component in the UpdateProfile folder. The changes include importing the necessary components like Check and Copy, as well as updating the form to include the useCopyText hook and the copyText function. The button allows users to copy the URL of their public profile by clicking on it, and the button text changes to 'Copied!' once the URL has been successfully copied.
Additionally, the commit includes modifications to the useEffect hook, removing the updateProfileVisibility function and making a request to the backend to fill in the form with current values. The form now includes a section for the Skill Profile with options to visit the public profile URL and copy the URL using the newly added copy button. The functionality of the button changes its appearance and text based on whether the URL has been successfully copied or not.
Files changed
- src/components/UpdateProfile/UpdatePublicProfileForm.tsx
This commit adds a copy button to the UpdatePublicProfileForm component in the UpdateProfile directory. The button allows users to copy a URL and displays different text depending on whether the URL has been copied or not. The changes include modifying the text displayed on the button from 'Copy' to 'Copy URL' when the URL is not copied and to 'Copied!' when it is copied. This functionality enhances user experience by providing a clear indication of whether the URL has been successfully copied.
Overall, this commit makes a small but significant improvement to the user interface of the UpdatePublicProfileForm component by adding a copy button with appropriate text changes. The addition of this feature enhances the usability of the form and provides users with a convenient way to copy URLs.
Files changed
- src/components/UpdateProfile/UpdatePublicProfileForm.tsx
In this commit, a plagiarized article about the history of JavaScript was replaced with the original source from Fireship. The changes were made in the file "101-history-of-javascript.md" in the JavaScript roadmap section. The plagiarized source was removed and replaced with a reference to the original article and YouTube video by Fireship. The commit shows that the team takes plagiarism seriously and is committed to providing accurate and original information to users.
By making this change, the team ensures that users have access to reliable and authentic information about the history of JavaScript. The commit reflects the team's dedication to maintaining integrity and credibility in the content provided in the roadmap. This action demonstrates a commitment to transparency and ethical practices in sourcing information for educational purposes.
Files changed
- src/data/roadmaps/javascript/content/100-javascript-introduction/101-history-of-javascript.md
This commit implements the activity stream feature by adding various components and functionalities. The changes include adding an activity stream component, implementing the display of user activities, sorting activities, and showing relevant information such as resource type, title, action type, topic IDs, and timestamps. The commit also includes the addition of features like showing empty streams when there are no activities, allowing users to view topic details in a modal, and providing options to clear progress for resources.
Additionally, the commit includes changes to handle loading states and errors more effectively by introducing a modal loader component to display loading indicators and error messages. The commit aims to enhance the user experience by providing a comprehensive view of user activities and progress within the application.
Files changed
- src/components/Activity/ActivityPage.tsx
- src/components/Activity/ActivityStream.tsx
- src/components/Activity/ActivityTopicsModal.tsx
- src/components/Activity/EmptyStream.tsx
- src/components/Activity/ResourceProgress.tsx
- src/components/Activity/ResourceProgressActions.tsx
- src/components/UserProgress/ModalLoader.tsx
- src/components/UserProgress/ProgressLoadingError.tsx
- src/components/UserProgress/UserCustomProgressModal.tsx
- src/components/UserProgress/UserProgressModal.tsx
- src/components/UserPublicProfile/UserPublicProgresses.tsx
This commit adds user open graph functionality to the project. It includes changes to the API routes, specifically adding a new route to handle requests for user open graph images based on a provided username. The commit also modifies the user profile page to include the user's name and a description, as well as an ogImageUrl for the open graph image. Additionally, a proxy for open graph requests is fixed in this commit.
Overall, this commit enhances the project by allowing users to generate open graph images based on their usernames and includes updates to the user profile page to display relevant information and the generated open graph image. The changes made in this commit aim to improve the user experience and visibility of user profiles within the project.
Files changed
- src/api/api.ts
- src/pages/og/[slug].ts
- src/pages/u/[username].astro
This commit fixes the content of the IF function in the data analyst roadmap. The changes made to the file 109-if.md include modifying the title to simply "If" and updating the content to highlight the importance and various uses of the IF function in Excel for data analysts. The updated information emphasizes how data analysts can utilize the IF function to create conditional statements, clean and validate data, perform calculations based on specific conditions, generate dynamic reports, and facilitate informed decision-making through data analysis. The IF function is described as a crucial tool for data analysts to categorize data, handle missing values, calculate bonuses, highlight trends, and enhance visualizations.
Overall, this commit enhances the understanding of the IF function for data analysts, emphasizing its significance in performing various tasks such as creating custom metrics, applying conditional formatting, and automating tasks. The updated content provides a clearer and more detailed explanation of how data analysts can leverage the IF function in Excel to manipulate data effectively and extract valuable insights for decision-making within organizations.
Files changed
- src/data/roadmaps/data-analyst/content/101-excel/100-basic-functions/109-if.md
This commit adds a Linux roadmap to the project, with detailed information on learning Linux in 2024. The Linux roadmap includes a step-by-step guide, resources, and short descriptions attached to the roadmap items. The commit also modifies existing roadmaps for AWS, game development, MLOps, Rust, and technical writing by changing the isNew status from true to false, indicating that they are not new additions. Additionally, it updates the SEO information, tags, and related roadmaps for the Linux roadmap to ensure it is optimized for search engines and properly categorized within the project.
Overall, this commit focuses on expanding the project's resources by adding a comprehensive Linux roadmap while also making adjustments to existing roadmaps to reflect their current status. The changes aim to provide users with up-to-date and relevant information on various technical topics, ensuring that they have access to valuable learning resources and guides for their career development.
Files changed
- src/components/TopicDetail/TopicDetail.tsx
- src/data/roadmaps/aws/aws.md
- src/data/roadmaps/game-developer/game-developer.md
- src/data/roadmaps/linux/linux.json
- src/data/roadmaps/linux/linux.md
- src/data/roadmaps/mlops/mlops.md
- src/data/roadmaps/rust/rust.md
- src/data/roadmaps/technical-writer/technical-writer.md
This commit fixes an issue with a quiz anchor link reference in the RelatedRoadmaps component. The changes include modifying the href attribute of the anchor link from '/roadmaps' to '/questions'. This ensures that when users click on the link, they are directed to the correct page for all quizzes.
The code snippet in the RelatedRoadmaps component was updated to reflect this change, with one addition and one deletion made. This fix ensures that the anchor link now correctly points to the 'All Quizzes' section, providing a more seamless user experience when navigating through the quizzes on the platform.
Files changed
- src/components/RelatedRoadmaps.astro
This commit implements the ability to override Open Graph (og) images and fixes canonical URLs in the codebase. In the guide.ts
file, a new property ogImageUrl
is added to the GuideFrontmatter
interface. This allows for specifying a custom og image for each guide. In the developer-skills.astro
, developer-tools.astro
, languages.astro
, and [guideId].astro
files, the permalink
property is updated to use specific paths instead of a generic one. Additionally, in the [guideId].astro
file, the ogImageUrl
is now determined either by the ogImageUrl
specified in the guide data or by generating it based on the group and resource ID.
Overall, these changes enhance the customization and accuracy of og images and canonical URLs for the guides in the project. The implementation of og image override and fixing of canonical URLs ensure that the correct images and URLs are displayed when sharing these guides on social media platforms or other websites.
Files changed
- src/lib/guide.ts
- src/pages/backend/developer-skills.astro
- src/pages/backend/developer-tools.astro
- src/pages/backend/languages.astro
- src/pages/guides/[guideId].astro
This commit adds a new feature to the project, which is the implementation of an image compressor. The commit includes changes to compress images in various formats such as avif, gif, jpeg, png, etc. The script recursively goes through the public directory, identifies images, and compresses them using the specified configuration settings for each image format. It also keeps track of the compression results, including the reduction in file size and percentage reduction for each image.
The script checks for existing cache files to avoid compressing images that have already been compressed. If an image has already been compressed or if the compression does not result in a reduction in file size, the script skips that image. The commit also includes changes to update the package.json file to include a new script for compressing images and adds a new cache file to store the compressed image paths. Overall, this feature aims to optimize image sizes within the project for better performance and faster loading times.
Files changed
- .github/workflows/deployment.yml
- astro.config.mjs
- package.json
- pnpm-lock.yaml
- public/authors/dmytrobol.png
- public/authors/ebrahimbharmal007.png
- public/authors/jesse.png
- public/authors/peter-thaleikis.png
- public/best-practices/api-security.png
- public/best-practices/aws.png
- public/best-practices/backend-performance.png
- public/best-practices/frontend-performance.png
- public/guides/asymptotic-notation.png
- public/guides/avoid-render-blocking-javascript-with-async-defer.png
- public/guides/backend-languages/back-vs-front.png
- public/guides/backend-languages/backend-roadmap-part.png
- public/guides/backend-languages/javascript-interest.png
- public/guides/backend-languages/pypl-go-index.png
- public/guides/bash-vs-shell.jpeg
- public/guides/basic-authentication.png
- public/guides/basic-authentication/chrome-basic-auth.png
- public/guides/basic-authentication/safari-basic-auth.png
- public/guides/big-o-notation.png
- public/guides/character-encodings.png
- public/guides/ci-cd.png
- public/guides/dhcp.png
- public/guides/jwt-authentication.png
- public/guides/llms.png
- public/guides/project-history.png
- public/guides/proxy/forward-proxy.png
- public/guides/proxy/proxy-example.png
- public/guides/proxy/reverse-proxy.png
- public/guides/random-numbers.png
- public/guides/session-authentication.png
- public/guides/sli-slo-sla.jpeg
- public/guides/ssl-tls-https-ssh.png
- public/guides/token-authentication.png
- public/guides/torrent-client/download.png
- public/guides/torrent-client/pipelining.png
- public/guides/unfamiliar-codebase.png
- public/guides/web-vitals.png
- public/images/brand.png
- public/images/default-avatar.png
- public/images/features/in-progress.png
- public/images/icons8-wand.gif
- public/images/partners/ambassador-graphic-1.png
- public/images/partners/ambassador-graphic-2.png
- public/images/partners/apollo-workshop.png
- public/images/partners/graphql-summit.png
- public/images/partners/nginx.png
- public/images/roadmap-editor.jpeg
- public/images/system-design.png
- public/images/team-promo/contact.png
- public/images/team-promo/documentation.png
- public/images/team-promo/growth-plans.png
- public/images/team-promo/hero-img.png
- public/images/team-promo/hero.png
- public/images/team-promo/invite-members.png
- public/images/team-promo/many-roadmaps.png
- public/images/team-promo/onboarding.png
- public/images/team-promo/our-roadmaps.png
- public/images/team-promo/progress-tracking.png
- public/images/team-promo/roadmap-editor.png
- public/images/team-promo/sharing-settings.png
- public/images/team-promo/skill-gap.png
- public/images/team-promo/team-dashboard.png
- public/images/team-promo/team-insights.png
- public/images/team-promo/update-progress.png
- public/manifest/apple-touch-icon.png
- public/manifest/icon152.png
- public/manifest/icon196.png
- public/manifest/icon32.png
- public/og-images/best-practices/api-security.png
- public/og-images/best-practices/aws.png
- public/og-images/best-practices/backend-performance.png
- public/og-images/best-practices/code-review.png
- public/og-images/best-practices/frontend-performance.png
- public/og-images/guides/asymptotic-notation.png
- public/og-images/guides/avoid-render-blocking-javascript-with-async-defer.png
- public/og-images/guides/backend-developer-skills.png
- public/og-images/guides/backend-developer-tools.png
- public/og-images/guides/backend-languages.png
- public/og-images/guides/basic-authentication.png
- public/og-images/guides/basics-of-authentication.png
- public/og-images/guides/big-o-notation.png
- public/og-images/guides/character-encodings.png
- public/og-images/guides/ci-cd.png
- public/og-images/guides/consistency-patterns-in-distributed-systems.png
- public/og-images/guides/design-patterns-for-humans.png
- public/og-images/guides/dhcp-in-one-picture.png
- public/og-images/guides/dns-in-one-picture.png
- public/og-images/guides/free-resources-to-learn-llms.png
- public/og-images/guides/history-of-javascript.png
- public/og-images/guides/how-to-setup-a-jump-server.png
- public/og-images/guides/http-basic-authentication.png
- public/og-images/guides/http-caching.png
- public/og-images/guides/introduction-to-llms.png
- public/og-images/guides/journey-to-http2.png
- public/og-images/guides/jwt-authentication.png
- public/og-images/guides/levels-of-seniority.png
- public/og-images/guides/oauth.png
- public/og-images/guides/proxy-servers.png
- public/og-images/guides/random-numbers.png
- public/og-images/guides/scaling-databases.png
- public/og-images/guides/session-authentication.png
- public/og-images/guides/session-based-authentication.png
- public/og-images/guides/setup-and-auto-renew-ssl-certificates.png
- public/og-images/guides/single-command-database-setup.png
- public/og-images/guides/ssl-tls-https-ssh.png
- public/og-images/guides/sso.png
- public/og-images/guides/token-authentication.png
- public/og-images/guides/torrent-client.png
- public/og-images/guides/unfamiliar-codebase.png
- public/og-images/guides/what-are-web-vitals.png
- public/og-images/guides/what-is-internet.png
- public/og-images/guides/what-is-sli-slo-sla.png
- public/og-images/guides/why-build-it-and-they-will-come-wont-work-anymore.png
- public/og-images/roadmaps/ai-data-scientist.png
- public/og-images/roadmaps/android.png
- public/og-images/roadmaps/angular.png
- public/og-images/roadmaps/aspnet-core.png
- public/og-images/roadmaps/aws.png
- public/og-images/roadmaps/backend.png
- public/og-images/roadmaps/blockchain.png
- public/og-images/roadmaps/code-review.png
- public/og-images/roadmaps/computer-science.png
- public/og-images/roadmaps/cpp.png
- public/og-images/roadmaps/cyber-security.png
- public/og-images/roadmaps/data-analyst.png
- public/og-images/roadmaps/datastructures-and-algorithms.png
- public/og-images/roadmaps/design-system.png
- public/og-images/roadmaps/devops.png
- public/og-images/roadmaps/docker.png
- public/og-images/roadmaps/flutter.png
- public/og-images/roadmaps/frontend.png
- public/og-images/roadmaps/full-stack.png
- public/og-images/roadmaps/game-developer.png
- public/og-images/roadmaps/golang.png
- public/og-images/roadmaps/graphql.png
- public/og-images/roadmaps/java.png
- public/og-images/roadmaps/javascript.png
- public/og-images/roadmaps/kubernetes.png
- public/og-images/roadmaps/linux.png
- public/og-images/roadmaps/mlops.png
- public/og-images/roadmaps/mongodb.png
- public/og-images/roadmaps/nodejs.png
- public/og-images/roadmaps/postgresql-dba.png
- public/og-images/roadmaps/prompt-engineering.png
- public/og-images/roadmaps/python.png
- public/og-images/roadmaps/qa.png
- public/og-images/roadmaps/react-native.png
- public/og-images/roadmaps/react.png
- public/og-images/roadmaps/rust.png
- public/og-images/roadmaps/server-side-game-developer.png
- public/og-images/roadmaps/software-architect.png
- public/og-images/roadmaps/software-design-architecture.png
- public/og-images/roadmaps/spring-boot.png
- public/og-images/roadmaps/sql.png
- public/og-images/roadmaps/system-design.png
- public/og-images/roadmaps/technical-writer.png
- public/og-images/roadmaps/typescript.png
- public/og-images/roadmaps/ux-design.png
- public/og-images/roadmaps/vue.png
- public/og-images/sql-roadmap.png
- public/roadmaps/ai-data-scientist.png
- public/roadmaps/android.png
- public/roadmaps/aspnet-core.png
- public/roadmaps/aws.png
- public/roadmaps/backend.png
- public/roadmaps/blockchain.png
- public/roadmaps/computer-science.png
- public/roadmaps/cpp.png
- public/roadmaps/cyber-security.png
- public/roadmaps/data-analyst.png
- public/roadmaps/design-system.png
- public/roadmaps/devops.png
- public/roadmaps/docker.png
- public/roadmaps/flutter.png
- public/roadmaps/frontend.png
- public/roadmaps/full-stack.png
- public/roadmaps/game-developer.png
- public/roadmaps/graphql.png
- public/roadmaps/intro.png
- public/roadmaps/java.png
- public/roadmaps/javascript.png
- public/roadmaps/kubernetes.png
- public/roadmaps/linux.png
- public/roadmaps/mlops.png
- public/roadmaps/mongodb.png
- public/roadmaps/nodejs.png
- public/roadmaps/python.png
- public/roadmaps/qa.png
- public/roadmaps/react.png
- public/roadmaps/rust.png
- public/roadmaps/software-architect.png
- public/roadmaps/software-design-architecture.png
- public/roadmaps/sql.png
- public/roadmaps/technical-writer.png
- public/roadmaps/typescript.png
- public/roadmaps/ux-design.png
- public/roadmaps/vue.png
- scripts/compress-images.ts
- scripts/compressed-images.json