Meet Genius - A community where geniuses meet

Related tags

Content App Yep
Overview

Yep

A community where geniuses meet

https://soyep.com

Yep: Project Introductory Guide

Please build with the latest CocoaPods v0.39.0 and Xcode 7.2.

Intro

Yep is a nifty and lightweight social networking app, revolving around the theme of "Meeting Genius", enabling users to find experts or other learners of a particular domain.

The project's architecture is easy to understand, following the common software pattern MVC, separating UI, business logic and data model. Now, let's dive into the Yep project!

Model

Realm helps us a lot with data persistence. You can checkout the Realm/Models.swift file to learn how we add, modify, update or delete data in Realm database.

UI(View & ViewController)

We use Storyboard to join different view controllers together. You can take a glance at the Main.storyboard file. Thanks to the Storyboard References feature, we break up storyboards into a set of smaller storyboards. Easy to maintain and handle .storyboard files under source control, right?

At the same time, you should notice that some views are @IBDesignable. You can use Interface Builder, drag the view out and observe changes.

Activity

Without integrating WeChat or Weibo SDK, Yep uses MonkeyKing with the native UIActivityViewController. See Activities/WeChatActivity.swift.

Service

You can find all Services under Services directory. Our services are divided into following parts:

  1. User-related operation service (YepService.swift): Sign-in, phone verification
  2. User operation service (YepServiceSync.swift): Skills, messages
  3. Network requests service (YepNetworking.swift): Network requests, JSON parsing/serialization
  4. Data download service (YepDownloader.swift): Audio, video downloading
  5. Feeds (FayeService.swift)
  6. Cloud storage service (YepStorageService.swift)
  7. Audio and video service (YepAudioService.swift): Based on AVFoundation and AudioToolbox
  8. Location service (YepLocationService.swift)
  9. Social info service (SocialWorkService.swift): Get user's GitHub, Dribbble and Instagram info
  10. Open Graph Service (OpenGraphService.swift): Get iBooks, App and Apple Music info

Performance

In order to improve FPS rate, we do image caching (Caches folder).

Wants to learn more? View this slide.

Development

If you like to join us developing Yep, fork this repo and use git flow on develop branch to create a new branch for your developing. When you finish, send a pull request.

Please ensure each commit is minimized for code review.

Please stop using simulator's waterfall image as your avatar.

You can track our progress at Trello.

License

MIT

中文指南

