Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/criticalmaps/criticalmaps-ios
Critical Maps iOS App π²β
https://github.com/criticalmaps/criticalmaps-ios
bike bike-data composable-architecture criticalmaps criticalmass swiftui tca
Last synced: 4 days ago
JSON representation
Critical Maps iOS App π²β
- Host: GitHub
- URL: https://github.com/criticalmaps/criticalmaps-ios
- Owner: criticalmaps
- License: mit
- Created: 2014-09-09T12:04:17.000Z (about 10 years ago)
- Default Branch: main
- Last Pushed: 2024-10-28T18:13:03.000Z (11 days ago)
- Last Synced: 2024-10-29T21:05:34.987Z (10 days ago)
- Topics: bike, bike-data, composable-architecture, criticalmaps, criticalmass, swiftui, tca
- Language: Swift
- Homepage: http://www.criticalmaps.net
- Size: 89.9 MB
- Stars: 290
- Watchers: 9
- Forks: 41
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
- fucking-open-source-ios-apps - Critical Maps
- awesome-starred - criticalmaps/criticalmaps-ios - Critical Maps iOS App π²β (swiftui)
README
## Critical Maps iOS App
[![CI](https://github.com/criticalmaps/criticalmaps-ios/actions/workflows/tests.yml/badge.svg)](https://github.com/criticalmaps/criticalmaps-ios/actions/workflows/tests.yml)
## What's "Critical Mass"?
> 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)
## What's this app?
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.
## Where can I get the app?
- [AppStore](https://apps.apple.com/de/app/critical-maps/id918669647)
- [TestFlight](https://testflight.apple.com/join/nyGeQVxk)## Project Setup
The iOS client's logic is built in the [`The Composable Architecture`](https://github.com/pointfreeco/swift-composable-architecture) and the UI is built in SwiftUI.
Minimum platform requirements are: iOS 16.0### Modularization
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.
### Getting Started
This repo contains both the client for running the entire [Critical Maps](https://itunes.apple.com/app/critical-maps/id918669647) application, as well as an extensive test suite. To get things running:
1. Grab the code:
```sh
git clone https://github.com/criticalmaps/criticalmaps-ios
cd criticalmaps-ios
```
2. Open the Xcode project `CriticalMaps.xcodeproj`.
3. To run the client locally, select the `Critical Maps` target in Xcode and run (`βR`).__Optional__
Install `fastlane` with
```sh
make dependencies
```### Assets
The project is using type-safe assets generated with [SwiftGen](https://github.com/SwiftGen/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.## Contribute
- Please report bugs with GitHub [issues](https://github.com/CriticalMaps/criticalmaps-ios/issues).
- If you can code please check the build & contribute guide below.
- If you have some coins left you can help to finance the project on [Open Collective](https://opencollective.com/criticalmaps).### How to contribute
In general, we follow the "fork-and-pull" Git workflow.
1. **Fork** the repo on GitHub
2. **Clone** the project to your own machine
3. **Commit** changes to your own branch. Please add your changes also to the [`CHANGELOG`](CHANGELOG.md). We're following the standard of [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
4. **Push** your work back up to your fork
5. Submit a **Pull request** so that we can review your changesNOTES:
- Be sure to merge the latest from "upstream" before making a pull request!## Open Source & Copying
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 the code in your app, if you choose to.
However, **please do not ship this app** under your own account. Paid or free.
## Credits
Leo Thomas
Malte BΓΌnz
Norman Sander
Felizia Bernutz
I5glu
Maxim Tsvetkov
Bernardo Silva
Stephan Lindauer
Jacqueline Alves
Joscha
Null
Justus Kandzi
Peter Amende
Ravi Aggarwal
Alban Sagouis
Henry
Knut HΓΌhne
Mikhail Akopov
Loris
## Copyright & License
Copyright (c) 2021 headione - Released under the [MIT license](https://github.com/criticalmaps/criticalmaps-ios/blob/main/LICENSE).