Critical Mass has been described as 'monthly political-protest rides', and characterized as being part of a social movement.
http://en.wikipedia.org/wiki/Critical_Mass_(cycling)
This iOS app is made for Critical Maps. It tracks your location and shares it with all other participants of the Critical Mass bicycle protest. You can use the chat to communicate with all other participants.
The App uses Apple's Combine.framework
for operation scheduling. The UI-Layer is built with The Composable Architecture
and SwiftUI
.
Minimum platform requirements are: iOS 15.0
The application is built in a hyper-modularized style. This allows to work on features without building the entire application, which improves compile times and SwiftUI preview stability. Every feature is its own target which makes it also possible to build mini-apps to run in the simulator for preview.
This repo contains both the client for running the entire Critical Maps application, as well as an extensive test suite. To get things running:
git clone https://github.com/criticalmaps/criticalmaps-ios
cd criticalmaps-ios
CriticalMaps.xcodeproj
.Critical Maps
target in Xcode and run (⌘R
).Optional
Install fastlane
with
make dependencies
The project is using type-safe assets generated with SwiftGen.
If you add images to the project be sure to install it and run make assets
from the root folder and add the changes to your PR.
In general, we follow the "fork-and-pull" Git workflow.
CHANGELOG
. We're following the standard of Keep a ChangelogNOTES:
We ship CriticalMaps on the App Store for free and provide its entire source code for free as well. In the spirit of openness, CriticalMaps is licensed under MIT so that you can use my code in your app, if you choose.
However, please do not ship this app under your own account. Paid or free.
Copyright (c) 2021 headione - Released under the MIT license.