Comments
  • 提示  APService.h  没找到

    提示 APService.h 没找到

    提示 APService.h 没找到

    已更新如下依赖

    Using 1PasswordExtension (1.7) Using APAddressBook (0.2.3) Using Alamofire (3.1.5) Using Base64 (1.0.1) Using Crashlytics (3.6.0) Using DeviceGuru (1.3.3) Using FXBlurView (1.6.4) Using Fabric (1.6.4) Using JPush-iOS-SDK (2.1.0) Using Kanna (1.0.3) Using KeyboardMan (0.5.2) Using Kingfisher (2.0.0) Using MonkeyKing (0.0.2) Using Navi (0.3.9) Using Proposer (0.7.1) Using Realm (0.97.0) Using RealmSwift (0.97.0) Using Ruler (0.6) Using SocketRocket (0.4.2) Using TPKeyboardAvoiding (1.2.11) Using pop (1.0.8)

    opened by ucoker 9
  • 登录注册都不行啊

    登录注册都不行啊

    打印输出的错误信息如下:

    *************************** YepNetworking Failure ***************************** Reason: Other, Error: Optional("Error Domain=NSURLErrorDomain Code=-1002 "unsupported URL" UserInfo={NSLocalizedDescription=unsupported URL, NSUnderlyingError=0x7fd09148d790 {Error Domain=kCFErrorDomainCFNetwork Code=-1002 "(null)"}}") Resource(Method: POST, path: /v1/sms_verification_codes, headers: ["Accept-Language": "en-US", "Content-Type": "application/json"], requestBody: ["method": sms, "phone_code": 86, "mobile": 15370406515])

    curl -i -X POST -H "Accept-Language: en-US" -H "Content-Type: application/json" -d "{"method":"sms","mobile":"12345666666","phone_code":"86"}"

    opened by bytehello 5
  • Pods folder missing

    Pods folder missing

    I am trying to build this app and the folder that should be including labeled "pods" is missing. When opening this project in Xcode the pods file is in red letting me know the pods folder for the dependencies are missing. A lot of developers on github don't include the pods folder with the project assuming everyone trying out the code will be able to install the pods dependacies without it but that's not the case. I can never get an app to work that uses cocoapods that doesn't include the pods folders. Can you help me out and add the pods folder to project please? I am very interested to test out this project. Thanks for your help.

    opened by wellkunnected 4
  • No such module 'MZFayeClient'

    No such module 'MZFayeClient'

    I've just downloaded this project then pod install. I didn't do anything but just build and run, however, it shows an error:

    In FayeService.swift: import MZFayeClient cannot find moudle MZFayeClient. MZFayeClient is actually added to project under the folder Vendor, and Yep-Bridging-Header.h is set correctly.

    In project setting, Objective-C Bridging Header is set to Yep/Yep-Bridging-Header.h which I think is correct.

    Yep-Bridging-Header.h

    #import <UIKit/UIKit.h>
    #import "JPUSHService.h"
    #import "MZFayeClient.h"
    

    Everything seems fine but just can't build. The compiler cannot find MZFayeClient, any solution?

    Thanks.

    opened by red010182 4
  • Code Sign error

    Code Sign error

    Code Sign error: Automatic provisioning profile selection unavailable: A bundle identifier is required for automatic provisioning profile selection. Either enter a bundle identifier in the Info.plist, or select a provisioning profile to use in the build settings.

    opened by zhimeilinzm 4
  • 无法登录和注册

    无法登录和注册

    登录报错: ***************************** YepNetworking Failure ***************************** Reason: Other, Error: Optional(Error Domain=NSURLErrorDomain Code=-1001 "请求超时。" UserInfo={NSUnderlyingError=0x170459110 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, NSErrorFailingURLStringKey=https://api.soyep.com/v1/sms_verification_codes, NSErrorFailingURLKey=https://api.soyep.com/v1/sms_verification_codes, _kCFStreamErrorDomainKey=4, _kCFStreamErrorCodeKey=-2102, NSLocalizedDescription=请求超时。}) Resource(Method: POST, path: /v1/sms_verification_codes, headers: ["Content-Type": "application/json", "Accept-Language": "zh-CN"], requestBody: ["mobile": 18611015754, "method": sms, "phone_code": 86])

    opened by yangxiaobo 3
  • [!] Error installing Appsee

    [!] Error installing Appsee

    报错完整信息: [!] Error installing Appsee [!] /usr/local/anaconda3/bin/curl -f -L -o /var/folders/57/44vy66d96l74np69k8w2kdt80000gn/T/d20210609-47290-1f5atyt/file.zip https://www.appsee.com/sdk/appsee_ios_2.6.2.zip --create-dirs --netrc-optional --retry 2

    % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0Warning: Transient problem: timeout Will retry in 1 seconds. 2 retries left. 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0Warning: Transient problem: timeout Will retry in 2 seconds. 1 retries left. 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0curl: (6) Could not resolve host: www.appsee.com

    CocoaPods : 1.9.0

    opened by qy1010 0
  • Performance anti-pattern in UI

    Performance anti-pattern in UI

    Hello guys!

    I found that in SkillSelectionCell, content view background's alpha is set to 0.2. Also in RankView you are drawing a rectangle with barbackgroundcolor's alpha set to 0.15 in a for loop. I think it would be better not to use transparent or partially transparent views in repeating styles, like TableViewCells and inside for loops.

    Due to my own experience and this Apple document using transparency could be tricky, performance-wise.

    Don't you think there would be a way to avoid this?

    opened by saraseif 0
  • Restrict the length of verify code.

    Restrict the length of verify code.

    If user type in a false verify code, Yep will show a false alert. But after tapped “OK” button, user can continue to entry digits. Now, after implement this method, user cannot entry more than 4 digits which is configured in “YepConfig.verifyCodeLength()”.

    opened by zhuorantan 0
Owner
Catch
Chat with one touch
Catch
FreshPlan - meet-up app that plans when you guys want to meet

FreshPlan meet-up app that plans when you guys want to meet. Requirements Cocoap

Allan Lin 1 Jan 4, 2022
Spin aims to provide a versatile Feedback Loop implementation working with the three main reactive frameworks available in the Swift community (RxSwift, ReactiveSwift and Combine)

With the introduction of Combine and SwiftUI, we will face some transition periods in our code base. Our applications will use both Combine and a thir

Spinners 119 Dec 29, 2022
A community-driven replacement for JSQMessagesViewController

A community-driven replacement for JSQMessagesViewController https://messagekit.github.io Goals Provide a ?? safe ?? environment for others to learn a

MessageKit 5.4k Jan 7, 2023
swiftUIviews is an online collection of beautifly designed swiftUIViews by the swift community

swiftUIViews | ?? swiftUIviews is an online collection of beautifly designed swiftUIViews by the swift community. Feelin like contributing? Follow the

emin 28 Aug 18, 2022
Redux abstractions for BetterMe projects and iOS community

ReduxCore Redux abstractions on Swift for BetterMe projects and iOS community Installation CocoaPods You can install ReduxCore via CocoaPods by adding

BetterMe 15 Mar 24, 2022
A community-driven replacement for JSQMessagesViewController

A community-driven replacement for JSQMessagesViewController https://messagekit.github.io Goals Provide a ?? safe ?? environment for others to learn a

MessageKit 5.4k Jan 2, 2023
An online community of professional chefs, home cooks, and food lovers worldwide

Yoke is an online community of professional chefs, home cooks, and food lovers worldwide. Whether you are looking for an expert or a home chef, a fanc

Laura Jelenich 3 Dec 8, 2021
Tech-Career-Growth-iOS - Official iOS app for the Tech Career Growth community

Developing the app Open the project from TCG.xcworkspace, not TCG.xcodeproj. It

Alexander Chiou 10 Feb 10, 2022
WWDCScholars is a community of Apple WWDC Scholarship winners

WWDCScholars iOS App WWDCScholars is a community of Apple WWDC Scholarship winners. Every year bright minds from all around the world compete against

WWDCScholars 65 Dec 7, 2022
XCSnippetsApp - macOS application to explore code snippets from the Swift and iOS community, view and edit the snippets before adding them conveniently to Xcode

XCSnippetsApp macOS application to explore code snippets from the Swift and iOS community, view and edit the snippets before adding them conveniently

Marco Eidinger 119 Dec 27, 2022
Meet Corvus, the first strongly declarative server-side framework.

Corvus Corvus is the first truly declarative server-side framework for Swift. It provides a declarative, composable syntax which makes it easy to get

null 42 Jun 29, 2022
Meet Corvus, the first strongly declarative server-side framework.

Corvus Corvus is the first truly declarative server-side framework for Swift. It provides a declarative, composable syntax which makes it easy to get

null 42 Jun 29, 2022
Meet cute and very flexibility library for iOS application for different data view in one circle diagram.

SMDiagramViewSwift Meet cute and very flexibility library for iOS application for different data view in one circle diagram. The opportunity of transf

VRG Soft 42 Sep 17, 2022
Twitter Text Libraries. This code is used at Twitter to tokenize and parse text to meet the expectations for what can be used on the platform.

twitter-text This repository is a collection of libraries and conformance tests to standardize parsing of Tweet text. It synchronizes development, tes

Twitter 2.9k Dec 27, 2022
Haven't you wished for `try` to sometimes try a little harder? Meet `retry`

Retry Example Haven't you wished for try to sometimes try a little harder? Meet retry To run the example project, clone the repo, and run pod install

Marin Todorov 500 Dec 13, 2022
SwiftUI iOS application allowing users to create profiles and meet and chat with people

FindR SwiftUI iOS application allowing users to create profiles and meet and cha

Devang Papinwar 3 Dec 7, 2022
Jitsi Meet - Secure, Simple and Scalable Video Conferences that you use as a standalone app or embed in your web application.

Jitsi Meet is a set of Open Source projects which empower users to use and deploy video conferencing platforms with state-of-the-art video quality and features.

Jitsi 19.1k Jan 5, 2023
TICE – Locate Friends & Meet Up

TICE is a secure app for meeting up, sharing locations and locating friends and family in real-time. TICE allows live location sharing on iOS, Android and the Web. Privacy by Design and modern end-to-end-encryption protect the sensitive location data from others.

TICE Software 10 Jul 12, 2022
Meet CRRulerControl - Customizable Control for iOS

Customizable component, created by Cleveroad iOS developers, is aimed at turning a simple ruler into a handy and smart instrument

Cleveroad 112 Oct 2, 2022
Meet Page View Controller for iOS by Cleveroad

While a standard page view allows you to navigate between pages by using simple gestures, our component goes further

Cleveroad 397 Aug 20, 2022