initium

Hello World! This extension is meant as a starting point to extensions in VSCode.

To get started, select the language you wish to develop in and Initium would recommend a set of extensions to make your experience easier. The list of extensions will be actively maintained by the community. Please refer to the contributing guides below to recommend your favorite extensions.

Happy Coding!!!

Inspiration

In the previous semester, we took distributed systems that involved a lot of setups, and following them along was a bit difficult (especially beginners). The main reason why people choose to not take the course is because of how overwhelming the setup and debugging process can be.

Learning

We have been using VSCode for a while now but this was our first hands-on experience on learning VSCode works internally and how the extensions we have come to love and rely upon are built. Hopefully, our idea acts as a stepping stone to help other students such as ourselves, and bring down the scary walls that stop students from a non-CS background from learning how to code.

Challenges

Currently, we have selected top extensions and extensions we personally use. However, there are a lot of extensions and languages in the VSCode marketplace which might go under the radar. To solve this challenge, we are open-sourcing the project so that other developers can also contribute to the list and add/remove extensions and languages. We got the inspiration from GitHub's awesome lists.

Features

Initium provides an initial dashboard which has five categories:

  1. Essentials: This section installs three extensions by default -> GitLens, -> Code Spell Checker, -> TODO Highlight

  2. Python: This section shows recommended extensions for Python projects but doesn't install them by default. Our current recommendations are -> Python, -> Code Runner, -> Linter

  3. Javascript: This section shows recommended extensions for Javascript projects but doesn't install them by default. Our current recommendations are -> Quokka.js, -> ESLint, -> Prettier

  4. Potpourri: This section shows some miscellaneous extensions but doesn't install them by default. Our current recommendations are -> Bookmarks, -> Bracket Pair Colorizer

  5. Advanced: This section shows some advanced extensions but doesn't install them by default. Our current recommendations are -> Regex Previewer, -> REST Client

The video can be found here

Recommendation File Format:

{
    "language name": {
        "extensions": [
            {
                "displayName": "ESLint",
                "description": "Integrates ESLint JavaScript into VS Code.",
                "installID": "dbaeumer.vscode-eslint",
                "publisher": "dbaeumer"
            },
        ]
    }
}

Contribution Guide

To contribute, you can edit the recommendation.json file in the format specified above and raise a PR for the same.

Future Updates

  • Adding more language support

  • We plan on creating the HTML content dynamically by adding more keys in the recommendation file.

  • Add version support so that it is similar to how package.json works

  • Export the list of packages to make it easier for instructors to share the settings and extensions they feel would make the most sense.

  • Add packages based on the proficiency level of the user/student to help match their needs

Built With

Share this project:

Updates