HTMLHint: The static code analysis tool for your HTML to improve the code review and refinement process.
What HTMLHint does
HTMLHint analyzes your HTML code based on user-customizable rules. HTMLHint works on both the command line, in the browser, as well as with extensions that integrates the syntax verification directly with text editors and IDEs.
During HackIllinois, the team brought the legacy code base back to life by refactoring legacy code and making features additions. This includes migration from ES5 to ES6 to add support for more functionalities. Additionally, the code bundler of this project was moved from Grunt to Webpack which allows us to package the codes in UMD format, enabling the community to use the tool universally in more environments, including cli, browser, IDEs, and text editors.
Meanwhile, we also submitted fixes to existing long term bugs in the code base. Furthermore, we expanded HTMLHint's feature set to improve the tool's functionality. This was accompanied with updates to the documentation as well. Lastly, we began the development of a new front end for HTMLHint to replace the legacy website.
Accomplishments that we're proud of
We were able to file many pull requests on HTMLHint as well as fix and resolve project issues that had been pending for a long time whilst also implementing functionality for new features and a website.
- #281 Deliver HTMLHint via CDN
- #316 Create version of HTMLHint for the browser only
- #313 move
Merged Pull Requests:
- #325 Migrate to Webpack & ES6 modules
- #322 feat(htmlhint): add new rule for whitespace in attributes (#310)
- #327 fix: missing test cases
- #328 fix(htmlhint): add ability to pass regexp in config
- #331 fix(htmlhint): added rule for special characters in tag name (#146)
- #332 feat(htmlhint): added attribute sorting (#309)
- #333 Attr value single quotes
Closed Pull Requests:
What we learned from our challenges
As with any project, navigating around existing code takes time and our amazing mentor provided help in understanding the foundations of the project that allowed us to independently improve the project's code and functionality.
Working on a open source was an amazing opportunity to not only grow our skillsets by contributing to HTMLHint but also allowed us to work on an amazing code analysis tool that has a large community and hence have a real world impact in aiding users with their code review, refinement and analysis process.