Make @ealcantara a maintainer
Argument
This is my proposal to become a frontend maintainer in GitLab. I’m submitting this proposal considering that I meet the guidelines outlined in the documentation:
- In general, the further along in their career someone is, the more we expect them to be capable of becoming a maintainer.
- Maintainers should have an advanced understanding of the GitLab codebase.
Also, the body of work I’ve accumulated over my time at GitLab demonstrates my code review capabilities and my skills to deliver quality code.
Merge requests I’ve reviewed
This is a curated list of Merge Requests I regard as significant proof of my capability to fulfill a Frontend maintainer role in GitLab. For a complete list of Merge Requests I’ve picked for maintainer consideration, see my trainee maintainer issue: #5409 (closed).
-
Add reactive vulnerability status description 438 -48
- My review
- I identified data-flow improvements in the component‘s architecture.
- I identified that we could make use of an existing library to fetch user data.
- Maintainer review:
- Pointed out the reason for an ESLint error.
- Recommended a succinct way of implementing a func.
- My review
-
New cycle analytics stage and median data endpoints 616 -214
- My review
- I suggested adding test coverage for a new Vuex action as well as its related mutations.
- I suggested adding test coverage for a new request failure in the UI workflow.
- Maintainer review:
- Merged as-is
- My review
-
Fix Markdown table paste not working with GitHub code 101 -49
- My review
- I suggested not creating a Set object to verify if an object exists in an array.
- I suggested using a better approach to encapsulate private functions int eh markdown table paste module.
- Maintainer review:
- Merged as-is
- My review
-
Add success modal for pipeline tour success 253 -1
- My review
- I suggested not implementing a modal dialog using HAML + jQuery. I created a proposal to create a simpler version using gitlab-ui components.
- I identified a simpler way of initializing a Vue application.
- Maintainer review:
- Merged as-is
- My review
-
feat: Add tooltip to badge for GlAvatarsInline 130 -6
- My review
- I suggested an alternative and more efficient usage of the tooltip component.
- I suggested not accessing a component’s internal properties in unit tests.
- Maintainer review:
- Merged as-is.
- My review
-
Cluster list redesign > Add clusters boilerplate 299 -10
- My review
- I suggested using
convertObjectPropsToCamelCase
to avoid switching between naming conventions. - I suggested passing initial Vuex store state directly to the store instead of defining a action for that.
- I suggested creating test helpers to write more readable specs.
- I suggested using
- Maintainer review:
- Suggested removing an unnecessary service.
- Suggested removing repetitive calls to
mock.restore()
- My review
Recent Development Work
I led the frontend development of the MVP for the new Static Site Editor product on %12.10. These are artifacts that demonstrate how I broke down and planned the work I delivered for this milestone:
Architecture review
- I sketched the frontend architecture and submitted it for the team’s review. - I requested the review from several frontend maintainers and created follow-up issues for feedback that could significantly increase the scope of the milestone:
Delivering features iteratively
I completed my deliverables by breaking them down into smaller yet meaningful units:
Contributions to the health of GitLab’s codebase
I genuinely believe in the goal of achieving a consistent and beautiful UI by developing and adopting a UI components library and a Design System. I’ve focused my efforts on pushing forward the development of GitLab UI which has allowed me to learn a great deal about UI components and CSS.
I’ve implemented several components:
I’ve contributed to improving the accessibility of UI Components:
- Integrating a a11y addon
- Converting PX units to REM
- Integrating a viewport addon
- Implementing a responsive Typescale
I’ve also contributed to ensuring dependencies are up-to-date as much as I can and correctly used:
-
Upgrade BootstrapVue
- This project required coordinating a significant cross-team effort.
- And migrating tens of Karma specs to jest.
- Removing BootstrapVue direct install