DevTool - A simple UI and powerful Mac OS application, Such as JSON-Formatting tool, JSON-to-model tool, AppIcon generator, Network-Request tool...

Overview

DevTool logo

English | 简体中文

DevTool

A simple UI and powerful Mac OS application. It is a collection of tools commonly used in my development work. It is open source and hopes to help people in need. At present, its main functions are as follows

  • JSON formatting tool: used to quickly format network JSON data into formatted JSON for easy reading

  • JSON to model: read JSON data and generate swift model. It supports a variety of configuration options, especially for complex JSON parsing, which fully liberates both hands

  • Appicon generator: supports the generation of IOS / MacOS app icons, one click generation and export to the specified directory

  • Network request tool: a convenient network request tool, intended to replace postman and speed up the continuous adjustment of front and rear interfaces. Automatically record historical request records and support export / import.

  • ...

Functions & Features

JSONFormat

  • Format the JSON string returned by the interface into a format that is easy to read and understand
  • ...

JSON to Model

  • Automatically convert JSON files to swift class to reduce repetitive work and error probability
  • Automatically resolve nested types array and dictionary, and resolve the contents of nested types into new classes according to the actual situation
  • For the array type, the complete key value of the dict element is automatically parsed to effectively avoid the possible loss caused by the random writing / less writing of the array element key in the test JSON test data
  • Support custom class prefix
  • Support custom class, inherit base class and abide by protocol
  • It supports setting the value of the original JSON to the attribute annotation, which is convenient for viewing the code during subsequent maintenance
  • It supports the automatic generation of codingkeys to facilitate the subsequent direct use of the system codable protocol for model transformation
  • ...

Appicon generator

  • The user passes in the specified picture and generates IOS / MacOS appicon with one click. It is suitable for individual developers to quickly generate icons for personal projects (the icon of this project is generated from this, and this function is also generated because of the icon generated by this project)
  • ...

Network request tool

  • Simple network request tool, refer to postman, but it is more concise. There is no need to check the software availability online, and all records are safer locally
  • Support custom request name / input URL / request header / request body / you can send the request directly and see the original return result
  • Support historical request data saving / exporting / importing
  • Support the deletion and locking of requests (prevent the history from being deleted by mistake, and can be deleted after unlocking)
  • ...

Screenshots

jsonFormatter.png json2model.png appIcons.png netRequest.png

Install

  • Direct download Release Packages
  • Clone source code, execute build in Xcode, copy XYDevTool.app to Application folder

Others

Those functions are frequently used by me, so I wrote them in my App. If you have better suggestions, such as some more functions, please submit PR/Issues, thank you! If you like it, please click a star to encourage me! 😁

You might also like...
Auto reflection tool from JSON to Model, user friendly JSON encoder / decoder, aims to never die
Auto reflection tool from JSON to Model, user friendly JSON encoder / decoder, aims to never die

JSONNeverDie is an auto reflection tool from JSON to Model, a user friendly JSON encoder / decoder, aims to never die. Also JSONNeverDie is a very imp

Another network wrapper for URLSession. Built to be simple, small and easy to create tests at the network layer of your application.
Another network wrapper for URLSession. Built to be simple, small and easy to create tests at the network layer of your application.

Another network wrapper for URLSession. Built to be simple, small and easy to create tests at the network layer of your application. Install Carthage

NSURLSession network abstraction layer, using Codable and Decodable for response and Encodable for request. ⚙️🚀
NSURLSession network abstraction layer, using Codable and Decodable for response and Encodable for request. ⚙️🚀

SONetworking NSURLSession network abstraction layer, using Codable and Decodable for response and Encodable for request. Project Folder and File Struc

Automatically sets the network activity indicator for any performed request.

BigBrother BIG BROTHER IS WATCHING YOU. BigBrother is a Swift library made for iOS that automatically watches for any performed request and sets the n

A tool for Swift code modification intermediating between code generation and formatting.

swift-mod A tool for Swift code modification intermediating between code generation and formatting. Overview swift-mod is a tool for Swift code modifi

A command-line tool and Xcode Extension for formatting Swift code
A command-line tool and Xcode Extension for formatting Swift code

Table of Contents What? Why? How? Command-line tool Xcode source editor extension Xcode build phase Via Applescript VSCode plugin Sublime Text plugin

Cybr/Secure - A simple but powerful secure password generator
Cybr/Secure - A simple but powerful secure password generator

A simple but powerful secure password generator. You get the option of password length (10 to 20 characters) and whether you include numbers, symbols, uppercase and/or lowercase letters. Simply tap the lock icon to generate a secure password and then tap to copy the password.

Network debugging made easy,This network debugging tool is developed based on the swift version of Wormholy.
Network debugging made easy,This network debugging tool is developed based on the swift version of Wormholy.

