This summer, I worked on FOSSASIA's Open Event Project. I was mostly involved with Open Event Frontend Repository which manages frontend section of the project. I also contributed to Open Event Server which manages server section of the project. Open event enables organizers to manage events like conferences etc. and allows them to customize the event according to their needs.
Open Event has variety of excellent features that makes managing big events an easy task. It allows organizer to create sessions, invite speakers, sell tickets online (with facility to pay online for paid tickets), inviting other people as the organizer and co-organizer to allow everyone in team to manage the event from dashboard, event export, static web app generation etc.
In Open Event Frontend, I worked with Ember.js which is a framework used to develop client side applications dealing with server. I mainly worked on ticketing system of the project. I integrated online payment system via Stripe and Paypal, enabled the feature to add a discount code, access code for tickets. Apart from that I worked integrating various API endpoints which were not implemented in client application (Open Event Frontend).
- To get familiar with Ember.js and SemanticUI, I solved some existing bugs. I developed a basic app to know the basic building concepts of EmberJS.
- Started working on integration of APIs which were there on server but not implemented in the client application.
- Analyzed the needs of the ticketing module, listed steps how to make ticketing module functional and informed the status to co-developers involved with open event server.
- Solved some more existing bugs that I came across while implementing the new features.
- Started working on ticketing module. Implemented basic things such as creation of ticket, discount code, access code and various other functionalitites related to ticketing.
- Also fixed bugs in speakers and session module which were blocking ticketing module.
- After successfully implementing basic requirements for ticketing module, I started working on oredring of tickets which will enable users to buy tickets for a particular event. At beginning I implemented ordering of free tickets, which do not involve third party apps for online payments.
- Then I implemented online payment system to order paid tickets. Integrated third party apps such as PayPal and Stripe which allow payment via debit/credit card, wallets and internet banking.
- Towards end of phase I started working on promotional codes, which allows user to get a discount on some particular tickets.