Pollo is one of the latest apps by Cornell AppDev, a project team at Cornell University. Pollo seeks to extend the functionality of iClickers on a web and mobile platform.
We use CocoaPods for our dependency manager. This should be installed before continuing.
Clone the project with git clone https://github.com/cuappdev/pollo-ios.git
After cloning the project, cd
into the new directory and install dependencies with pod install
.
Open the Pollo Xcode workspace, Pollo.xcworkspace
, and enjoy!
You need a valid env-vars.sh
file with the following structure:
export API_URL=example-url.com
export API_DEV_URL=example-dev-url.com
export FABRIC_API_KEY=someapikey
export FABRIC_BUILD_SECRET=somefabricbuildsecret
IGListKit is a UICollectionView
framework built by Instagram that we use throughout the app. It forces us to create models for items we display in a UICollectionView
.
- PollsViewController: Used to display created and joined groups and allow user to create or join a group.
- CardController: Used to display all polls on a single date for a group.
- PollsDateViewController: Used to display all dates for a group.
- DeletePollViewController: Used to delete a poll from a group.
- EditNameViewController: Used to edit the name of a group.
- EditPollViewController: Used to edit a poll.
- FeedbackViewController: Used to prompt user for feedback on the app.
- PollBuilderViewController: Used to create and start polls and create drafts.
- EditDraftViewController: Used to edit a draft.
- SettingsViewController: Used to display settings (website, log out, etc.).
- GroupControlsViewController: Used to allow the admin of a group to configure settings for a group.
- AttendanceViewController: Used to allow the admin of a group to view and export group attendance.
- Alamofire: Used for HTTP networking.
- Google Sign In: Used to seamlessly sign in users.
- Socket.io: Used to manage sockets.
- SnapKit: Used for some AutoLayout magic.
- SwiftyJSON: Used for improved JSON parsing.
- SwiftLint: Used to enforce Swift style and conventions.
- Sourcery: Used to generate code.
- Presentr: Used for custom view controller presentation.
- FutureNova: Used for networking.
- AppDevAnalytics: Used for event logging.
- IGListKit: Used for collection views.
Check out Issues to see what we are working on!