Community bonding period is a phase of 3 weeks where we get to know about the community and discuss the proposal in detail.
Things I learned?
I personally learned a lot of new things during this period, since my proposal included setting up the project from the scratch, it was a whole new challenge for me.
Learning all the best practices, deciding upon the perfect framework to use, setting up linting and formatting tools, and discussing the dependencies and devDependencies to use.
Vite - Before knowing about it, I always used webpack for bundling. Using Vite for the first time I was amazed by its speed.
Bundling greatly improves the development experience for frontend developers by dividing the program into modules, you typically organize those modules into different files and folders.
Vuetify - I decided upon Vuetify as a UI framework as it contained all the required components to replace the jQuery UI used in the simulator. It also provides some style classes which can be used as a replacement for bootstrap.
Vue Concepts -
I had very little experience working with Composition API in Vue. I did a few small projects to get familiarized with it. I had done my proposal task using Options API, but the switch to Composition API was very helpful and easy.
I learned to use ref and reactive for reactivity of states.
Also learned the use of composable functions.
Using <script setup> which provides a more concise syntax when using Single File Components(SFCs) and Composition API.
Micro Frontends - It allows different developers to build different components of the app using different technologies and frameworks.
I looked into the possibility of using micro frontends for the project but realized it would be overkill for the current project.
Having a separate frontend repository for CircuitVerse's simulators page we needed a way to communicate to the backend to fetch data.
I learned about rack cors which is a cross-scripting tool for passing data between repositories.
After this project, we will have the entire backend and several frontend parts in the main CircuitVerse repository with just the simulator as a Vue app, so my main doubt was how the Vue app being in a different repository will be loaded on clicking simulator in home page.
Invited to join the Organization
At the end of the community bonding period, I got an invitation to join the Organization which was an amazing feeling. So excited to become a part of this amazing team.
I would like to thank Samiran Konwar for providing me with a lot of useful resources and ideas.