All Projects → yagiz → Bagel

yagiz / Bagel

Licence: apache-2.0
a little native network debugging tool for iOS

Programming Languages

swift
15916 projects
objective c
16641 projects - #2 most used programming language
javascript
184084 projects - #8 most used programming language
CSS
56736 projects

Projects that are alternatives of or similar to Bagel

Solarnetwork
Elegant network abstraction layer in Swift.
Stars: ✭ 99 (-97.53%)
Mutual labels:  network, alamofire
Android Remote Debugger
A library for remote logging, database debugging, shared preferences and network requests
Stars: ✭ 132 (-96.7%)
Mutual labels:  network, debug
Cocoadebug
iOS Debugging Tool 🚀
Stars: ✭ 3,769 (-5.89%)
Mutual labels:  network, debug
Wormholy
iOS network debugging, like a wizard 🧙‍♂️
Stars: ✭ 2,010 (-49.81%)
Mutual labels:  network, alamofire
Networkingexample
Write a Networking Layer in Swift 4 using Alamofire 5 and Codable
Stars: ✭ 119 (-97.03%)
Mutual labels:  network, alamofire
Daisynet
1. - Alamofire与Cache封装 , 更容易存储请求数据. 2. - 封装Alamofire下载,使用更方便
Stars: ✭ 331 (-91.74%)
Mutual labels:  network, alamofire
Game Networking Resources
A Curated List of Game Network Programming Resources
Stars: ✭ 4,208 (+5.07%)
Mutual labels:  network
Xcglogger
A debug log framework for use in Swift projects. Allows you to log details to the console (and optionally a file), just like you would have with NSLog() or print(), but with additional information, such as the date, function name, filename and line number.
Stars: ✭ 3,710 (-7.37%)
Mutual labels:  debug
Coderyi.github.io
Don't fork! coderyi's blog,about iOS ,CS and my code life.
Stars: ✭ 349 (-91.29%)
Mutual labels:  network
Beeprint
make your debug printing more friendly
Stars: ✭ 348 (-91.31%)
Mutual labels:  debug
Restofire
Restofire is a protocol oriented networking client for Alamofire
Stars: ✭ 377 (-90.59%)
Mutual labels:  alamofire
Sandwich
🥪 A lightweight and standardized Android network response interface for handling successful data and error responses.
Stars: ✭ 370 (-90.76%)
Mutual labels:  network
Polymorph
Polymorph is a real-time network packet manipulation framework with support for almost all existing protocols
Stars: ✭ 364 (-90.91%)
Mutual labels:  network
Yarp
YARP - Yet Another Robot Platform
Stars: ✭ 358 (-91.06%)
Mutual labels:  network
Bgpalerter
Software to monitor streams of BGP data. Pre-configured for real-time detection of visibility loss, RPKI invalid announcements, hijacks, and more.
Stars: ✭ 367 (-90.84%)
Mutual labels:  network
Ws
⚠️ Deprecated - (in favour of Networking) ☁️ Elegantly connect to a JSON api. (Alamofire + Promises + JSON Parsing)
Stars: ✭ 352 (-91.21%)
Mutual labels:  alamofire
Ceras
Universal binary serializer for a wide variety of scenarios https://discord.gg/FGaCX4c
Stars: ✭ 374 (-90.66%)
Mutual labels:  network
Tcping
ping over a tcp connection
Stars: ✭ 346 (-91.36%)
Mutual labels:  network
Bugsnag React Native
Error monitoring and reporting tool for native exceptions and JS errors in React Native apps
Stars: ✭ 374 (-90.66%)
Mutual labels:  debug
Tbox
🎁 A glib-like multi-platform c library
Stars: ✭ 3,800 (-5.12%)
Mutual labels:  network

Bagel

Bagel

Bagel is a little native iOS network debugger. It's not a proxy debugger so you don't have to mess around with certificates, proxy settings etc. As long as your iOS devices and your Mac are in the same network, you can view the network traffic of your apps seperated by the devices or simulators.

Preview

Bagel

Installation

Install Mac App

  • Clone the repo.
  • Install pods.
  • Build and archive the project.

Install iOS Client

CocoaPods

pod 'Bagel', '~>  1.4.0'
Carthage
github "yagiz/Bagel" "1.4.0"
Accio
.package(url: "https://github.com/yagiz/Bagel.git", .upToNextMajor(from: "1.4.0")),

Usage

Most basic usage is to start Bagel iOS before any network operation.

//import Bagel
Bagel.start()

Since Bagel exposes every request info to the public it would be better if you disable it for the store versions. You can use the below snippet to do it:

//import Bagel
#if DEBUG
Bagel.start()
#endif

Configuring Bagel

By default, Bagel gets your project name and device information. Desktop client uses these informations to separate projects and devices. You can configure these if you wish:

let bagelConfig = BagelConfiguration()

bagelConfig.project.projectName = "Custom Project Name"
bagelConfig.device.deviceName = "Custom Device Name"
bagelConfig.device.deviceDescription = "Custom Device Description"

Bagel.start(bagelConfig)

Bagel framework communicates with the desktop client by using Bonjour protocol. You can also configure these Netservice parameters. Default values are:

let bagelConfig = BagelConfiguration()

bagelConfig.netservicePort = 43434
bagelConfig.netserviceDomain = ""
bagelConfig.netserviceType = "_Bagel._tcp"
bagelConfig.netserviceName = ""

Bagel.start(bagelConfig)

If you change Netservice parameters in your app, you should also change them on desktop client.

License

Apache

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].