Skip to content

Instantly share code, notes, and snippets.

@ParthS007
Last active October 9, 2018 21:34
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ParthS007/a3f24294cf489b565a9bded339827761 to your computer and use it in GitHub Desktop.
Save ParthS007/a3f24294cf489b565a9bded339827761 to your computer and use it in GitHub Desktop.
Google Summer of Code 2018 Work Product | Parth Shandilya | Badgeyay | FOSSASIA

GSoC 2018

Parth Shandilya | FOSSASIA | ParthS007

Overview:

This summer, I worked on FOSSASIA's Badgeyay project. The Badgeyay project enables event organizers for generating badges of events from concerts to conferences and meetups. Badgeyay is a Badge generator with a web UI to add data and generate printable badges in a PDF.

The main goal of this year's GSoC was to develop Badgeyay into a complete Service with services ranging from simple to complex functionalities which include :

  • Modularizing the API and follow the best standards.
  • Improving the Rest API and Resolving the known bugs.
  • Improving current UI of Badgeyay and changing it along with GSoC Period by Using Ember JS and Semantic UI.
  • Improving the Badge Layout and provide more features to the user.
  • Implementing User Authentication and Integrating database management system into Badgeyay.
  • Implementing a Badge Management System.
  • Implementing Admin Panel.

The whole frontend is shifted to Flask template to MVC frontend framework Ember JS. Everything in frontend is divided into components and chaining of actions and models have been implemented. Semantic UI is used for styling purposes.

The whole API is redesigned to follow JSON API specification using marshmallow to make it compatible with data coming from Frontend. Firebase is also used to support admin and authentication functionalities from the backend flask server.

Major Areas Of My Contributions:

Community Bonding:

  • Fix any existing bugs in the project and release a stable version for the same.
  • Added Proper Instructions and links for Local deployment of Frontend and Backend.
  • Refactoring to make the project ready to switch to work with backend and frontend folders seperately.

Phase 1:

  • I started working on adding components in Frontend to make the code more modularised and to improve maintainability of the code.
  • I worked on setting up Google, Facebook and Twitter authentication for user signup with the help of Firebase SDK.
  • I worked on making changes to the API to make it modular and added common error responses.
  • I worked on deployment of newly modularised API on Heroku.

Phase 2:

  • Continued work on adding components and validations in Frontend.
  • I worked on adding wrapper for showing event notifications in Frontend.
  • Implemented various badge enhancement features.
  • Implemented User Dashboard.
  • Worked on UI improvements in Admin Dashboard.

Phase 3:

  • Continued work on creation of various API endpoints.
  • Continued work on adding and improving components in Frontend.
  • Bug fixes of work done in phase 2 and phase 3 in order to produce a stable end product.
  • Performed multiple refactors to ensure better code quality for easy maintenance of the project in the future.

Code Contributions:

Screenshots:


Index Page

Signup Form

Login Form

Create Badges

Image Cropper

Badge Text Customization

User Badges

User Panel

Admin Index

Admin User Panel

Admin User Edit

Admin Messages Panel

Other:

Thank you FOSSASIA for providing a platform to learn, work and grow together.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment