iOS App for RideAustin Rider
Ridesharing is valuable to all citizens, empowers drivers and riders, saves lives and is part of any transportation future. We created RideAustin to get the city moving again and to reinvest in our community.
RideAustin is a non-profit rideshare built for the Austin community. It is powered by donations, with paid and volunteer hours from both the Austin tech community and the broader Austin community working together. We believe ridesharing saves lives, empowers drivers & riders and is part of any transportation future.
Most of the features are described by the ConfigGlobal
which is the response of GET /configs/rider/global
- accessibility
- this feature describes the button to call the taxi company that can drive for people with disabilities
- cancellationFeedback
- carTypes
- commonMessages
- currentCity
- directConnectPhone
- driverTypes
- genderSelection
- generalInformation
- geocodingConfiguration
- rides
- smsMaskingEnabled
- supportedCities
- unpaidBalance
-
bundler 2.0.1
-
iOS 12.0+
-
Ruby 2.5.5
-
SSH for github access
-
Xcode 11.3.1
-
Install bundler to manage ruby gems
gem install bundler --version=2.0.1
- Install gems
bundle install
- Install pods
bundle exec pod install
- After adding environment variables, generate the app plist by running
scripts/infoplist.sh
This project is configured with Fastlane to work with CLI tools here are the environmental variables available in the fastlane that can be provided in /fastlane/.env.default
file
-
API_KEY Added as header X-Api-Key to every request
-
APP_IDENTIFIER_PROD: Add your Production App ID here for example
com.organization.appName
-
DELIVER_USERNAME: This name is shown in the messages for example
RideAustin Version 5.1.0b (708) uploaded by:[email protected]
in this message[email protected]
is through this variable. Also used in built in fastlane actions for examplematch
,pilot
-
FASTLANE_TEAM_ID: The ID of your Developer Portal team if you're in multiple teams e.g. XXXXXXYVXX
-
GOOGLE_MAP_KEY: To use the Maps SDK for iOS you must have an API key. The API key is a unique identifier that is used to authenticate requests associated with your project for usage and billing purposes. To learn more see the guide and API Key Best Practices
-
GOOGLE_MAP_DIRECTIONS_KEY: To use the Directions API, you must get an API key which you can then add to your mobile app, website, or web server. The API key is used to track API requests associated with your project for usage and billing. To learn more about API keys, see the API Key Best Practices
-
GOOGLE_SERVICE_INFO_PLIST_PRODUCTION: When using circleci, run
base64 GoogleService-Info.plist
and use the output as environment variable. Otherwise, just add the file Resources/Plists/GoogleService-Info.plist to enable firebase services. -
MATCH_GIT_FULL_NAME: git user full name to commit
-
MATCH_GIT_URL: URL to the git repo containing all the certificates
-
MATCH_GIT_USER_EMAIL: git user email to commit
-
MATCH_PASSWORD: Provide the password for the match in this variable. Here is the guideline for configuring the match guide
-
MATCH_USERNAME: Your Apple ID Username
-
TEAM_ID_QA: The ID of your App Store Connect team if you're in multiple teams. e.g
118247423
-
APPCENTER_APP_NAME: Add your app name to be uploaded on Appcenter to get App name find at
https://appcenter.ms/orgs/<APPCENTER_OWNER_NAME>/apps/<APPCENTER_APP_NAME>
-
APPCENTER_OWNER_NAME: Add owner name of the app to be uploaded on Appcenter to get App owner name find at
https://appcenter.ms/orgs/<APPCENTER_OWNER_NAME>
-
APPCENTER_API_TOKEN: Add Api token for Appcenter. Goto.
https://appcenter.ms/orgs/<organization-name>/applications?os=iOS
then in account settings, you can create token.Settings / API tokens
-
APP_IDENTIFIER_QA: Add your QA App ID here for example
com.organization.appName
-
CRASHLYTICS_API_TOKEN: Get the api token from organization settings page
-
CRASHLYTICS_BUILD_SECRET: Get the build secret from organization settings page
-
HOCKEYAPP_API_TOKEN: While using HockeyApp , with the help of API Tokens we can control the access rights for a single app or multiple apps. The common API Access token key (All Apps) can be useful for all the apps. But, in case you want to give specific access right such as only upload, or just a read only, we should create specific access token. builds to devices. Please check the guide for help.
-
HOCKEYAPP_ID_QA: Add APP ID from hockey app here get it from the main page of the app. Just select the application in the hockey app it will open the page showing the overview tab.
-
SLACK_URL: Provide webhook url for the slack to post the updates on the slack. Follow these steps to add webhook in your slack channel guide
- After running pod install if it fails with the following error
Unable to add a source with url `[email protected]:ride-austin/ios-podspecs.git` named `ride-austin`
check SSH configuration check guide SSH Help
We would love you for the contribution to RideAustin Rider, check the LICENSE file for more info.
Distributed under the MIT license. See LICENSE for more information.