# New JavaScript console in p5.js web editor

#### by [@shinytang6](https://github.com/shinytang6)

## Summary

My project for GSoC 2018 was to integrate a new console to p5.js web editor. There are two main tasks that l focused.

1. Improve the current console in p5.js web editor. The  web editor has already included a console which displays console messages as plain text. l implemented the following features to the console:

	* Folding / unfolding of console logged objects.
	* Repeated console logs are not duplicated (but displayed with a number displaying times logged).
	* Support the presentation of different data formats.
	
2. Make the console interactive. Like the browser developer tools, a user-friendly console should be interactive.

As of now, both of them are completed. The second one is still being polished. Apart from these, l also worked on 
some other things to make the editor better.

### Most notable PRs

* [#546 Fixes file saving problem ](https://github.com/processing/p5.js-web-editor/pull/546)
* [#579 Support displaying the script error caused by external library](https://github.com/processing/p5.js-web-editor/pull/579)
* [#642 Remove authorization from specific routes](https://github.com/processing/p5.js-web-editor/pull/642)
* [#656 Improve current console](https://github.com/processing/p5.js-web-editor/pull/656)
* [#667 Make console interactive](https://github.com/processing/p5.js-web-editor/pull/667)

[View all merged PRs on Github](https://github.com/processing/p5.js-web-editor/pulls?utf8=%E2%9C%93&q=is%3Apr+author%3Ashinytang6)

## Experiences

Before l heard the Google Summer of Code, it seemed really hard for me to contribute to an open source project, for not only the technical reasons, but also the uncertainty about the community's response to my minor contributions. Hence, it was somekind difficult for me to take the first step.

But fortunately, I started my open source journey in February of this year. It turned out that most of the open source community are very welcoming. So thanks to Google for hosting this event and brings me into the wonderful open source world!

## Conclusion

In short, the experience of Google Summer of Code was valuable and unforgettable for me. It helped me understand the open source culture and grow into a better programmer.

Furthermore, here l'd like to give a big shout to my mentor [@catarak](https://github.com/catarak), who was a really great mentor, guided me patiently and put up with me all the time. Big thanks to her! Really had a great summer under her mentorship :smile:

Although GSoC come to an end, l thought it was just another start. l will stay focused on the development of the Processing, especially the p5.js web editor, and keep on giving my humble contributions!

## Support

Any questions pertaining to this project may be addressed via Issues on the [p5.js-web-editor repository](https://github.com/processing/p5.js-web-editor). Simply create a new Issue and either assign or tag me in the conversation with [@shinytang6](https://github.com/shinytang6). For anything else, don't hesitate to get in touch at [shinytang6@gmail.com](mailto:shinytang6@gmail.com)!

## Acknowledgements

l would like to express my great gratitude to the Processing foundation for giving me the opportunity to work on this project and again my mentor for helping me!

Thank you so much to make it possible!