diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index c2de8d2f1..770e95f33 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -27,7 +27,7 @@ jobs: run: | npm run build touch ./dist/.nojekyll - echo 'astro.roadmap.sh' > ./dist/CNAME + echo 'roadmap.sh' > ./dist/CNAME - name: Deploy to GH Pages run: | git config user.email "kamranahmed.se@gmail.com" diff --git a/.github/workflows/sync-content.sh b/.github/workflows/sync-content.sh deleted file mode 100644 index ad043e36d..000000000 --- a/.github/workflows/sync-content.sh +++ /dev/null @@ -1,38 +0,0 @@ -name: Sync v1 Content - -on: - workflow_dispatch: # allow manual run - schedule: - - cron: '0 0 * * *' # daily at midnight - -jobs: - sync-v1-content: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - - uses: actions/setup-node@v3 - with: - node-version: 18 - - uses: pnpm/action-setup@v2.2.2 - with: - version: 7.13.4 - - name: Install dependencies - run: | - pnpm install - cd bin && git clone --depth 1 -b master https://${{ secrets.GH_TOKEN }}@github.com/kamranahmedse/developer-roadmap.git - npm run sync-content - - name: Create PR - uses: peter-evans/create-pull-request@v4 - with: - delete-branch: false - branch: "sync-content" - base: "master" - labels: | - sync-content - automated pr - reviewers: kamranahmedse - commit-message: "chore: sync changes from v1 to v2" - title: "Sync content changes from v1 to v2" - body: | - Synchronizes content changes from v1 to v2 - Please review the changes and merge if everything looks good. diff --git a/README.md b/README.md index 6abf78c16..6e4d40c37 100644 --- a/README.md +++ b/README.md @@ -1,24 +1,96 @@ +

+ +

roadmap.sh

+

Community driven roadmaps, articles and resources for developers

+

+ + roadmaps + + + videos + + + videos + + + roadmaps + +

+