Start debugging iOS network calls like a wizard, without extra code! Wormholy makes debugging quick and reliable. What you can do: No code to write an

CoreMLSample - CoreML Example for in app model and download model

CoreMLSample Sample for CoreML This project is CoreML Example for in app model a

A library for formatting strings on iOS and macOS

Sprinter Introduction What? Why? How? Usage Installation Integration Localization Thread Safety Advanced Usage Introduction What? Sprinter is a librar

A Swift framework for parsing, formatting and validating international phone numbers. Inspired by Google's libphonenumber.
A Swift framework for parsing, formatting and validating international phone numbers. Inspired by Google's libphonenumber.

PhoneNumberKit Swift 5.3 framework for parsing, formatting and validating international phone numbers. Inspired by Google's libphonenumber. Features F

A Swift framework for parsing, formatting and validating international phone numbers. Inspired by Google's libphonenumber.
A Swift framework for parsing, formatting and validating international phone numbers. Inspired by Google's libphonenumber.

PhoneNumberKit Swift 5.3 framework for parsing, formatting and validating international phone numbers. Inspired by Google's libphonenumber. Features F

A lightweight Swift date library for parsing, validating, manipulating, and formatting dates based on moment.js.

A lightweight Swift date library for parsing, validating, manipulating, and formatting dates based on moment.js.

Backport of iOS 15 formatting api

This is a back-port of the .formatted API in Foundation that was introduced at WWDC '21 for iOS 15, macOS 12.0, tvOS 15.0, and watchOS 8.0.

XShared - Xcode extension that allows you copying the code with special formatting quotes for social (Slack, Telegram)
XShared - Xcode extension that allows you copying the code with special formatting quotes for social (Slack, Telegram)

This extension is for those who like to show code to the public 😎 Xcode extension which allows you copying the code with special formatting quotes fo

An open source package for as-you-type formatting in SwiftUI.
An open source package for as-you-type formatting in SwiftUI.

DiffableTextViews An open source package for as-you-type formatting in SwiftUI. Features Feature Description ⌨️ Responsive Formats text as you type 🪄

A light weight network library with automated model parser for rapid development

Gem A light weight network library with automated model parser for rapid development. Managing all http request with automated model parser calls in a

A fast & simple, yet powerful & flexible logging framework for Mac and iOS
A fast & simple, yet powerful & flexible logging framework for Mac and iOS

CocoaLumberjack CocoaLumberjack is a fast & simple, yet powerful & flexible logging framework for macOS, iOS, tvOS and watchOS. How to get started Fir

Stub your network requests easily! Test your apps with fake network data and custom response time, response code and headers!
Stub your network requests easily! Test your apps with fake network data and custom response time, response code and headers!

