Area51
Area51 is an open source Reddit client for iOS built entirely in Swift!
Get the public beta on TestFlight
Join the public Slack channel to collaborate!
Goals
- Provide a beginner friendly development environment
- Use the latest iOS development tools
- Document everything! Helps beginners learn :)
- Build an awesome open source Reddit client for iOS!
Getting Started
Requirements
Make sure you have Xcode: 10.2 or higher.
This project currently supports Swift 5.0+
Setup
Clone the repo and run the generate command:
git clone [email protected]:kgellci/Area51.git
cd Area51/
make generate
After generate
is finished doing its job, open Area51.xcodeproj, build and run.
Project Structure
Area51 does not import any 3rd party libraries in app.
Xcodegen is used for project definition and generation.
Swiftlint is used to keep the code properly structured and readable.
Learn more about the project structure.
Running on a device
Make sure you run make generate
command from above to generate the appropriate config files.
Edit the user.xcconfig
file in the Configs/
directory (don't worry, it is gitignored!). Set DEVELOPMENT_TEAM
in the user.xcconfig file. Example: DEVELOPMENT_TEAM = XXXXXXXXX
Edit the bundleIdentifier.xcconfig
file in Configs/
directory (also gitignored!). Set PRODUCT_BUNDLE_IDENTIFIER
in bundleIdentifier.xcconfig to something unique, Example: PRODUCT_BUNDLE_IDENTIFIER = whatever.i.want
You will need to close the Xcode project, run make generate
and open the project again. You can find your team ID by logging into developer.apple.com.
FAQ
If you have more questions, check out the FAQ. If your question is not answered, open a new issue with the "Question" tag.
License
Area51 is licensed under the GNU General Public License v3.0. See LICENSE for more info.