+ +
+ ![](https://i.imgur.com/waxVImv.png) -

You are probably looking for Developer Roadmap

+Roadmaps are now interactive, you can click the nodes to read more about the topics. + +### [View all Roadmaps](https://roadmap.sh) + +![](https://i.imgur.com/waxVImv.png) + +Here is the list of available roadmaps with more being actively worked upon. + +- [Frontend Roadmap](https://roadmap.sh/frontend) +- [Backend Roadmap](https://roadmap.sh/backend) +- [DevOps Roadmap](https://roadmap.sh/devops) +- [Computer Science Roadmap](https://roadmap.sh/computer-science) +- [QA Roadmap](https://roadmap.sh/qa) +- [Software Architect Roadmap](https://roadmap.sh/software-architect) +- [Software Design and Architecture Roadmap](https://roadmap.sh/software-design-architecture) +- [JavaScript Roadmap](https://roadmap.sh/javascript) +- [React Roadmap](https://roadmap.sh/react) +- [Vue Roadmap](https://roadmap.sh/vue) +- [Angular Roadmap](https://roadmap.sh/angular) +- [Node.js Roadmap](https://roadmap.sh/nodejs) +- [GraphQL Roadmap](https://roadmap.sh/graphql) +- [Android Roadmap](https://roadmap.sh/android) +- [Flutter Roadmap](https://roadmap.sh/flutter) +- [Python Roadmap](https://roadmap.sh/python) +- [Go Roadmap](https://roadmap.sh/golang) +- [Java Roadmap](https://roadmap.sh/java) +- [Design System Roadmap](https://roadmap.sh/design-system) +- [DBA Roadmap](https://roadmap.sh/postgresql-dba) +- [Blockchain Roadmap](https://roadmap.sh/blockchain) +- [ASP.NET Core Roadmap](https://roadmap.sh/aspnet-core) ![](https://i.imgur.com/waxVImv.png) -# next.roadmap.sh -WIP version of roadmap.sh built with [Astro](https://astro.build) and Tailwind. +## Share with the community + +Please consider sharing a post about [roadmap.sh](https://roadmap.sh) and the value it provides. It really does help! + +[![GitHub Repo stars](https://img.shields.io/badge/share%20on-reddit-red?logo=reddit)](https://reddit.com/submit?url=https://roadmap.sh&title=Interactive%20roadmaps,%20guides%20and%20other%20educational%20content%20for%20Developers) +[![GitHub Repo stars](https://img.shields.io/badge/share%20on-hacker%20news-orange?logo=ycombinator)](https://news.ycombinator.com/submitlink?u=https://roadmap.sh) +[![GitHub Repo stars](https://img.shields.io/badge/share%20on-twitter-03A9F4?logo=twitter)](https://twitter.com/share?url=https://roadmap.sh&text=Interactive%20roadmaps,%20guides%20and%20other%20educational%20content%20for%20Developers) +[![GitHub Repo stars](https://img.shields.io/badge/share%20on-facebook-1976D2?logo=facebook)](https://www.facebook.com/sharer/sharer.php?u=https://roadmap.sh) +[![GitHub Repo stars](https://img.shields.io/badge/share%20on-linkedin-3949AB?logo=linkedin)](https://www.linkedin.com/shareArticle?url=https://roadmap.sh&title=Interactive%20roadmaps,%20guides%20and%20other%20educational%20content%20for%20Developers) ## Development -Clone the repo and install dependencies: +Clone the repository, install the dependencies and start the application ```bash -git clone git@github.com:kamranahmedse/roadmap.sh.git -pnpm install +git clone git@github.com:kamranahmedse/developer-roadmap.git +npm install +npm run dev ``` -Run the project +## Contribution -```shell -pnpm run dev -``` +> Have a look at [contribution docs](./contributing.md) for how to update any of the roadmaps + +- Add content to roadmaps +- Add new roadmaps +- Suggest changes to existing roadmaps +- Discuss ideas in issues +- Spread the word + +## Thanks to all contributors ❤ + + + + + +## License +Have a look at the [license file](./license) for details diff --git a/code_of_conduct.md b/code_of_conduct.md new file mode 100644 index 000000000..51b44888f --- /dev/null +++ b/code_of_conduct.md @@ -0,0 +1,76 @@ +# Code of Conduct + +## Our Pledge + +In the interest of fostering an open and welcoming environment, we as +contributors and maintainers pledge to make participation in our project and +our community a harassment-free experience for everyone, regardless of age, body +size, disability, ethnicity, sex characteristics, gender identity and expression, +level of experience, education, socio-economic status, nationality, personal +appearance, race, religion, or sexual identity and orientation. + +## Our Standards + +Examples of behavior that contributes to creating a positive environment +include: + +* Using welcoming and inclusive language +* Being respectful of differing viewpoints and experiences +* Gracefully accepting constructive criticism +* Focusing on what is best for the community +* Showing empathy towards other community members + +Examples of unacceptable behavior by participants include: + +* The use of sexualized language or imagery and unwelcome sexual attention or + advances +* Trolling, insulting/derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or electronic + address, without explicit permission +* Other conduct which could reasonably be considered inappropriate in a + professional setting + +## Our Responsibilities + +Project maintainers are responsible for clarifying the standards of acceptable +behavior and are expected to take appropriate and fair corrective action in +response to any instances of unacceptable behavior. + +Project maintainers have the right and responsibility to remove, edit, or +reject comments, commits, code, wiki edits, issues, and other contributions +that are not aligned to this Code of Conduct, or to ban temporarily or +permanently any contributor for other behaviors that they deem inappropriate, +threatening, offensive, or harmful. + +## Scope + +This Code of Conduct applies within all project spaces, and it also applies when +an individual is representing the project or its community in public spaces. +Examples of representing a project or community include using an official +project e-mail address, posting via an official social media account, or acting +as an appointed representative at an online or offline event. Representation of +a project may be further defined and clarified by project maintainers. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported by contacting the project team at . All +complaints will be reviewed and investigated and will result in a response that +is deemed necessary and appropriate to the circumstances. The project team is +obligated to maintain confidentiality with regard to the reporter of an incident. +Further details of specific enforcement policies may be posted separately. + +Project maintainers who do not follow or enforce the Code of Conduct in good +faith may face temporary or permanent repercussions as determined by other +members of the project's leadership. + +## Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, +available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html + +[homepage]: https://www.contributor-covenant.org + +For answers to common questions about this code of conduct, see +https://www.contributor-covenant.org/faq diff --git a/contributing.md b/contributing.md new file mode 100644 index 000000000..1af3d1129 --- /dev/null +++ b/contributing.md @@ -0,0 +1,40 @@ +# Contribution + +First of all thank you for considering to contribute. Please look at the details below: + +- [Contribution](#contribution) +- [New Roadmaps](#new-roadmaps) +- [Existing Roadmaps](#existing-roadmaps) +- [Adding Content](#adding-content) +- [Guidelines](#guidelines) + +## New Roadmaps + +For new roadmaps, submit a roadmap by providing [a textual roadmap similar to this roadmap](https://gist.github.com/kamranahmedse/98758d2c73799b3a6ce17385e4c548a5) in an issue. + +## Existing Roadmaps + +For the existing roadmaps, please follow the details listed for the nature of contribution: + +- **Fixing Typos** — Make your changes in the [roadmap JSON file](https://github.com/kamranahmedse/developer-roadmap/tree/master/public/jsons) +- **Adding or Removing Nodes** — Please open an issue with your suggestion. + +**Note:** Please note that our goal is not to have the biggest list of items. Our goal is to list items or skills most relevant today. + +## Adding Content + +Find [the content directory inside the relevant roadmap](https://github.com/kamranahmedse/roadmap-astro/tree/master/src/roadmaps). Please keep the following guidelines in mind when submitting content: + +- Content must be in English. +- Put a brief description about the topic on top of the file and the a list of links below with each link having title of the URL. + +## Guidelines + +-

Adding everything available out there is not the goal!
+ The roadmaps represent the skillset most valuable today, i.e., if you were to enter any of the listed fields today, what would you learn?! There might be things that are of-course being used today but prioritize the things that are most in demand today, e.g., agreed that lots of people are using angular.js today but you wouldn't want to learn that instead of React, Angular, or Vue. Use your critical thinking to filter out non-essential stuff. Give honest arguments for why the resource should be included.

+-

Do not add things you have not evaluated personally!
+ Use your critical thinking to filter out non-essential stuff. Give honest arguments for why the resource should be included. Have you read this book? Can you give a short article?

+-

Create a Single PR for Content Additions

+ If you are planning to contribute by adding content to the roadmaps, I recommend you to clone the repository, add content to the [content directory of the roadmap](./content/roadmaps/) and create a single PR to make it easier for me to review and merge the PR. +- Write meaningful commit messages +- Look at the existing issues/pull requests before opening new ones diff --git a/license b/license new file mode 100644 index 000000000..0cdd8ff0f --- /dev/null +++ b/license @@ -0,0 +1,19 @@ +Everything including text and images in this project are protected by the copyright laws. +You are allowed to use this material for personal use but are not allowed to use it for +any other purpose including publishing the images, the project files or the content in the +images in any form either digital, non-digital, textual, graphical or written formats. +You are allowed to share the links to the repository or the website roadmap.sh but not +the content for any sort of usage that involves the content of this repository taken out +of the repository and be shared from any other medium including but not limited to blog +posts, articles, newsletters, you must get prior consent from the understated. These +conditions do not apply to the readonly GitHub forks created using the Fork button on +GitHub with the whole purpose of contributing to the project. + +Copyright © 2023 Kamran Ahmed + +Please note that I am really flexible with allowing the usage of the content in this +repository. If you reach out to me with a brief detail of why and how you would like +to use this content, there is a good chance that I will allow you to use it. The reason +behind this strictness in the license is to stop the people who have been using these +roadmaps in ill manners e.g. ripping people off with suggesting random affiliate links, +redistributing these roadmaps just for the sake of monetizing the traffic. diff --git a/src/layouts/BaseLayout.astro b/src/layouts/BaseLayout.astro index fba5bc8b3..89dde92ec 100644 --- a/src/layouts/BaseLayout.astro +++ b/src/layouts/BaseLayout.astro @@ -36,9 +36,7 @@ const { - - - + {noIndex && }