Recspon / Sponser My Team (SMT)Connects the Recreational Sports Teams to the Local Bars and Restaurant sponsors for various sports
- Server Side Language: RoR, PostgreSQL
- OS: Linux
- Client Side Technology: JQuery, Google Maps, AngularJS
- Architecture: MVC
SMT is a project based on ROR framework v3.2.11. It benefits from all the features which make rails great for example rapid development, MVC architecture etc. In this project, Heroku has been used as mock-up of a production server. It provides opportunity to test the behavior of app and its compatibility with production environment.
It connects the Recreational Sports Teams to the Local Bars and Restaurant sponsors for various sports like Basketball, Bowling, Rugby, etc. The teams can select the neighborhood, sport and day of the week they play. The search engine returns a listing of bars, restaurants and brands offering sponsorships that meet their criteria. The teams can apply for sponsorship online. Bars receive the completed application and can confirm the team on the spot. The bar can monitor and track attendance of the team through their user dashboard.
It’s impractical in real world to scroll through a list of 10000 items on a single page. We are using Will_paginate to provide pagination of lengthy lists across pages for easy viewing. It’s used all across the app wherever any list (offers, sponsors, users, teams) has to be rendered. It also enhances performance since server does not have to render a bucket load of names in a single request. We are also using thin as a test server for the app which gives speed and allows for high scalability.
- It provides the tools to track, manage and monitor the entire team sponsorship process online and makes sponsoring teams for various sports extremely easy.
- The teams can search for sponsors based on the Neighborhood, Sport and Day of the Week they play.
Using different Gems has really helped to achieve a lot of functional and performance add-ons for the development. Gems like Capybara and rspec are used for robust testing of the app. Moreover, various gems also make the app benefit from the latest practices and technologies like HAML, SASS etc. For the authentication purpose, this project uses Devise. Devise provides a secure and easy authentication for all the users (members and sponsors). It also provided several useful modules such as recoverability of lost passwords, remembering user login across sessions etc.
Git has been useful in terms of easy version control and collaboration. Developers can easily work and experiment on separate branches without risking the latest stable branch.
Database maintenance forms a major part of project. Using Postgre SQL has helped achieving it to maximum as it forms the persistent storage system for SMT.