OHHTTPStubs OHHTTPStubs is a library designed to stub your network requests very easily. It can help you: test your apps with fake network data (stubb

Releases(1.4.3)
  • 1.4.3(Jun 19, 2022)

  • 1.4.2(Jun 8, 2022)

    本次更新为 JSON Formatter 工具新增两个功能

    1. 汉字转 Unicode 编码
    2. Unicode 编码转汉字表示

    PS:unicode 算法的结果展示和网页版工具结果兼容,可以互转。 整体Unicode转换范围 0x1000 - 0xffff。或许不是只包含汉字,但绝对满足常用汉字的转换功能

    Source code(tar.gz)
    Source code(zip)
    XYDevTool.zip(5.49 MB)
  • 1.4.1(Jun 7, 2022)

  • 1.4.0(May 29, 2022)

    1. 新增一键更新功能,发现新版本之后会自动弹出,现在支持一键更新,可以将网络请求的历史自动导入新版本,省去原来手动导入的麻烦
    2. 优化 JSONFormatter 编辑 JSON 可以支持撤回(Command+Z)
    Source code(tar.gz)
    Source code(zip)
    XYDevTool.zip(5.48 MB)
  • 1.3.0(May 25, 2022)

    此版本更新主要是 JSON 格式化工具的更新

    1. JSON 格式化工具输入框支持显示行号
    2. JOSN 格式化工具支持输入框内代码主题设置
    3. JSON 格式化工具新增文本压缩功能
    4. 细节优化,相较上个版本更好的输入体验
    Source code(tar.gz)
    Source code(zip)
    XYDevTool.zip(5.47 MB)
  • 1.2.0(May 23, 2022)

  • 1.1.0(May 11, 2022)

    新增 JSON 格式化功能

    1. 新增一个 JSON 格式化工具,可以支持一般 JSON 解析成易读格式。
    2. 支持字符串文本的 JSON,解析成易读格式。

    新增网络接口请求功能,替代 PostMan 等商业化工具。 对于 Postman , 每次启动要联网加载验证信息,验证的时候启动过程很长,而且有时候自己的工作空间都打不开,这就很蛋疼了,如果说没有付费,工具不让用了,至少自己的数据可以导出吧。但是经验告诉我就是不行。所以索性自己搞一个自己的工具。恰好,上次测试同学给了个接口要自己测试,中间几个参数需要依赖其他请求,链路较长并且当天要封板,而我居家办公,要连公司VPN,一通操作浪费了大量时间,一下让我意识到这个事情必须要快速做了。 还好,今天是封板后的第二天,用了差不多整整一天搞了一个。功能如下

    1. 支持设置自定义名称,POST/GET,设置 Headers 和 自定义请求体
    2. 支持历史数据持久化保存,方便看历史数据,也可以手动删除
    3. 支持防误删操作,每个请求有个锁定按钮,锁定状态下的请求不能删除,更安全
    Source code(tar.gz)
    Source code(zip)
    XYDevTool.zip(11.12 MB)
  • 1.0(May 7, 2022)

    1. 支持 JSON 转 Swift Model 类
    2. 支持设置注释。将 JSON 中 Value 值设置为 Modle Key 的注释,方便后续维护
    3. 支持设置基类,统一生成继承基类的模型类。 协议同理
    4. 支持设置类前缀,避免和其他地方生成的类冲突
    5. 支持一键生成 CodingKeys,节省时间,利于后续拓展和使用系统的 Codeable 协议

    同时提供一个生成 iOS/macOS App Icon 的工具,源自给当前 App 设置 Icon 后续陆续增加实用功能

    Source code(tar.gz)
    Source code(zip)
    XYDevTool.app.zip(7.03 MB)
Owner
渠晓友
芝兰生于空谷,不以无人而不芳。
渠晓友
A native Jellyfin client for Apple platforms (iOS, macOS and tvOS)

Jellyfin Swift (working title) is a native Swift app targeting all modern Apple devices (iOS, ipadOS, tvOS and macOS).

Julien Machiels 3 Jun 7, 2021
BaseConverter-iOS - The fast and easy way to convert numbers with tons of possibilities!

BaseConverter-iOS The fast and easy way to convert numbers with tons of possibilities! With BaseConverter, convert your numbers from and to: Decimal B

Groupe MINASTE 3 Feb 8, 2022
Charter - A Swift mailing list client for iPhone and iPad

Due to costs and lack of interest, I’ve had to take down the Charter service. If you’re interested in running your own copy, get in touch and I can se

Matthew Palmer 526 Dec 24, 2022
Dash-iOS - Dash gives your iPad and iPhone instant offline access to 200+ API documentation sets

Discontinued Dash for iOS was discontinued. Please check out Dash for macOS instead. Dash for iOS Dash gives your iPad and iPhone instant offline acce

Bogdan Popescu 7.1k Dec 29, 2022
A fast, convenient and nonintrusive conversion framework between JSON and model. Your model class doesn't need to extend any base class. You don't need to modify any model file.

MJExtension A fast, convenient and nonintrusive conversion framework between JSON and model. 转换速度快、使用简单方便的字典转模型框架 ?? ✍??Release Notes: more details Co

M了个J 8.5k Jan 3, 2023
DBNetworkStack is a network abstraction for fetching request and mapping them to model objects

DBNetworkStack Main Features ?? Typed network resources ?? Value oriented architecture ?? Exchangeable implementations ?? Extendable API ?? Composable

DB Systel GmbH 33 Jan 10, 2022
JSONExport is a desktop application for Mac OS X which enables you to export JSON objects as model classes with their associated constructors, utility methods, setters and getters in your favorite language.

JSONExport JSONExport is a desktop application for Mac OS X written in Swift. Using JSONExport you will be able to: Convert any valid JSON object to a

Ahmed Ali 4.7k Dec 30, 2022
MVVM-RXSWIFT-COMBINE- - Demo application populating posts from network request using

MVVM => RXSWIFT + COMBINE Demo application populating posts from network request

Amr Al-khayat 0 Jan 2, 2022
An original project making use of custom UITableViewCells, date formatting, json parsing, and handling user location.

SunTimes An original project making use of custom UITableViewCells, date formatting, json parsing, date and time formatting based on the json data, an

David Chester 0 Feb 8, 2022
JSONNeverDie - Auto reflection tool from JSON to Model, user friendly JSON encoder / decoder, aims to never die

JSONNeverDie is an auto reflection tool from JSON to Model, a user friendly JSON encoder / decoder, aims to never die. Also JSONNeverDie is a very important part of Pitaya.

John Lui 454 Oct 30, 2022