Total Pageviews

Thursday 1 September 2016

Awesome Mac

jaywcjlove/sb jaywcjlove/sb jaywcjlove/sb Gitter
 这个仓库主要是收集非常好用的Mac应用程序、软件以及工具,主要面向开发者和设计师。有这个想法是因为我最近发了一篇较为火爆的涨粉儿微信公众号文章《工具武装的前端开发工程师》,于是建了这么一个仓库,持续更新作为补充,搜集更多好用的软件工具。请Star、Pull Request或者使劲搓它 issues 给我推荐优秀好用的Mac应用,很显然我是一个资深Mac用户,我需要它们帮助我快乐、高效的工作,同时也分享给你。格式参照awesome的清单。
在这里非常感谢 @GitHubDaily 的推荐

说明

Open-Source Software 表示开源软件,点击进入开源仓库;
Freeware 表示免费使用,或者个人免费
hot 表示热门的软件;
tuijian 表示推荐的软件;
必备 表示装机必备的软件;
1 star 表示强烈推荐的必装神器,星星的数量来表达强烈的程度;

目录

编辑器

一种用于编辑纯文本文件的程序,建议使用免费开源的编辑器
  • Atom - GitHub推出的开源编辑器。star 4 Open-Source Software Freeware hot
  • Sublime Text - 一个比较简洁大方带插件管理系统的流行编辑器。hot tuijian 必备
  • Brackets - Adobe推出的Brackets免费/开源编辑器。Open-Source Software Freeware
  • Visual Studio Code - 微软推出的免费/开源编辑器,TypeScript支持杠杠的。Open-Source Software Freeware hot
  • Emacs - Emacs是基于控制台的编辑器和高度可定制的。
  • LightTable - 下一代代码编辑器。Open-Source Software Freeware
  • TextMate - 文本编辑器软件,与BBedit一起并称苹果机上的emacs和vim,这是以前。Freeware
  • BBEdit - 强大的文件编辑器,用于编辑文件,文本文件及程序源代码。
  • Coda2 - 编写Web应用长得漂亮的编辑器。
  • Vim - Vim古老命令行中使用的编辑器。Freeware hot
    • Vundle.vim - Vim插件管理工具。Open-Source Software Freeware
    • vim-plug - 一个简约的vim插件管理器。Open-Source Software Freeware
    • WebVim - 倾向于开发JavaScript和Web的vim。
    • vim-web - 一个前端开发工程师的vim。Open-Source Software Freeware
    • Neovim - 提高Vim可扩张灵活性。Open-Source Software Freeware hot
    • Spacevim - 模仿Spacemacs的使用方式。
    • Spf13 - 一套全方位的配置项目。
  • Vimr - Vim客户端,升级Vim体验。Open-Source Software Freeware
  • HBuilder - HBuilder是DCloud(数字天堂)推出的一款支持HTML5的Web开发IDE。Freeware hot
  • Tincta - 一个免费的文本编辑器。Freeware
  • IntelliJ IDEA - 一款Java开发集成环境。(学生免费)hot tuijian
  • Webstorm - 是jetbrains公司旗下一款JavaScript开发工具。
    • 学生免费,点击这里 查看更多。
    • 一些很好的插件
      • NodeJS - 集成Node.js,你肯定需要它,很多功能需要它。
      • EditorConfig - 帮助开发者在不同的编辑器和IDE之间定义和维护一致的代码风格。
      • Material Theme UI - Google为React开发的主题。
  • Deco IDE - React Native IDE 支持控件拖拽界面实时变更。Open-Source Software Freeware hot tuijian
  • Xamarin Studio - 免费的跨平台的C# IDE。支持iOS、Android和.net开发。Open-Source Software Freeware
  • NetBeans IDE - A free and open source IDE, mainly used for Java development, but supports many other languages and frameworks. Open-Source Software Freeware
  • Eclipse - 流行的开源IDE,主要用于Java,但为多种语言和平台的插件支持。Open-Source Software Freeware hot

开发者工具

  • WeFlow - 一个基于 tmt-workflow 前端工作流的开发工具。Open-Source Software Freeware
  • Koala - 预处理器语言图形编译工具,支持Less、Sass、CoffeeScript、Compass framework 的即时编译。Open-Source Software Freeware
  • CodeKit - 自动编译Less、Sass、Stylus、CoffeeScript、Jade & Haml等文件。
  • Hosts.prefpane - 编辑 hosts 文件的工具。Open-Source Software Freeware
  • Gas Mask - 编辑 hosts 文件的工具,更简单方便。Open-Source Software Freeware hot 必备
  • DiffMerge - 可视化的文件比较(也可进行目录比较)与合并工具。Freeware
  • Beyond Compare - 对比两个文件夹或者文件,并将差异以颜色标示。
  • Kaleidoscope - 一款很强大的文本文件和图像比较工具,同时和 git、svn 等版本控制工具能够完美的结合。
  • Fanvas - 把swf转为HTML5 canvas动画的系统。Open-Source Software Freeware
  • EnvPane - 图形终端查看环境变量的应用工具。Open-Source Software Freeware
  • Dash - 强大到你无法想象的API离线文档软件。star 5 Freeware hot tuijian 必备
  • Dlite - 简单的使用Docker的一个软件。Open-Source Software Freeware
  • SnippetsLab - 管理和组织你的代码片段。
  • StarUML - 强大的软件建模软件。
  • Vagrant Manager - 管理你本地服务。Open-Source Software Freeware
  • zeplin - 前端与设计协同工作专用工具。Freeware hot
  • Go2Shell - 从Finder打开命令行。Freeware hot
  • SecureCRT - 一款支持SSH、Telnet等多种协议的终端仿真程序。
  • MJML - 简化设计回应电子邮件的方式。Open-Source Software Freeware
  • TeXstudio - 集成创建LaTeX文档的写作环境。 Open-Source Software Freeware

正则编辑器

  • Patterns - 正则表达式编辑器。
  • Reginald - 正则表达式测试应用程序,使用 RegexKitLiteOpen-Source Software Freeware
  • Regex - 感觉是用过最漂亮的正则表达式测试工具。
  • Reggy - 正则表达式编辑器。Open-Source Software Freeware
  • RegExRX - 正则表达式的开发工具。hot

测试工具

  • Charles - 一个代理工具,允许你查看所有的HTTP和HTTPS流量。
  • Insomnia 3.0 - 漂亮的HTTP请求测试工具。Freeware
  • Cocoa Rest Client - 比Postman看起来漂亮的客户端,测试HTTP/REST endpoints。Open-Source Software Freeware
  • Paw - 先进的 HTTP 客户端。
  • Cellist - HTTP调试客户端。
  • Integrity - 轻松找到无效链接。Freeware
  • Postman - Postman 帮助我们快速测试API。Freeware hot 必备

命令行工具

  • iTerm2 - 免费的终端工具,直接替代自带的Terminal,有非常多惊人的特性。star 4 Open-Source Software Freeware hot tuijian 必备
  • cool-retro-term - 怀旧的命令行终端。Open-Source Software Freeware
  • Oh my zsh - 拥有大量的有用的功能,助手,插件,主题,等特性的命令行工具插件。Open-Source Software Freeware hot tuijian 必备
  • Glances - 在命令行中查看你系统运行状态的工具。Open-Source Software Freeware
  • Cakebrew - Homebrew 的客户端软件。摆脱命令方便安装、查看、卸载软件。Open-Source Software Freeware
  • Black Screen - 来自 21 世纪的强大终端。Open-Source Software Freeware
  • Fish Shell - 智能且用户友好的命令行终端。hot tuijian
  • oh-my-fish - 和Oh my zsh相似,建立在Fish Shell框架上。hot tuijian
  • bash-it - 一个社区的bash的框架。Open-Source Software Freeware
  • color-retro-term - 一款复古风格的终端,非常酷炫。
  • HyperTerm - 一款基于Node开发的终端软件,逼格很高。Open-Source Software Freeware
  • itunes-remote - 通过终端控制您的iTunes。Open-Source Software Freeware

版本控制

GUI

  • Gitbar - 开源,在你的菜单栏上显示GitHub贡献统计。Open-Source Software Freeware
  • GitHub Desktop - 使用GitHub的GUI应用。Freeware
  • Oh My Star - GitHub的star功能弱,比如分类,本地组织你的GitHub star!
  • GitUp - 一个简单功能强大的git客户端。star 3 Open-Source Software Freeware
  • Hub - 将GitHub接口和git命令进行包装。Open-Source Software Freeware
  • SourceTree - 强大的Git跨平台客户端。Freeware hot
  • Tower2 - 最强大的Git客户端。
  • Versions - Mac上最好的SVN管理工具。
  • Cornerstone - Mac上最佳的SVN管理工具。

版本控制系统

  • GitLab - 一个用于仓库管理系统的开源项目。Freeware hot tuijian 必备
  • Coding.net - 代码托管,项目管理,WebIDE,演示部署,开启云端开发模式,让开发更简单。Freeware
  • phabricator phabricator支持Git、SVN、HG 基于 PHP + Mysql 的开放源代码软件开发平台。Freeware
  • Gogs - 一款极易搭建的自助 Git 服务。Open-Source Software Freeware
  • Gerrit Gerrit 是一个免费、开放源代码的代码审查软件,使用网页界面。Freeware
  • GitHub GitHub代码托管,项目管理,演示部署,瞧,您现在就访问GitHub。Freeware hot tuijian 必备

数据库

  • Sequel Pro - 一个MySQL数据库管理软件。Open-Source Software Freeware hot 必备
  • MySQL Workbench - MySQL数据库官方管理软件。
  • Postico - 现代PostgreSQL客户端,漂亮功能多。
  • ElectroCRUD - MySQL数据库CRUD应用程序。Open-Source Software Freeware
  • Base 2 - 一个用于管理SQLite数据库的软件。Open-Source Software Freeware
  • Postgres.app - Mac上最简单的方法的使用PostgreSQL关系型数据库管理系统。Open-Source Software Freeware
  • PSequel - PostgreSQL数据库GUI软件。Freeware
  • Robomongo - 基于Shell的MongoDB图形化客户端管理软件。Open-Source Software Freeware
  • MongoBooster - MongoDB图形化管理软件,内嵌MongoShell,ES6语法,流畅查询及智能感知。Freeware
  • Mongo Management Studio - MongoDB图形化客户端管理软件。
  • MongoChef - MongoDB图形化客户端管理软件。Freeware
  • Chrome MySQL Admin - 一个Chrome插件,是MySQL开发的跨平台、可视化数据库工具。Open-Source Software Freeware
  • JackDB - 直接的SQL访问你所有的数据,无论在哪里。Open-Source Software Freeware
  • medis - 漂亮的Redis管理软件。Open-Source Software Freeware
  • MDB Explorer - Mac上查看编辑Access数据库的工具。
  • Datum - SQLite - Sqlite3数据库管理软件。

设计和产品

设计工具

  • Acorn - 一个像PS,全面的功能集的图像编辑器。
  • Affinity Designer - 矢量图像设计工具,可能的Adobe Illustrator的替代。
  • Affinity Photo - 光栅图像设计工具,可以替代Adobe PS图象处理软件。
  • Blender - 全功能可扩展的跨平台3D内容套件。Open-Source Software Freeware
  • Pixelmator - 强大的图像编辑器,可能PS图像处理软件的选择。
  • Sketch - 混合矢量/位图布局应用,特别适用于用户界面,Web和移动设计。star 5 hot tuijian 必备
  • inklet - 将Mac上的触摸板变成绘图板。tuijian
  • Monodraw - 一款文本图像编辑器。Freeware
  • SketchBook - 出众的绘图软件。Freeware
  • Tayasui Sketches - 专业的绘图软件。
  • Nik Collection - 专业照片后期制作工具Google收购后免费。Freeware tuijian
  • Paintbrush - 位图图像编辑器。star 2 Open-Source Software Freeware
  • Krita - 一个开源的位图形编辑软件,包含一个绘画程式和照片编辑器。 Open-Source Software Freeware
  • Vectr - 免费图形编辑器。这是一个简单而强大的Web和桌面跨平台工具,把你的设计变成现实。Freeware
  • Principle - 使用它很容易设计动画和交互式用户界面。star 5

原型流程

  • Justinmind - 功能更丰富团队协作方便。tuijian
  • MockFlow - 用于网页设计和可用性测试的在线原型设计套件。
  • Axure RP 8 - 画原型图工具,团队协作SVN方便好用。hot
  • Mockplus - 更快更简单的原型设计工具。
  • OmniGraffle - 可用来绘制图表、流程图、组织结构图、思维导图以及插图或原型。
  • XMind - 一款实用的思维导图软件。hot 必备
  • Scapple - 一款实用的思维导图软件。hot
  • Framer - 做交互原型的工具。star 5hot
  • Balsamiq Mockups - 一个快速的网页设计原型工具,帮助你更快、更聪明的工作。

其它工具

  • TinyPNG4Mac - 图片压缩专用开源工具。Open-Source Software Freeware
  • Image2icon - 将你的图片转换成图标。Freeware
  • ImageAlpha - 压缩PNG图片,去掉无效的透明。Open-Source Software Freeware
  • ImageOptim - 压缩图片,删除EXIF信息。Open-Source Software Freeware
  • Sip - 收集,整理和分享你的颜色拾色器。tuijian
  • Frank DeLoupe - 支持 Retina 的屏幕拾色器。
  • ColorSchemer - 专业的配色、调色软件。
  • IconKit - App图标自动生成器。
  • Licecap - 是一款屏幕录制工具输出GIF,录制过程中可以随意改变录屏范围。star 4 Open-Source Software Freeware hot 必备
  • GIPHY Capture - 免费软件的捕捉和分享图片在桌面上。Freeware
  • Skitch - 截图附带强大的标注功能。Freeware hot
  • 截图(Jietu) - 截图附带强大的标注功能,腾讯作品。star 5 Freeware tuijian 必备
  • Snip - 高效的截图工具,支持滚动截屏,腾讯作品。Freeware tuijian
  • iPic - 上传插图链接分享。Freeware
  • Iconjar - 图标管理软件,带组织和搜索功能。star 5 Freeware tuijian
  • RightFont - 字体管理工具。star 4 tuijian
  • Solarized - 干净清爽的颜色主题,支持iTerm、Intellij IDEA、Vim等。tuijian

虚拟机

  • Parallels Desktop - 虽然好用但是收费机制,更新花钱、花钱、花钱。hot
  • Virtual Box - 免费、免费、免费,带NTFS读写,不用买ParagonNTFS,省100块。star 4 Freeware tuijian
  • VMWare Fusion - 强大的虚拟机,商业软件。
  • Veertu - Mac上最轻便的虚拟机,只有跑Windows才会收费。比较新,很多功能不支持。Freeware tuijian

通信

推荐一些通信工具,沟通,团队协同。
  • Franz - 一个使用 Electron开发的,可以同时登录23个平台的即时通讯软件。hot Freeware
  • QQ - QQ for Mac App。Freeware
  • WeChat - 微信 for Mac App。Freeware
  • Electronic WeChat - 调用微信接口,使用 Electron 开发的第三方漂亮开源微信应用。Open-Source Software Freeware hot
  • Skype - Skype共享、跨平台的短信和电话。
  • WeiboX - 微博第三方Mac应用。star 5 Freeware tuijian
  • 御飯 - 饭否第三方Mac应用。star 3 Freeware
  • ChitChat - WhatsApp非官方。Open-Source Software Freeware
  • Telegram - 通讯新时代。
  • Messenger - Facebook第三方聊天工具。Open-Source Software Freeware
  • Adium - 呃这个是老的集成多个平台的聊天客户端。Freeware
  • Textual - 最受欢迎的世界与我们相关的KPI应用 for OS X。
  • Gitter - 关于GitHub的项目交流,支持 Markdown,对开发者极为友好。
  • 简聊 - 企业级即时沟通工具,已经下线了,可以自己搭建一套系统玩儿。Open-Source Software Freeware
  • 钉钉 - 企业级办公通讯免费平台。Freeware
  • Slack - 团队协作,沟通工具。
  • 零信 - 随时随地工作,跨平台。
  • 今目标 - 一款面向中小企业的互联网工作平台。
  • BearyChat - 互联网团队协作,沟通工具。
  • Bitpost - 私人分散消息。它是一个p2p的去中心化和无须第三方提供信用担保协议。Open-Source Software
  • Teambition - 团队协作。提供管理任务、安排日程、查找文件、即时讨论等团队所需要的一切协作功能。Freeware
  • 日事清 - 个人日程管理,团队协作工具。日程安排,计划分配,笔记总结等。Freeware
  • Coding.net - 代码托管,项目管理,WebIDE,演示部署,开启云端开发模式,让开发更简单。Freeware
  • WeeChat - 一个命令行聊天客户端。Freeware
  • Email
    • Airmail - 快速的邮件客户端支持Mac和iPhone。
    • Foxmail - 快速的邮件客户端。Freeware hot tuijian
    • MailTags - 管理和组织邮件,日程和标签进行分类邮件。
    • N1 - 可以扩展的开源收费邮件客户端。
    • Postbox - 这个貌似也非常强大哦,关键是简洁漂亮的收费邮件客户端。
    • Polymail - 简单,功能强大,长得好看的新晋邮件客户端。Freeware
    • CloudMagic Email - 界面非常简洁的一个邮件客户端。

数据恢复

音频和视频

  • VOX Player - 免费全能音乐播放器,撸码之余听听歌是一种享受。star 5 Freeware hot tuijian 必备
  • Radiant Player - Google Play音乐播放器。Open-Source Software Freeware
  • Sonora - 一个很小的音乐播放器。Open-Source Software Freeware
  • Audacity - 免费开源的编辑音频的软件。Open-Source Software
  • Audio Hijack - 一个记录任何应用程序的音频,包括网络电话Skype,网络流从Safari,以及更多。
  • Stringed 2 - 音频编辑处理工具。
  • Mixxx - 免费的DJ软件,给你一切你需要的表演组合,名副其实的替代Traktor。Open-Source Software Freeware
  • Cog - 一个免费的开源音频播放器。Open-Source Software Freeware
  • VLC - 开源的跨平台多媒体播放器及框架,可播放大多数多媒体文件。Open-Source Software Freeware
  • XLD - 解码/解码/转换/播放各种“无损”音频文件。Open-Source Software Freeware tuijian
  • HandBrake - 高性能的视频编码和转换工具,具有很好的图形用户界面。Open-Source Software
  • MPlayerX - 媒体播放器。 star 3 Open-Source Software
  • ScreenFlow - 屏幕和视频编辑软件。
  • mpv - 媒体播放器。Open-Source Software
  • ArcTime - 跨平台字幕制作软件。hot tuijian 必备
  • Perian - 让QuickTime播放所有常见格式的免费插件。star 5 Open-Source Software hot tuijian 必备

书签阅读写作

  • Spillo - 功能强大,美观、快速网络书签网页阅读。
  • iChm - 读chm文件的软件。Freeware
  • Chmox - 读chm文件的软件。Freeware
  • CHM Reader - 读chm文件的软件。Freeware tuijian
  • Kindle App - 亚马逊 Kindle App 电子书阅读器。
  • RSS
    • Feeds 2 - 监控任何RSS。Open-Source Software Freeware
    • ReadKit - 书签RSS管理客户端。
    • Reeder 3 - RSS 服务订阅。hot tuijian 必备
    • Leaf - RSS 客户端程序。hot
    • Vienna - RSS/Atom 新闻阅读客户端。Open-Source Software Freeware
  • Markdown
    • Mou - 免费 Markdown 编辑神器。Freeware hot
    • Marp - Markdown 制作幻灯片编辑器。Open-Source Software Freeware
    • TextNut - Markdown编辑器,富文本之间自由切换。Freeware
    • MWeb - 专业的 Markdown 写作、记笔记、静态博客生成软件。hot
    • Typora - 基于 Electron 的“读写一体” Markdown 编辑器。Freeware hot tuijian
    • MacDown - 一款开源的Markdown编辑器,深受Mou的影响。Open-Source Software tuijian Freeware
    • EME - 最近刚出的一款Markdown编辑器,界面很像Chrome浏览器的界面,很简约。
    • LightPaper - 简单的Markdown文本编辑器。
    • Cmd Markdown - Cmd Markdown 编辑阅读器,支持实时同步预览,区分写作和阅读模式,支持在线存储,分享文稿网址。 Freeware
  • 笔记
    • Quiver - 程序猿的笔记本。
    • 有道云笔记 - 支持多目录,Markdown,iWork/Office预览。Freeware tuijian 必备
    • 为知笔记 - 支持Markdown,搜集整理图片链接导入文档。Freeware tuijian 必备
    • leanote - 支持Markdown的一款开源笔记软件,支持直接成为个人博客。Open-Source Software Freeware

制作电子书

  • Calibre - 丑陋的软件,但强大的软件电子书管理和转换。Open-Source Software Freeware
  • Sigil - 多平台EPUB编辑器 Open-Source Software Freeware

FTP客户端

  • Transmit - 一个FTP客户端,支持FTP + SFTP + S3。
  • Flow - 支持简单的 FTP + SFTP 客户端。
  • Yummy FTP - 专业快速,可靠的FTP客户端。
  • Cyberduck - 免费FTP,SFTP,S3和WebDAV客户端 & OpenStack Swift Client。Freeware
  • FileZilla - 跨平台的FTP,FTPS和SFTP客户端。hot

软件打包工具

  • Finicky - Web应用程序转化为苹果的应用程序。Open-Source Software Freeware
  • nw.js - 使用HTML和JavaScript来制作桌面应用。Open-Source Software Freeware hot
  • Electron - 前身是 AtomShell,使用 JS、HTML 和CSS 构建跨平台的桌面应用程序。Open-Source Software Freeware hot
  • React Native Desktop for Mac - 用 React Native 技术构建 OS X 下的桌面应用程序。Open-Source Software Freeware tuijian
  • React Native Desktop for Ubuntu - 用 React Native 技术构建 Ubuntu 下的桌面应用程序。Open-Source Software Freeware tuijian
  • AppJS - 使用 JS、HTML 和CSS 构建跨平台的桌面应用程序。Open-Source Software Freeware
  • HEX - 使用 JS、HTML 和CSS 构建跨平台的桌面应用程序,有道出品。Open-Source Software Freeware
  • AlloyDesktop - 同上,腾讯出品,给个差评。Open-Source Software Freeware

下载工具

  • Transmission - 免费的BitTorrent客户端 Open-Source Software Freeware
  • aria2 - 一款支持多种协议的轻量级命令行下载工具。Open-Source Software Freeware
  • JDownloader - 下载工具,下载文件的一键式托管。Freeware
  • You-Get - 网络富媒体命令行下载工具。Open-Source Software Freeware
  • Free Download Manager - 功能强大的下载加速器。Freeware

网盘

推荐一些有Mac客户端的网盘。
  • Dropbox - 非常好用的免费网络文件同步工具,提供在线存储服务。Freeware
  • 百度云 - 百度云客户端。Freeware hot
  • 腾讯微云 - 腾讯云客户端。Freeware
  • 坚果云 - 坚果云客户端。Freeware
  • 115 - 115云客户端。Freeware
  • 360 - 360云客户端。Freeware
  • 快盘 - 金山快盘,倒闭了? Freeware
  • owncloud - 私有云网盘。
  • Mega - 免费的云服务,提供50GB的免费存储空间。Freeware

输入法

浏览器

这里放Mac的浏览器应用
  • Safari - Mac预装自带浏览器。Freeware
  • Chrome - Chrome浏览器谷歌出品。star 4 Freeware
  • Firefox - 火狐浏览器。Freeware
  • Opera - Opera 浏览器。Freeware
  • QQ浏览器 - QQ浏览器-腾讯出品。Freeware
  • 傲游云浏览器 - 傲游云浏览器。Freeware
  • Vivaldi - Opera开发商出品新的浏览器。Freeware
  • Ōryōki - 小的web浏览器。这是一个试验性的项目,目前正在开发中Freeware

翻译工具

  • 有道翻译 - 有道词典桌面版。Freeware
  • 辞海词典 - 学单词、背单词、辞海词典。Freeware
  • eudic - 欧路词典词典。
  • iTranslate - 支持全世界超过 80 种语言发音和输出。Freeware

科学上网

假设你是个勤奋的同学,你总有一天会强烈需要它们,上帝保佑他们吧。
  • ShadowsocksX - 一个快速的隧道代理,可以帮助你绕过防火墙。Open-Source Software Freeware hot
  • ShadowsocksX-NG - 一款ShadowsocksX客户端软件。Open-Source Software Freeware,此程序是垃圾,建议放弃。
  • Lantern - 科学上网。Open-Source Software Freeware tuijian 必备 hot
  • 鱼摆摆 - 科学上网。
  • Tunnelblick - OpenVPN的免费软件。Freeware
  • GoAgentX - 科学上网。Open-Source Software Freeware
  • Surge - 科学上网。Freeware
  • 云梯 - 在圈内小有名气的VPN服务提供商。hottuijian
  • srocket - 开启科学上网。Freeware
  • LoCoVPN - 每天签到可获得2小时免费VPN加速。Freeware
  • 二师兄VPN - 提供无限流量、无限续期免费VPN账号。Freeware
  • GTX加速器 - 每天签到领取500M流量。Freeware
  • GreenVPN - 注册激活送免费VPN加速流量。Freeware
  • 风驰VPN - 无限流量、无限续期的免费VPN加速服务。Freeware
  • 开眼 - Chrome插件免费的科学上网利器。Freeware

其它实用工具

  • CheatSheet - CheatSheet 是一款Mac上的非常实用的快捷键快速提醒工具。star 4 Freeware
  • WWDC - Mac OS的非官方的WWDC APP。Open-Source Software Freeware
  • xScope - 测量、检查和测试屏幕上的图形和布局的工具。搜索你的苹果和网络,快速打开应用程序。
  • f.lux - 自动调整您的电脑屏幕,以匹配亮度。Freeware
  • Todoist - 跨平台的任务管理器与移动应用程序。
  • Karabiner - 一个强大的和稳定的OS X的键盘定制。Open-Source Software Freeware
  • Keytty - 让你通过键盘使用鼠标。
  • AppCleaner - 一个小应用程序,让你彻底卸载不需要的应用程序。Freeware tuijian
  • BetterZip 3 - 压缩解压缩工具支持格式 ZIP、TAR、TGZ、TBZ、TXZ (new)、7-ZIP、RAR。Freeware hot tuijian 必备
  • Numi - 漂亮的计算器应用。Freeware
  • SSH Tunnel - 管理你的SSH。
  • Mounty - NTFS 分区读写组件。Freeware
  • Tuxera NTFS - Mac上的NTFS文件系统驱动。
  • gfxCardStatus - 控制Mac独立显卡与集成显卡之间的切换。Freeware tuijian
  • openEmu - 模拟器,可以玩魂斗罗之类,放松回到小时候。Open-Source Software Freeware tuijian
  • Alfred - 效率神器。tuijian hot
  • Hammerspoon - 功能强大的自动化工具,Lua 脚本驱动,支持窗口管理。Open-Source Software Freeware
  • DaisyDisk - 磁盘空间使用扫描工具。
  • iStat pro - 免费的Mac OS电脑硬件信息检测软件。Freeware
  • BitBar - 支持使用各种语言将信息展示到Mac OS的菜单栏。Open-Source Software Freeware
  • ClipMenu - 一个剪贴板操作的管理器。Freeware
  • Caffeine - 实用工具,菜单栏按钮,点击休眠。Freeware
  • Itsycal - 一款简洁实用的开源日历工具。Open-Source Software Freeware
  • HTML5 Player - Chrome插件解决中国视频网站播放视频电脑发热的情况。
  • Monity - 帮助用户实时监控系统的一款非常漂亮的软件。star 3
  • BetterTouchTool - 代替默认的系统操作方式(组合键、修饰键、手势等)。Freeware
  • iStats - iStats 是一个可以让你快速查看电脑 CPU 温度,磁盘转速和电池等信息的命令行工具。Open-Source Software Freeware
  • InsomniaX - 合上盖子不眠不休,继续听歌下载。
  • NoSleep - 合上盖子不休眠,可根据是否连接电源单独设置。
  • 窗口管理
    • ShiftIt - 窗口位置和大小管理软件。star 4 Open-Source Software Freeware hot tuijian 必备
    • Moom - 多任务多窗口的软件。
    • Slate - 窗口管理器,可用JavaScript写配置。Open-Source Software Freeware
    • Amethyst - 窗口管理器(自动保持窗口大小的窗口)。Open-Source Software Freeware
    • Spectacle - 简单的移动和调整大小的窗口,和可定制的键盘快捷键。
  • 密码管理
    • 1password - 跨平台帐号密码管理软件。hot tuijian 必备
    • LastPass - 密码管理器和安全的数字笔记。
    • KeePassX - 一个免费的,开源的,体积小的密码管理器。Open-Source Software Freeware
    • MacPass - 密码管理器。Open-Source Software Freeware
  • Finder

远程协助

  • TeamViewer - 远程协助及在线协作和会议功能的软件,商业软件个人使用免费。star 4 Freeware tuijian 必备
  • tmux 终端登录远程主机的命令行工具。Open-Source Software

第三方应用市场APP

这里讨论盗版问题或者提供黑名单?,拒绝盗版从我做起,欢迎大家监督。

正版

这里只提供正版软件购买下载的应用商店。
  • HackStore - 一个类似于cydia的第三方Mac应用市场,平台拒绝盗版。star 4 tuijian Freeware
  • MacUpdate Desktop - 管理/更新/下载App,跟踪优惠信息。star 4
  • homebrew-cask - 体验通过命令行安装Mac软件的工具。

应用商店黑名单

第三方应用市场APP黑名单,存在盗版软件传播和下载,拒绝盗版从我做起,欢迎大家监督它们。

Mac软件下载网站

这里主要是推荐一些软件下载的网站,还有一些Mac OSX软件分享网站

正版/介绍

盗版软件下载网站黑名单

上面有大量的开源软件或者免费软件,拒绝盗版从我做起,下面被删除的网站提供大量破解软件下载,欢迎大家监督它们。
  • 玩转苹果:http://www.ifunmac.com
  • Mac软件下载站:http://www.pshezi.com
  • MacPeers:http://www.macpeers.com
  • Mac志:http://www.isofts.org
  • Mac软件分享:http://www.waitsun.com
  • AppKed:http://www.macbed.com
  • 苹果软件园:http://www.maczapp.com
  • Mac精品软件:http://xclient.info/
  • Macx:http://www.macx.cn/
  • 腾牛网:http://www.qqtn.com/mac/r_17_1.html
from https://github.com/jaywcjlove/awesome-mac
---------------

现在这里只介绍我入前端坑以来,外加我其它工作中常用使用的效率工具。
  我的工作环境是从Windows转向Mac的,用了Mac之后回不去了,Mac对于不撸游戏的玩家,要比Windows出众太多,所以这里只介绍我的电脑里面有的软件,但是很多软件是跨平台Windows上面也是有的哦。

编辑器
1. SublimeText(Windows/Mac)可以长期免费试用
这个工具已经很火了,我之前是99%的码是这上面撸出来的。关键是它的小巧、简洁、快枪手,长大的文本打开速度也是杠杠的。编码垒字的神器,还能览图/文件对比/....
拥有插件扩展机制,在它上面有一系列特别好用的插件,其中最喜欢的插件是  PlainTasks 我用它做一些简单的任务管理,比如写日报等

2. Atom (Windows/Mac)免费
这个软件也有很多人用。最近用得也特别多,最主要是这个软件我拿它开发ReactNative相关的项目,对ReactNative开发有个官方插件对调试代码提示都比较友好,Atom这个软件我有些不喜欢,它启动太慢了,大的文本文件打开要非常之久,无法忍受,没有办法ReactNative官方给它退出了个插件Nuclide。所以我一直用它,不过呢界面和代码高亮其实我挺喜欢的,啥时候能优化一下性能,我估计就抛弃的Sublime,虽然我已经抛弃Dreamweaver....。

3.Vim (Windows/Mac)免费
这个是个古老的编辑器,我接触到它的时候,其实是看到一个PHP程序猿在使用它来撸码,然后我接触到服务器部署等问题的时候,经常会使用它改一些配置和临时更改一些文件。很显然我已经掌握了它的使用。如果你使用它来做前端开发你需要一系列插件帮助你提供效率。在我的这个仓库里面有插件的各种玩儿法https://github.com/jaywcjlove/vim-web。

4.HBuilder(Window/Mac)免费
剩下就是这个国人开发的编辑器了,通常带新手的时候我建议他们安装这个编辑,因为上面的JS提示等各种很优秀,其实过往的一个软件Webstorm同样优秀,为啥不推荐它呢,主要它是个收费软件,身为程序员不建议你破解它,本着支持国货的态度,所以推荐HBuilder。

5. 其它我不用的优秀编辑器:
    a). Adobe推出的Brackets(Window/Mac)免费/开源编辑器,这个是它的仓库https://github.com/adobe/brackets/,它的官网在这里 http://brackets.io
    b). 微软推出的Visual Studio Code(Window/Mac)免费/开源编辑器,https://github.com/Microsoft/vscode,你可以去它的官网去看看它的介绍http://code.visualstudio.com

命令行工具Terminal
1. iTerm(Mac)免费
它是 OS X 下一款开源免费的的终端工具,直接替代自带的Terminal。这个可是Mac下最好用的终端工具了,没有之一,堪称神器,尚方宝剑😄。官网在这里:http://www.iterm2.com,它的特性太多了,如智能查找、切分屏幕、标签变色、智能选中、命令自动补齐、查看命令历史、全屏展示所有的tab等等。作为一个前端开发工程师,其实你慢慢的发现终端工具你使用越来越频繁了,所以你需要一个趁手的工具来高效完成你的工作。

2. oh my zsh
这个之前介绍了,我还为它发了一篇微信文章《前端工程师也需要zsh》点击进去看看?里面介绍了安装和使用方法。
官网:http://ohmyz.sh
Github: https://github.com/robbyrussell/oh-my-zsh


版本控制Git/SVN
        Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。我已经多年不使用svn了,其它的版本控制工具我也没有使用过,如果你还不知道它,或者不能使用它我也不能说你什么。
官网在这里:https://www.git-scm.com/
        通常情况下我不太使用GUI,但是一般我在带新手的时候先建议他们安装GUI,然后慢慢学习命令行下操作。在git 官网上这种GUI工具多达十几款,在Mac平台我推荐一两款好用的软件GUI,官网GUI客户端列表:https://www.git-scm.com/downloads/guis。

1. DiffMerge (Windows/Mac/Linux)免费

DiffMerge 是一款可视化的文件比较(也可进行目录比较)与合并工具。 该软件主要具有文件差异比较、自动化的文件合并、以及文件夹差异比较这三大功能。这里下载:http://sourcegear.com/diffmerge/


2. SourceTree (Windows/Mac)免费

官网在这里:https://www.sourcetreeapp.com/


3.Gitup(Mac)免费开源

好玩的Gitup是 Mac OS X 的全功能开源 Git 客户端,提供快速,安全的操作,直接在硬盘上与 Git 数据库交互,操作库的图而不是操作 commits,官网在这里:http://gitup.co/



4. Cornerstone(Mac)收费工具
Cornerstone是Mac上最佳的SVN管理工具

5.Versions(Mac)收费工具
Versions是一款Mac平台下非常棒的SVN同步管理客户端

数据库

1. Sequel Pro(Mac)免费
Sequel Pro for Mac是一款Mac平台的MySQL管理工具,sequel pro for mac是MySQL数据库管理应用程序,官网在这里:http://www.sequelpro.com/


2. Chrome MySQL Admin免费
这个是一个Chrome插件,是MySQL开发的跨平台、可视化数据库工具。你可以翻墙,通过Chrome应用商店下载。


3. Robomongo(Windows/Linux/Mac)可以免费使用
Robomongo是一个开源的,基于Shell的MongoDB图形化客户端管理软件,主要由C++语言编写成,可运行在Windows,Linux和Mac OS X系统上。由于它内置了JavaScript引擎,所以在MongoShell中执行的任何操作都可以同样的在Robomongo的Shell中执行,最值得一提的是,它支持直接对数据以json方式浏览和修改,非常方便。官网在这里:https://robomongo.org/



设计/产品

1. Sketch(Mac)收费

它是一款mac平台下轻量,强大的矢量设计软件。很显然我已经放弃PS和AI,他们太臃肿和收费太贵。还有人把这个当作产品经理用来画原型,我个人看这个是不合理的,他是一个UI设计软件画原型其实时间成本太高,为什么有产品经理用它来画原型呢,说明它使用之简单,之漂亮。官网:http://www.sketchapp.com

这个是我常用的设计软件,已经放弃了PS。啊...


2. Sketch Toolbox(Mac)开源免费

它是一款能够让你在一个地方集中查找、下载、安装Sketch插件的工具。在这里啦:https://github.com/buzzfeed/Sketch-Toolbox

3. Affinity Designer(Mac)收费

它是一款专业的设计绘图工具,适用于苹果操作系统,主要用于矢量图形的绘制,适用于图标、UI 设计、网站设计、宣传素材等图像的制作,具有较强的易用性,操作也十分方便。


4. Icon Slate(Mac)免费

是一款让您轻松创建,输入和输出多种格式电脑和移动终端程序图标的图标制作工具。主要是能输出ico格式的哦,

5. IconJar(Mac)免费

是一个可以帮助设计师搜索、收集、管理的素材工具,可以极大的提高设计师们的素材库使用效率,减少寻找有效素材的时间,提高工作效率,该工具目前进支持Mac系统。官网:http://geticonjar.com


6. Justinmind(Mac)免费

画原型图工具,justinmind相比axure功能更丰富强大,但是团队合作比较难用主要是同步比较慢,jm功能丰富相对新手入手就有入门学习成本。好像不支持SVN。官网:http://www.justinmind.com


7. Axure RP 8(Windows/Mac)收费

画原型图工具,它能使用SVN工具,进行版本控制,使用成本。官网:http://www.axure.com


8. Mockplus(Windows/Mac)收费

是更快更简单的原型设计工具。交互快、设计快、演示快、上手快。拖一拖链接完成交互设计,放一放组件完成原型图,扫一扫二维码在手机中演示。https://www.mockplus.cn

9. XMind
是一款实用的思维导图软件,简单易用、美观、功能强大,拥有高效的可视化思维模式,具备可扩展、跨平台、稳定性和性能,真正帮助用户提高生产率,促进有效沟通及协作。http://www.xmind.net/

10.PostMan:是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件。
11.Gliffy Diagrams:是一款相当实用的Chrome套件,而且可以离线使用,透过这个工具可以绘制各种图表,且透过模组化的物件来制作图表,将大大提高工作效率,节省时间成本。
12.RoboCompass:同上这个是在先版本需要翻墙。

正则表达式编辑器

1.Reginald
2.Reggy
2.RegExRX


其它软件

1.Homebrew(Mac)开源免费

可以理解为Ubuntu上的apt-get,用这个软件可以轻松的装其他的Mac上的软件。主要是服务程序员的,这是一个非常重要的对于程序员来说不可或缺的Mac软件。官网在这里:http://brew.sh

2.Cakebrew(Mac)开源免费

这个是方便管理Homebrew的GUI软件,不用在命令行安装程序,并且可以方便的查看本地通过Homebrew安装了那些软件,搜索安装并软件。官网在这里:http://www.cakebrew.com


3. CheatSheet(Mac)免费

CheatSheet 是一款Mac上的非常实用的快捷键快速提醒工具,你只需要按住Command键,就会弹出当前应用的所有快捷键列表,所以你记不住一些软件的快捷键没有关系,只需要使用CheatSheet,随时提醒你当前软件的所有快捷键,比如Safari、Finder、Photoshop,简单实用并且完全免费,支持中文,非常不错!这里下载:https://www.mediaatelier.com/CheatSheet/


4. TeamViewer(跨平台)个人使用免费

用于实现远程支持、远程访问、远程管理、家庭办公及在线协作和会议功能的软件。支持Windows、Mac、Linux、Chrome OS、iOS、Android、Windows Mobile和BlackBerry平台。官网Dash是一个API文档浏览器( API Documentation Browser),以及代码片段管理工具(Code Snippet Manager)在这里:https://www.teamviewer.com/zhCN/

5. Dash

Dash是一个API文档浏览器( API Documentation Browser),以及代码片段管理工具(Code Snippet Manager),Dash在Mac App Store里面免费提供下载。


6. licecap(Windows/Mac)可以免费使用

是一款屏幕录制工具,支持导出 GIF 动画图片格式,轻量级、使用简单,录制过程中可以随意改变录屏范围,本文中Gif图片就是这个软件生产出来的。官网:http://www.cockos.com/licecap/

7.Leaf(Mac)收费

Leaf Mac版是OS X 上一款 RSS 客户端程序,也是一款轻型阅读软件,界面很漂亮,UI和交互都挺新颖,对于轻型阅读,新颖的交互形式很美观很大方。Mac App store中可以购买。


8. VOX:Mac 上最好用的免费全能音乐播放器,撸码之余听听歌是一种享受。
9. Lantern:免费的翻墙工具
10.Grappler:Grappler是一款可以从网页上抓取音乐和视频的软件,支持Flash和HTML5的视频格式。
11.wxmp:《Chrome插件优化在微信公众账号中发文章》介绍在这里,我已经生成了Wxmp.crx 文件,这里下载:https://github.com/jaywcjlove/wxmp/releases


Mac上的软件下载网址推荐

类似于iOS上Cydia一样的第三方软件商店:http://hack-store.com/
玩转苹果:http://www.ifunmac.com/
玩儿法:http://www.waerfa.com/
Mac软件下载站:http://www.pshezi.com/
MacPeers:http://www.macpeers.com/
Mac志:http://www.isofts.org/
Mac软件分享:http://www.waitsun.com/
AppKed:http://www.macbed.com/
苹果软件园:http://www.maczapp.com/
----------------

A curated list of awesome applications, softwares, tools and shiny things for macOS.  


Awesome
A curated list of awesome applications, softwares, tools and shiny things for macOS.
Items marked with Open-Source Software are open-source software and link to the source code. Items marked with Freeware are free (as in free beer).

Table of Contents

Applications

Audio

  • Audio Hijack - Record audio from any application like iTunes, Skype or Safari, or from hardware devices like microphones and mixers.
  • BackgroundMusic - Record system audio, control audio levels for individual apps, and automatically pauses your music player when other audio starts playing and unpauses it afterwards. Open-Source Software Freeware
  • VOX Player - Play numerous lossy and lossless audio formats.
  • XLD - Rip/Decode/convert/play various "lossless" audio files. Open-Source Software Freeware

Backup

  • Arq - Encrypted backups to Amazon, Dropbox, Google, OneDrive, etc.
  • Carbon Copy Cloner - Create incremental and fully bootable backups of your Mac to external storage.

Bookmark Utilities

  • ReadKit - Have all your Instapaper, Pocket, etc. feeds in one place even when you're offline.
  • Spillo - Powerful, beautiful and fast Pinboard client.

Chat Clients

  • ChitChat - A native Mac app wrapper for WhatsApp Web. Open-Source Software Freeware
  • Goofy - Unofficial Facebook Messenger client. Open-Source Software Freeware
  • Telegram - A messaging app with a focus on speed and security, it’s super fast, simple and free. Open-Source Software Freeware
  • Textual 5 - An Internet Relay Chat (IRC) client. Open-Source Software

Data Recovery

  • Data Rescue - Comprehensive and professional data recovery for a multitude of scenarios.
  • DiskWarrior - Recover from filesystem corruptions when Disk Utility is out of options.

Developers

  • Anvil - Serve up static sites and Rack apps with simple URLs and zero configuration. Freeware
  • Base 2 - A GUI for managing SQLite databases.
  • Cakebrew - The Homebrew GUI App. Open-Source Software Freeware
  • CocoaRestClient - An app for testing REST endpoints. Open-Source Software Freeware
  • Dash - An API Documentation Browser and Code Snippet Manager.
  • Gas Mask - A simple hosts file manager which allows editing of host files and switching between them. Open-Source Software Freeware
  • gitbar - Open source github contribution stats on your Menu Bar. Open-Source Software Freeware
  • GitHub Desktop - A GUI for using GitHub. Freeware
  • GitUp - A simple but powerful Git macOS app. Open-Source Software Freeware
  • Hosts - Edit hosts file. Open-Source Software Freeware
  • ImageAlpha - Apply lossy compression on PNG files with or without transparency for more efficient files. Open-Source Software Freeware
  • ImageOptim - Makes images take up less disk space and load faster. Open-Source Software Freeware
  • Integrity - Easily find your website's broken links. Freeware
  • Kaleidoscope - Powerful diff and merge application supporting text, images, and folders.
  • Knuff - The debug application for Apple Push Notification Service (APNs). Open-Source Software Freeware
  • Paw - The ultimate REST client.
  • Postico - A modern PostgreSQL client.
  • Postgres.app - The easiest way to get started with PostgreSQL. Open-Source Software Freeware
  • PSequel - A PostgreSQL GUI tool. Freeware
  • QorumLogs - Swift Logging Utility for Xcode & Google Docs. Open-Source Software Freeware
  • Quiver - A delightful notebook for programmers that allows mixing rich text, code, markdown, LaTeX, and graphs.
  • Sequel Pro - A MySQL database manager. Open-Source Software Freeware
  • Sip - A simple color picker for developers.
  • SnippetsLab - Manage and organise snippets of code.
  • SourceTree - A free Git & Mercurial client. Freeware
  • Tower - The most powerful Git client.
  • Unused - An app for checking Xcode projects for unused resources. Open-Source Software Freeware
  • Vagrant Manager - Manage your vagrant machines in one place with Vagrant Manager for macOS. Open-Source Software Freeware
  • Versions - SVN GUI client for Mac.
  • WWDC - The WWDC app. Open-Source Software

E-Book Utilities

Editors

  • CotEditor - Lightweight plain-text editor for macOS. Open-Source Software Freeware
  • Emacs - Port of Emacs to work as an macOS app. Open-Source Software Freeware
  • MacVim - Vim, the text editor. Open-Source Software Freeware
  • Sublime Text 3 - The sophisticated text editor.
  • TextMate - A graphical text editor. Open-Source Software
  • VimR - Vim, refined. Open-Source Software Freeware

Email Utilities

  • Airmail - Lightning fast email client designed for El Capitan.
  • MailMate - Advanced IMAP email client, featuring extensive keyboard control and Markdown support.

Finder

  • ForkLift - File Manager and FTP/SFTP/WebDAV/Amazon S3 client.
  • Path Finder - A powerful dual-pane browser alternative to Finder.
  • Quicklook-Plugins - List of extra quicklook plugins to enable previewing more filetypes in the Finder.
  • TotalFinder - A powerful alternative to Finder.
  • XtraFinder - Adds useful features to Finder. Freeware

Games

  • Battle for Wesnoth - Turn-based tactical strategy game, featuring both single-player and online multiplayer combat. Open-Source Software Freeware
  • Boxer - The DOS game emulator that’s fit for your Mac. Open-Source Software Freeware
  • Dolphin - A powerful, Open Source emulator for Nintendo GameCube and Wii games. Open-Source Software Freeware
  • OpenEmu - Multiple Video Game System. Open-Source Software Freeware
  • Screentendo - Turn your screen into a playable level of Mario. Open-Source Software Freeware
  • Stockfish - Beautiful, powerful chess application. Open-Source Software Freeware

Graphics

  • Acorn - A very Mac-like image editor with a comprehensive feature set.
  • Affinity Designer - Vector image design tool, possible Adobe Illustrator alternative.
  • Affinity Photo - Raster image design tool, possible Adobe Photoshop alternative.
  • GIPHY Capture - Capture and share GIFs on the desktop. Freeware
  • Image2icon - Create and personalize icons from your pictures. Freeware
  • OmniGraffle - An app for creating precise, beautiful graphics.
  • Pixelmator - Powerful image editor, possible Photoshop alternative.
  • Sketch - Hybrid vector/bitmap layout application, especially useful for UI, web and mobile design.
  • Sketch Toolbox - A super simple plugin manager for Sketch. Open-Source Software
  • xScope - Tools for measuring, inspecting and testing on-screen graphics and layouts.

Productivity

  • Alfred - Boosts your efficiency and productivity.
  • BetterTouchTool - Configure gestures for mouse and actions for keyboard shortcuts.
  • ClipMenu - ClipBoard History Manager. Open-Source Software Freeware
  • CloudClip - Sync your clipboard between your Mac and your iOS devices. Freeware
  • Dropzone - Create a popup grid of customizable actions that enhance productivity on your Mac.
  • f.lux - Automatically adjust your computer screen to match lighting. Freeware
  • Fantastical 2 - Complete Calendar app replacement which uses natural language for creating events.
  • Hazel - Create rules to automatically keep your files organized.
  • HazeOver - Turn distractions down and focus on your current task.
  • HyperDock - Select individual application window.
  • Instant Translate - Translate speech and text between 100+ languages from the menu bar.
  • Karabiner - A powerful keyboard customizer. Open-Source Software Freeware
  • Keytty - Enables you to control your mouse with a few key strokes. Mouse Keys Alternative.
  • LaunchBar - Start applications, navigate folders, manipulate files, control your Mac and much more just by using the keyboard.
  • OmniFocus - An incredible task management platform for Mac, iPad, and iPhone.
  • OmniOutliner - Perfect for collecting information, outlining ideas, adding structure to any sort of writing, and much more.
  • Paste - The new way to copy & paste for Mac.
  • PopClip - Instantly copy & paste, access actions like search, spelling, dictionary and more.
  • Quicksilver - Control your Mac quickly and elegantly. Open-Source Software Freeware
  • SelfControl - Block access to distracting websites. Open-Source Software Freeware
  • Simplenote - Simple cross-platform note taking app with cloud-based syncing. Freeware
  • TaskPaper - Plain text to-do lists.
  • Telephone - A SIP softphone. Make phone calls over the Internet or your company’s network. Open-Source Software Freeware
  • TextExpander - Create custom keyboard shortcuts for frequently-used text and pictures.

Sharing Files

  • CloudApp - Capture and share files and screenshots instantly.
  • Jumpshare - Real-time file sharing app with support for instantly sharing code / Markdown, annotating screenshots, screen recording, and voice recording. Freeware
  • mac2imgur - Upload images and screenshots to Imgur. Open-Source Software Freeware
  • Transmission - Simple, lightweight, multi-platform torrent client. Open-Source Software Freeware

Terminal

Utilities

  • 1Password - Password Manager and Secure Wallet.
  • Amphetamine - Prevents macOS from automatically going to sleep, with lots of configurations. Freeware
  • AnyBar - A menubar status indicator. Open-Source Software Freeware
  • APNGb - .apng image assembler/disassembler app. Open-Source Software Freeware
  • AppCleaner - Uninstall your apps easily. Freeware
  • Arthur - Safely optimize some of your Mac's hidden settings.
  • Bartender - Organize your menu bar apps.
  • Batch Image Resizer - Resize a large number of images quickly on your computer. Freeware
  • BeardedSpice - Control web based media players with the media keys found on Mac keyboards. Open-Source Software Freeware
  • BetterZip - A very capable and full-featured archive manager.
  • BitBar - Display output of any script to the menu bar. Open-Source Software Freeware
  • Burn - No-nonsense burning of Data/Audio/Video CDs and DVDs, including copying. Open-Source Software Freeware
  • CheatSheet - Know your short cuts. Freeware
  • CommandQ - Never accidentally quit an app again.
  • ControlPlane - Automate running tasks based on where you are or what you do. Open-Source Software Freeware
  • DaisyDisk - Analyze disk usage and free up disk space.
  • Deliveries - Beautiful and simple package tracking.
  • DisableMonitor - Easily disable or enable a monitor on your Mac. Open-Source Software Freeware
  • EtreCheck - Output system information and configuration to get more informed help from Apple support professionals. Open-Source Software Freeware
  • Finicky - App that allows you to set rules that decide which browser is opened for every link. Open-Source Software Freeware
  • Fluid - Turn web applications into Mac applications.
  • gfxCardStatus - Menu bar app to monitor and switch between integrated and discrete GPUs on MacBook Pro. Open-Source Software Freeware
  • Helium - A floating browser window that allows you to watch media while you work. Open-Source Software Freeware
  • InsomniaX - Prevents macOS from automatically going to sleep (on lid closing or idle timeout). Freeware
  • iStat Menus - An advanced system monitor for your menubar.
  • Kawa - A better input source switcher with shortcuts. Open-Source Software Freeware
  • KeepingYouAwake - Menu bar utility that prevents Mac from going to sleep. Open-Source Software Freeware
  • Keka - Compress to and extract from many archive file formats. Open-Source Software Freeware
  • Knock - Unlock your Mac quickly and securely. Freeware
  • LaunchControl - Create, manage and debug launchd services. Freeware
  • Loading - See when apps are using your network in your Mac menubar. Open-Source Software Freeware
  • Little Snitch - Protect your privacy.
  • MacDown - Markdown editor. Open-Source Software Freeware
  • Mackup - Keep your application settings in sync. Open-Source Software Freeware
  • MacPass - Password Manager. Open-Source Software Freeware
  • Media Converter - Simple (drag and drop) but advanced media conversion. Open-Source Software Freeware
  • Menubar Colors - Convenient access to the system color panel. Open-Source Software Freeware
  • MenuMeters - A set of CPU, memory, disk, and network monitoring tools for macOS. Open-Source Software
  • Monodraw - A powerful ASCII art editor.
  • Mounty - A tiny tool to re-mount write-protected NTFS volumes under macOS 10.9+ in read-write mode.
  • Noizio - Ambient sound equalizer for relaxation or productivity.
  • Notational Velocity - Store, retrieve and sync notes within a minimal GUI. Open-Source Software Freeware
  • Noti - Receive Android notifications on your mac (with PushBullet). Open-Source Software Freeware
  • Numi - Beautiful calculator app. Freeware
  • OnyX - Multifunction utility to verify disks and files, run cleaning and system maintenance tasks, configure hidden options and more. Freeware
  • Paparazzi - A small utility that makes screenshots of webpages. Freeware
  • Paragon NTFS - World fastest NTFS driver.
  • Radio Silence - Simple to use firewall and network monitor.
  • Microsoft Remote Desktop Connection Client - Remote Desktop Connection Client lets you connect from your Macintosh computer to a Windows-based computer.
  • Site Sucker - Automatically download websites from the Internet.
  • ShiftIt - Managing windows size and position. Open-Source Software Freeware
  • SlowQuitApps - Prevent accidental Cmd-Q. Open-Source Software Freeware
  • SmartCapsLock - Makes the Caps Lock key smarter, so that when the key accidentally gets activated and you START YELLING even though you don't want to, you can just select the yelling-text and press the key again to instantly fix its case instead of typing everything all over again.
  • Soulver - Beautiful expressive calculator.
  • SSH Tunnel - Manage your SSH tunnels, tightly integrated with macOS Keychain, secure and intuitive.
  • TeamViewer - Remotely control another computer.
  • TextBar - TextBar is a tiny but powerful app that lets you add any text to your MenuBar.
  • Typeeto - Lets you use your Mac's keyboard as a bluetooth keyboard to type on another devices.
  • Typora - Another minimal Markdown editor. Freeware
  • Ukelele - Unicode Keyboard Layout Editor. Freeware
  • Übersicht - Run system commands and display their output on your desktop as widgets. Open-Source Software Freeware
  • The Unarchiver - Unarchive many different kinds of archive files. Open-Source Software Freeware
  • Wineskin - Run Windows applications and games on your Mac. Open-Source Software Freeware

Video

  • HandBrake - High performance video encoding and conversion tools with a nice GUI. Open-Source Software
  • mpv - Media player. Open-Source Software
  • ScreenFlow - Screencasting and video editing software.
  • Subler - Mux and tag MP4 files. Open-Source Software Freeware
  • Subtitlr - Drag and drop subititle download utility. Open-Source Software

Window Management

  • Amethyst - Window manager (automatically keep windows sized in grids). Open-Source Software Freeware
  • Divvy Window Manager - Window management for tiling your windows.
  • Hammerspoon - Extremely powerful scripting engine for macOS. Open-Source Software Freeware
  • kwm - Tiling window manager with focus follows mouse. Open-Source Software Freeware
  • Moom - Move and zoom windows, super light weight and customizable.
  • Phoenix - A lightweight window and app manager scriptable with JavaScript. Open-Source Software Freeware
  • Spectacle - Easily organize windows without using a mouse. Open-Source Software Freeware
  • Stay - Resize/position windows when displays change.

Others

  • Aerial - Apple TV Aerial Screensaver for Mac. Open-Source Software Freeware
  • Catch - The easiest way to use ShowRSS. Open-Source Software Freeware
  • Clocker - Check time in multiple timezones from your Mac menubar. Open-Source Software Freeware
  • gInbox - gInbox is a wrapper made for Mac around Inbox by Gmail. Open-Source Software Freeware
  • hacker-menu - Hacker News Delivered to Desktop. Open-Source Software Freeware
  • PopKey - Allows easy access to animated GIFs from the Mac menu bar.
  • Sonora - A minimal, beautifully designed music player. Open-Source Software Freeware
  • SoundCleod - A browser for SoundCloud. Open-Source Software Freeware
  • Juice - Make your battery information a bit more interesting. Open-Source Software Freeware
  • Transmit - A FTP client.
  • Vienna - RSS/Atom newsreader. Open-Source Software Freeware

Command Line Utilities

  • Awesome macOS Command Line - Use your macOS terminal shell to do awesome things.
  • m-cli -  Swiss Army Knife for macOS.
  • Mac-CLI -  macOS command line tools for developers.
  • Mac macOS Manual Pages - Apple's official man page reference which lists all general commands in Section 1.
  • mas - A CLI for the Mac App Store. Open-Source Software Freeware

macOS Utilities

Setup

DevMyMac

laptop

mac-dev-setup

macOS 10.9 Mavericks Setup

macOS 10.10 Yosemite Setup

macOS 10.11 El Capitan Setup

Security

  • VeraCrypt - Free and open source disk encryption software. Open-Source Software Freeware
  • Viscosity - Fully-featured OpenVPN client, ready for enterprise deployment.

Miscellaneous

Discussion Forums

Apple

IRC channels

MacRumors

Reddit

from https://github.com/iCHAIT/awesome-macOS
------------------

Awesome macOS

A curated list of awesome applications, softwares, tools and shiny things for macOS.

Chat

Application Description GitHub App Store
Slack A messaging app for teams
App Store
Skype Skype keeps the world talking, for free

Development

Application Description GitHub
Anvil Anvil is a beautiful menubar app for managing local websites
FileZilla The free FTP solution
ImageOptim GUI image optimizer for Mac GitHub
MAMP One-click-solution for setting up your personal webserver
Postman Postman helps you develop APIs faster
Sequel Pro MySQL database management for Mac OS X GitHub
Sip The best way to collect, organize & share your colors - App Store GitHub
SourceTree A free Git & Mercurial client for Windows or Mac
Unity Game Engine

Editors

Application Description GitHub
Atom A hackable text editor for the 21st Century GitHub
Brackets A modern, open source text editor that understands web design GitHub
IntelliJ IDEA Capable and Ergonomic Java IDE
Sublime Text 3 Sublime Text is a sophisticated text editor for code, markup and prose
Visual Studio Code Code editing. Redefined. GitHub

Media

Application Description GitHub App Store
Audacity Audacity is free, open source, cross-platform software for recording and editing sounds GitHub
VLC media player VLC is a free and open source cross-platform multimedia player that plays most multimedia files as well as DVDs, Audio CDs, VCDs, and various streaming protocols. GitHub

Terminal

Application Description GitHub
iTerm2 iTerm2 is a terminal emulator for Mac OS X that does amazing things GitHub

Utilities

Application Description GitHub App Store
Caffeine Don't let your Mac fall asleep
App Store
The Unarchiver The Unarchiver is a much more capable replacement for "Archive Utility.app
App Store

from https://github.com/joshbuchea/awesome-macos
-----------

some useful mac things:scripts, shells, doc, shortcut keys  


awesome-mac-things License

GitHub stars GitHub forks
some useful things in MAC OS.
  • scripts
  • shells
  • tips of some common useful apps

Requirement

  • Linux
  • Mac
  • git1.7+

Install

Three methods:
  • curl -s "https://raw.githubusercontent.com/superhj1987/awesome-mac-things/master/get.sh" | bash -s
  • Download the source and make install
  • Download the source and set bin to the System Path to use the common usage shells

Uninstall

mthings uninstall

Usage

  • mthings
show system command
  • mtings list
show command list
  • mthings update
update mthings
  • mthings show_doc [doc_name]
show the contents of the specified doc

Docs and Commands

⌚️ Document

  • useful_shells
some mac useful shells
  • shortcut_keys_intro
introduce mac shortcut keys
  • st_shortcut_keys
SublimeText2 shortcut keys
  • zsh_tips
zsh useful tips
  • ssh_timeout_solution
solution of ssh timeout

☕️ bin

  • show_memory_usage
show memory usage in python`
  • git_init
init git repository
Usage: git_init [git_repos_url] [to_dir]
Option:
  • when git_repos_url is empty,init .gitignore, otherwise clone the repository to [to_dir],and int .gitignore
  • when to_dir is empty, the to_dir is the end of the git_repos_url,for example mac_useful_thins.git
Example:
git_init git@github.com:superhj1987/mac_useful_things.git mac_useful_things
  • rm_ds
delete .DS_Store in current dir
  • show_net_stats
show the count of each status connection,including time_wait、close_wait and so on.
  • generate_md_contents
generate the contents of a markdown doc.The doc's format meets:the first line is the title:# [title],the other title such as ##,###,####... is the contents and there must be a blank between #,##,###... and title text. The example docs are in the test dir.
Usage: generate_md_contents [-a] doc_name [to_doc_name]
Option:
  • -a means generate the contents with append the anchor to the sub title.
  • when to__doc_name is empty,the generate content will overwrite the doc_name file, otherwise the content will be in the to__doc_name file.
Example:
generate_md_contents ../test/test_doc.md test__doc_with_contents.md
  • change_git_origin_remote
change current origin remote repos to a new url
Usage: change_git_origin_remote [new_git_repos_url]
  • word_count
get the word total count in a doc
Usage: word_count [doc_name]
from https://github.com/superhj1987/awesome-mac-things
-----------

Awesome Open Source Mac Apps

Open-Source Mac Apps

List of open-source Mac apps. Managed by Jeffrey Jackson
Feel free to contribute: issues or pull requests.
🔶 Swift projects

OS X Frameworks

Visit this supporting repository here: jeffreyjackson/mac-frameworks

OS X Apps

Communication

Editors

Games

Mac Exclusives

For Developers

Tools

OS X versions, GUIs and other Wrappers

Productivity and Others

Apple Sample Projects

Apple Sample Projects

Apple Open Source

Apple Open Source

from https://github.com/jeffreyjackson/mac-apps
----------

OS X command line tools for developers – The ultimate tool to manage your Mac. It provides a huge set of command line commands that automatize the usage of your OS X system.  

Mac CLI

 macOS command line tools for developers
⭐️ Now with modularity and plugins! You can check the plugins folder: /mac-cli/plugins
Contributions to add new plugins and keep improving the existing ones are welcome and very much appreciated!
image
The ultimate tool for developers to manage their Mac. It provides a huge set of command line commands that automate the usage of your macOS system. When you run a function, the executed command is displayed and that helps you memorize each of the Utilities for future usage.

Installation in 1 Simple Step - Including configuration wizard!

Via curl
sh -c "$(curl -fsSL https://raw.githubusercontent.com/guarinogabriel/mac-cli/master/mac-cli/tools/install)"
Via wget
sh -c "$(wget https://raw.githubusercontent.com/guarinogabriel/mac-cli/master/mac-cli/tools/install -O -)"
Then, re-open your terminal client. You will be able to run all the commands listed below, for example:
mac help

Configuration

The configuration is done when you install Mac CLI for the first time though the installer configuration wizard. After that, you can update your Mac CLI configuration by editing the following file: /usr/local/bin/mac

Requirements

These are the requirements to be able to run all the commands (the dependencies/requirements are installed when you install Mac CLI for the first time):
  • Homebrew
  • Git
  • Python
  • Pipe Viewer (pv)

Update

You can update Mac CLI to the latest version by running:
sh -c "$(curl -fsSL https://raw.githubusercontent.com/guarinogabriel/mac-cli/master/mac-cli/tools/update)"

Uninstallation

You can uninstall Mac CLI by running:
sh -c "$(curl -fsSL https://raw.githubusercontent.com/guarinogabriel/mac-cli/master/mac-cli/tools/uninstall)"

Integrated Projects

The following amazing projects have been integrated on the mac script (all the integrated projects are optional and can be installed through the installation wizard):

Help / Commands List

Command Description Arguments
mac help List all available commands in mac script

General Commands

Command Description Arguments
mac update Install macOS software updates, update installed Ruby gems, Homebrew, npm and their installed packages
mac lock Lock
mac restart Restart macOS
mac sleep Sleep mode
mac shutdown Shutdown
mac presentation Prepare MAC for presentation: minimize all apps, close browsers, send files from desktop and downloads to trash and set not disturb mode
mac time Show clock at top right position in Terminal/iTerm
mac screensaver Start screensaver
mac folders:list List folders in current directory with their current size
mac folder:size Calculate current folder size
mac folders:remove-empty Remove empty subdirectories
mac apps:close-all Close all opened apps
mac bluetooth:status Get the bluetooth status
mac bluetooth:enable Enable bluetooth
mac bluetooth:disable Disable bluetooth
mac wifi:status Get the wifi status
mac wifi:scan Scan available wifi networks
mac wifi:enable Enable wifi
mac wifi:disable Disable wifi
mac wifi:password Get password for current wifi network
mac dock:add-space Add blank space to dock
mac apps:app-store Get list of installed apps from App Store
mac eject-all Eject all mounted volumes and disks
mac battery Get battery status
mac info Get macOS version information
mac hidden:show Show hidden files
mac hidden:hide Hide hidden files
mac find:text X Find exact phrase recursively inside directory X = Text string
mac find:biggest-files Find biggest files inside directory
mac find:biggest-directories Find biggest directories inside directory
mac zip:extract X Extract Zip file to current folder X = Zip file to extract
mac gzip:compress X Compress current file using Gzip X = File to compress
mac gzip:extract X Extract Gzip file to current folder X = Gzip file to extract
mac tar:compress X Compress X file/directory using tar with progress indicator X = File or directory
mac tar:extract X Extract tar file to current folder X = Tar file to extract

Search Utilities

Command Description Arguments
mac find:recent N Find files modified in the last N minutes N = number of minutes
mac find:duplicated Find duplicated files
mac search:replace X Search and replace string in file X = File to perform the search and replace operation

Network Utilities

Command Description
mac speedtest Internet connection speed test
mac speedtest:infinite Run internet speed test each 5 minutes
mac ports List of used ports
mac ip:local Get local IP address
mac ip:public Get public IP address

LAMP (Linux, Apache, MySQL, PHP) Utilities

Command Description Arguments
mac mysql Open Sequel PRO app)
mac mysql:cli Start MySQL CLI with autocompletion and syntax higlighting
mac mysql:list List all MySQL databases
mac mysql:dump-all Export all MySQL databases to individual files
mac mysql:dump X Export MySQL database to current directory X = database name
mac mysql:import X Import MySQL database X = SQL file
mac mysql:import-table X Import single MySQL database table X = SQL file containing database table
mac mysql:create X Create MySQL database X = Database name
mac mysql:drop X Remove MySQL database X = Database name
mac mysql:duplicate X Duplicate MySQL database X = Database name
mac mamp:start Start MAMP Server (Apache and MySQL)
mac mamp:stop Stop MAMP Server (Apache and MySQL)
mac mamp:restart Restart MAMP Server (Apache and MySQL)
mac php:syntax Check PHP Syntax for all PHP files in current location
mac php:info Get PHP info on command line
mac hosts:edit Edit hosts file

SSH Utilities

Command Description Arguments
mac ssh:download-file X Download file from remote server through SSH X = Path of the remote file to download
mac ssh:download-folder X Download entire folder from remote server through SSH X = Path of the remote folder to download
mac ssh:download-database X Download MySQL from remote server through SSH X = Name of the database to download
mac ssh:sync:local X Sync local folder with remote folder using rsync through SSH (download remote folder to local folder) X = Path of the remote folder to sync to local folder
mac ssh:sync:remote X Sync remote folder with local folder using rsync through SSH (upload local folder to remote folder) X = Path of the remote folder to sync from local folder
mac ssh:upload X Upload file to remote server through SSH X = Path of the file to upload to the remote server
mac ssh:public-key Copy SSH Public Key
mac ssh:list List all the saved SSH credentials

Web Development Utilities

Command Description Arguments
mac dev:monitor X Monitor file changes (for example: log files) X = File to monitor
mac dev:compass:compile Compile current folder using compass
mac dev:optimize-images Optimize all images in current directory and subdirectories
mac dev:css:convert-to-scss Convert CSS file to SCSS

Performance and maintenance Utilities

Command Description
mac system Show system information to review mac performance
mac temp Show temperature, fan and battery statistics
mac memory See memory usage sorted by memory consumption
mac trash:empty Empty trash
mac trash:size Calculate trash size
mac desktop:cleanup Remove all files and directories from Desktop directory
mac downloads:cleanup Remove all files and directories from Downloads directory

iTerm / Terminal Utilities

Command Description
mac iterm:tab-title Set title of current iTerm tab

Git Utilities

Command Description
mac git:config Display local Git configuration
mac git:open Open current repository on Github
mac git:create:branch Create branch based on current branch
mac git:branches:date Get last update date for all branches in current project
mac git:undo-commit Undo latest commit
mac git:log See latest commits IDs and titles for current branch
mac git:branch See all branches
mac git:branch:rename Rename Git branch
mac git:branch:remove-local Remove local Git branch
mac git:branch:remove-remote Remove local and remote Git branch
mac git:remove Remove Git from current project
mac git:settings Check Git settings
mac git:add-removed Add removed files to staged files
mac git:size Get size for current Git directory

Web Utilities

Command Description Arguments
mac web:download-images Download all images from website to current directory

Homebrew Utilities

Command Description
mac brew Get a list of installed Homebrew packages

Xcode Utilities

Command Description
mac xcode:cleanup Cleanup Xcode files to free up hard disk space

Image Utilities

Command Description Arguments
mac image:generate:mobile-app-icons X Y Generate mobile app icons X = Original image file, Y = Output path

Magento Utilities

Command Description
mac magento:version Get Magento version from current project on command line
mac magento:customer:create Create Magento customer with sample address and sample credit card information
mac magento:fix-permissions Fix Magento permissions for files and directories
mac magento:order:create Create sample order in Magento
mac magento:shell-script:create Create script in Magento shell folder to be run from command line
mac magento:gitignore:create Create gitignore file for Magento project
mac magento:url-rewrites:enable Enable Magento URL rewrites
mac magento:url-rewrites:disable Disable Magento URL rewrites
mac magento2:install Install Magento 2 in current folder

from https://github.com/guarinogabriel/Mac-CLI
------------

Currated list of awesome mac apps 

Awesome Mac Apps

Curated list of awesome mac apps

Creative and Ideas

  • Audio Hijack - records audio from essentially any device.
  • Camtasia - is a screen recorder with some light duty video editing tools.
  • Fission - lossless audio editing.
  • Mindnode - is a great way to visualize ideas and brainstorm. A good way to connect the dots.
  • PageLayers - is an app that will take a webpage and convert it into a layered PSD file.
  • Sketch - lightweight web mock-up tool.
  • VLC - open source multimedia and video player.
  • Writer Pro - is a minimalist notetaking and distraction free writing tool.
  • xScope - is engineered for measuring, inspecting, and fine tuning graphics.

Utilities

  • A Better Finder Rename - is a great way to mass rename files based on predetermined sorting and filtering, as well as complex regular expressions.
  • Better Snap Tool - allows you to quickly resize windows with hotkeys.
  • ChronoSync - commercial grade file sync. ChronoSync is a nice GUI with some added features on rsync.
  • CleanApp - is essentially a disk clean up and app un-install utility.
  • Cocktail - is a utility to clear cache, fix permissions, adjust settings, and optimize OS X.
  • Divvy - is a nice compliment to Better Snap and it has a nice grid structure for arranging multiple windows.
  • ExpanDrive - is a good way to connect to S3, Google Drive, Dropbox, Box, OneDrive etc. without installing all the standalone apps.
  • iStat Menus - is a system monitor that lives in your menubar. Useful for monitoring network traffic and speed, hard drive and cpu status, and apps using significant energy.
  • MacDropAny - allows you to sync local and external folders with symbolic links to services like Dropbox.
  • SuperDuper! - is a great hard drive cloning and system recovery tool.
  • Transmit - makes transferring files between servers and cloud services an effortless process. This is a great app for integrating with AWS.

Developer Tools

  • BBEdit - another minimalist text editor.
  • Coda - front-end web code IDE.
  • CodeKit - front-end code compiler, browser refresh, and ready to rock.
  • ColorSnapper - is an easy-to-use app to find the precise color of any pixel on the screen.
  • Icon Slate - makes retina ready favicons in a couple clicks.
  • MAMP PRO - is a good solution for developing and testing websites on your local machine.
  • Sublime Text - is a great working text editor with lots of plugins and community support.
  • Tower - is elegant and easy to use GUI for GIT.
  • xScope - is engineered for measuring, inspecting, and fine tuning graphics.
  • VS Code - excellent multipurpose IDE.

Business

  • PCalc - is a scientific calculator with support for lots of complicated conversions and tasks.
  • Parallels - is a great app for running Linux or Windows virtual machines on your Mac.
  • Wizard - is a great compliment to a spreadsheet program to build predictive models and analyze data sets.
from https://github.com/justin-j/awesome-mac-apps
 -----------------

A beginner's guide to setting up a development environment on Mac OS X  .

Mac OS X Dev Setup

This document describes how I set up my developer environment on a new MacBook or iMac. We will set up Node (JavaScript), Python, and Ruby environments, mainly for JavaScript and Python development. Even if you don't program in all three, it is good to have them as many command-line tools use one of them. As you read and follow these steps, feel free to send me any feedback or comments you may have.
The document assumes you are new to Mac. The steps below were tested on OS X Mountain Lion.
If you have any comments or suggestions, feel free to give me a shout on Twitter!

System update

First thing you need to do, on any OS actually, is update the system! For that: Apple Icon > Software Update...

System preferences

If this is a new computer, there are a couple tweaks I like to make to the System Preferences. Feel free to follow these, or to ignore them, depending on your personal preferences.
In Apple Icon > System Preferences:
  • Trackpad > Tap to click
  • Keyboard > Key Repeat > Fast (all the way to the right)
  • Keyboard > Delay Until Repeat > Short (all the way to the right)
  • Dock > Automatically hide and show the Dock

Google Chrome

Install your favorite browser, mine happens to be Chrome.
Download from www.google.com/chrome. Open the .dmg file once it's done downloading (this will mount the disk image), and drag and drop the Google Chrome app into the Applications folder (on the Mac, most applications are installed this way). When done, you can unmount the disk in Finder (the small "eject" icon next to the disk under Devices).

iTerm2

Since we're going to be spending a lot of time in the command-line, let's install a better terminal than the default one. Download and install iTerm2 (the newest version, even if it says "beta release").
In Finder, drag and drop the iTerm Application file into the Applications folder.
You can now launch iTerm, through the Launchpad for instance.
Let's just quickly change some preferences. In iTerm > Preferences..., under the tab General, uncheck Confirm closing multiple sessions and Confirm "Quit iTerm2 (Cmd+Q)" command under the section Closing.
In the tab Profiles, create a new one with the "+" icon, and rename it to your first name for example. Then, select Other Actions... > Set as Default. Finally, under the section Window, change the size to something better, like Columns: 125 and Rows: 35.
When done, hit the red "X" in the upper left (saving is automatic in OS X preference panes). Close the window and open a new one to see the size change.

Homebrew

Package managers make it so much easier to install and update applications (for Operating Systems) or libraries (for programming languages). The most popular one for OS X is Homebrew.

Install

An important dependency before Homebrew can work is the Command Line Tools for Xcode. These include compilers that will allow you to build things from source.
Now, Xcode weights something like 2GB, and you don't need it unless you're developing iPhone or Mac apps. Good news is Apple provides a way to install only the Command Line Tools, without Xcode. To do this you need to go to http://developer.apple.com/downloads, and sign in with your Apple ID (the same one you use for iTunes and app purchases). Unfortunately, you're greeted by a rather annoying questionnaire. All questions are required, so feel free to answer at random.
Once you reach the downloads page, search for "command line tools", and download the latest Command Line Tools (OS X Mountain Lion) for Xcode. Open the .dmg file once it's done downloading, and double-click on the .mpkg installer to launch the installation. When it's done, you can unmount the disk in Finder.
Note: If you are running OS X 10.9 Mavericks, then you can install the Xcode Command Line Tools directly from the command line with $ xcode-select --install, and you don't have to go through the download page and the questionnaire.
Finally, we can install Hombrew! In the terminal paste the following line (without the $), hit Enter, and follow the steps on the screen:
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
One thing we need to do is tell the system to use programs installed by Hombrew (in /usr/local/bin) rather than the OS default if it exists. We do this by adding /usr/local/bin to your $PATH environment variable:
$ echo 'export PATH="/usr/local/bin:$PATH"' >> ~/.bash_profile
Open a new terminal tab with Cmd+T (you should also close the old one), then run the following command to make sure everything works:
$ brew doctor

Usage

To install a package (or Formula in Homebrew vocabulary) simply type:
$ brew install <formula>
To update Homebrew's directory of formulae, run:
$ brew update
Note: I've seen that command fail sometimes because of a bug. If that ever happens, run the following (when you have Git installed):
$ cd /usr/local
$ git fetch origin
$ git reset --hard origin/master
To see if any of your packages need to be updated:
$ brew outdated
To update a package:
$ brew upgrade <formula>
Homebrew keeps older versions of packages installed, in case you want to roll back. That rarely is necessary, so you can do some cleanup to get rid of those old versions:
$ brew cleanup
To see what you have installed (with their version numbers):
$ brew list --versions

Consolas

I really like the Consolas font for coding. Being a Microsoft (!) font, it is not installed by default. Since we're going to be looking at a lot of terminal output and code, let's install it now.
There are two ways we can install it. If you bought Microsoft Office for Mac, install that and Consolas will be installed as well.
If you don't have Office, follow these steps:
$ brew install cabextract
$ cd ~/Downloads
$ mkdir consolas
$ cd consolas
$ curl -O http://download.microsoft.com/download/f/5/a/f5a3df76-d856-4a61-a6bd-722f52a5be26/PowerPointViewer.exe
$ cabextract PowerPointViewer.exe
$ cabextract ppviewer.cab
$ open CONSOLA*.TTF
And click Install Font. Thanks to Alexander Zhuravlev for his post.

Beautiful terminal

Since we spend so much time in the terminal, we should try to make it a more pleasant and colorful place. What follows might seem like a lot of work, but trust me, it'll make the development experience so much better.
Let's go ahead and start by changing the font. In iTerm > Preferences..., under the tab Profiles, section Text, change both fonts to Consolas 13pt.
Now let's add some color. I'm a big fan of the Solarized color scheme. It is supposed to be scientifically optimal for the eyes. I just find it pretty.
Scroll down the page and download the latest version. Unzip the archive. In it you will find the iterm2-colors-solarized folder with a README.md file, but I will just walk you through it here:
  • In iTerm2 Preferences, under Profiles and Colors, go to Load Presets... > Import..., find and open the two .itermcolors files we downloaded.
  • Go back to Load Presets... and select Solarized Dark to activate it. Voila!
Note: You don't have to do this, but there is one color in the Solarized Dark preset I don't agree with, which is Bright Black. You'll notice it's too close to Black. So I change it to be the same as Bright Yellow, i.e. R 83 G 104 B 112.
Not a lot of colors yet. We need to tweak a little bit our Unix user's profile for that. This is done (on OS X and Linux), in the ~/.bash_profile text file (~ stands for the user's home directory).
We'll come back to the details of that later, but for now, just download the files .bash_profile, .bash_prompt, .aliases attached to this document into your home directory (.bash_profile is the one that gets loaded, I've set it up to call the others):
$ cd ~
$ curl -O https://raw.githubusercontent.com/nicolashery/mac-dev-setup/master/.bash_profile
$ curl -O https://raw.githubusercontent.com/nicolashery/mac-dev-setup/master/.bash_prompt
$ curl -O https://raw.githubusercontent.com/nicolashery/mac-dev-setup/master/.aliases
With that, open a new terminal tab (Cmd+T) and see the change! Try the list commands: ls, ls -lh (aliased to ll), ls -lha (aliased to la).
At this point you can also change your computer's name, which shows up in this terminal prompt. If you want to do so, go to System Preferences > Sharing. For example, I changed mine from "Nicolas's MacBook Air" to just "MacBook Air", so it shows up as MacBook-Air in the terminal.
Now we have a terminal we can work with!
(Thanks to Mathias Bynens for his awesome dotfiles.)

Git

What's a developer without Git? To install, simply run:
$ brew install git
When done, to test that it installed fine you can run:
$ git --version
And $ which git should output /usr/local/bin/git.
Let's set up some basic configuration. Download the .gitconfig file to your home directory:
$ cd ~
$ curl -O https://raw.githubusercontent.com/nicolashery/mac-dev-setup/master/.gitconfig
It will add some color to the status, branch, and diff Git commands, as well as a couple aliases. Feel free to take a look at the contents of the file, and add to it to your liking.
Next, we'll define your Git user (should be the same name and email you use for GitHub and Heroku):
$ git config --global user.name "Your Name Here"
$ git config --global user.email "your_email@youremail.com"
They will get added to your .gitconfig file.
To push code to your GitHub repositories, we're going to use the recommended HTTPS method (versus SSH). So you don't have to type your username and password everytime, let's enable Git password caching as described here:
$ git config --global credential.helper osxkeychain
Note: On a Mac, it is important to remember to add .DS_Store (a hidden OS X system file that's put in folders) to your .gitignore files. You can take a look at this repository's .gitignore file for inspiration.

Sublime Text

With the terminal, the text editor is a developer's most important tool. Everyone has their preferences, but unless you're a hardcore Vim user, a lot of people are going to tell you that Sublime Text is currently the best one out there.
Go ahead and download it. Open the .dmg file, drag-and-drop in the Applications folder, you know the drill now. Launch the application.
Note: At this point I'm going to create a shortcut on the OS X Dock for both for Sublime Text and iTerm. To do so, right-click on the running application and select Options > Keep in Dock.
Sublime Text is not free, but I think it has an unlimited "evaluation period". Anyhow, we're going to be using it so much that even the seemingly expensive $70 price tag is worth every penny. If you can afford it, I suggest you support this awesome tool. :)
Just like the terminal, let's configure our editor a little. Go to Sublime Text 2 > Preferences > Settings - User and paste the following in the file that just opened:
{
    "font_face": "Consolas",
    "font_size": 13,
    "rulers":
    [
        79
    ],
    "highlight_line": true,
    "bold_folder_labels": true,
    "highlight_modified_tabs": true,
    "tab_size": 2,
    "translate_tabs_to_spaces": true,
    "word_wrap": false,
    "indent_to_bracket": true
}
Feel free to tweak these to your preference. When done, save the file and close it.
I use tab size 2 for everything except Python and Markdown files, where I use tab size 4. If you have a Python and Markdown file handy (or create dummy ones with $ touch dummy.py), for each one, open it and go to Sublime Text 2 > Preferences > Settings - More > Syntax Specific - User to paste in:
{
    "tab_size": 4
}
Now for the color. I'm going to change two things: the Theme (which is how the tabs, the file explorer on the left, etc. look) and the Color Scheme (the colors of the code). Again, feel free to pick different ones, or stick with the default.
A popular Theme is the Soda Theme. To install it, run:
$ cd ~/Library/Application\ Support/Sublime\ Text\ 2/Packages/
$ git clone https://github.com/buymeasoda/soda-theme/ "Theme - Soda"
Then go to Sublime Text 2 > Preferences > Settings - User and add the following two lines:
"theme": "Soda Dark.sublime-theme",
"soda_classic_tabs": true
Restart Sublime Text for all changes to take effect (Note: on the Mac, closing all windows doesn't close the application, you need to hit Cmd+Q).
The Soda Theme page also offers some extra color schemes you can download and try. But to be consistent with my terminal, I like to use the Solarized Color Scheme, which already ships with Sublime Text. To use it, just go to Sublime Text 2 > Preferences > Color Scheme > Solarized (Dark). Again, this is really according to personal flavors, so pick what you want.
Sublime Text 2 already supports syntax highlighting for a lot of languages. I'm going to install a couple that are missing:
$ cd ~/Library/Application\ Support/Sublime\ Text\ 2/Packages/
$ git clone https://github.com/jashkenas/coffee-script-tmbundle CoffeeScript
$ git clone https://github.com/miksago/jade-tmbundle Jade
$ git clone https://github.com/danro/LESS-sublime.git LESS
$ git clone -b SublimeText2 https://github.com/kuroir/SCSS.tmbundle.git SCSS
$ git clone https://github.com/nrw/sublime-text-handlebars Handlebars
Let's create a shortcut so we can launch Sublime Text from the command-line:
$ cd ~
$ mkdir bin
$ ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" ~/bin/subl
Now I can open a file with $ subl myfile.py or start a new project in the current directory with $ subl .. Pretty cool.
Sublime Text is very extensible. For now we'll leave it like that, we already have a solid installation. To add more in the future, a good place to start would be to install the Sublime Package Control.

Vim

Although Sublime Text will be our main editor, it is a good idea to learn some very basic usage of Vim. It is a very popular text editor inside the terminal, and is usually pre-installed on any Unix system.
For example, when you run a Git commit, it will open Vim to allow you to type the commit message.
I suggest you read a tutorial on Vim. Grasping the concept of the two "modes" of the editor, Insert (by pressing i) and Normal (by pressing Esc to exit Insert mode), will be the part that feels most unnatural. After that it's just remembering a few important keys.
Vim's default settings aren't great, and you could spend a lot of time tweaking your configuration (the .vimrc file). But if you're like me and just use Vim occasionally, you'll be happy to know that Tim Pope has put together some sensible defaults to quickly get started.
First, install pathogen.vim by running:
$ mkdir -p ~/.vim/autoload ~/.vim/bundle && \
    curl -LSso ~/.vim/autoload/pathogen.vim https://tpo.pe/pathogen.vim
Then create a file ~/.vimrc (you can use $ subl ~/.vimrc), and paste in the following:
execute pathogen#infect()
syntax on
filetype plugin indent on
And finally, install the Vim "sensible defaults" by running:
$ cd ~/.vim/bundle
$ git clone git://github.com/tpope/vim-sensible.git
With that, Vim will look a lot better next time you open it!

Python

OS X, like Linux, ships with Python already installed. But you don't want to mess with the system Python (some system tools rely on it, etc.), so we'll install our own version with Homebrew. It will also allow us to get the very latest version of Python 2.7.
The following command will install Python 2.7 and any dependencies required (it can take a few minutes to build everything):
$ brew install python
When finished, you should get a summary in the terminal. Running $ which python should output /usr/local/bin/python.
It also installed Pip (and its dependency Distribute), which is the package manager for Python. Let's upgrade them both:
$ pip install --upgrade distribute
$ pip install --upgrade pip
Executable scripts from Python packages you install will be put in /usr/local/share/python, so let's add it to the $PATH. To do so, we'll create a .path text file in the home directory (I've already set up .bash_profile to call this file):
$ cd ~
$ subl .path
And add these lines to .path:
PATH=/usr/local/share/python:$PATH
export PATH
Save the file and open a new terminal to take the new $PATH into account (everytime you open a terminal, .bash_profile gets loaded).

Pip Usage

Here are a couple Pip commands to get you started. To install a Python package:
$ pip install <package>
To upgrade a package:
$ pip install --upgrade <package>
To see what's installed:
$ pip freeze
To uninstall a package:
$ pip uninstall <package>

Virtualenv

Virtualenv is a tool that creates an isolated Python environment for each of your projects. For a particular project, instead of installing required packages globally, it is best to install them in an isolated folder in the project (say a folder named venv), that will be managed by virtualenv.
The advantage is that different projects might require different versions of packages, and it would be hard to manage that if you install packages globally. It also allows you to keep your global /usr/local/lib/python2.7/site-packages folder clean, containing only critical or big packages that you always need (like IPython, Numpy).

Install

To install virtualenv, simply run:
$ pip install virtualenv

Usage

Let's say you have a project in a directory called myproject. To set up virtualenv for that project:
$ cd myproject/
$ virtualenv venv --distribute
If you want your virtualenv to also inherit globally installed packages (like IPython or Numpy mentioned above), use:
$ virtualenv venv --distribute --system-site-packages
These commands create a venv subdirectory in your project where everything is installed. You need to activate it first though (in every terminal where you are working on your project):
$ source venv/bin/activate
You should see a (venv) appear at the beginning of your terminal prompt indicating that you are working inside the virtualenv. Now when you install something:
$ pip install <package>
It will get installed in the venv folder, and not conflict with other projects.
Important: Remember to add venv to your project's .gitignore file so you don't include all of that in your source code!
As mentioned earlier, I like to install big packages (like Numpy), or packages I always use (like IPython) globally. All the rest I install in a virtualenv.

IPython

IPython is an awesome project which provides a much better Python shell than the one you get from running $ python in the command-line. It has many cool functions (running Unix commands from the Python shell, easy copy & paste, creating Matplotlib charts in-line, etc.) and I'll let you refer to the documentation to discover them.

Install

Before we install IPython, we'll need to get some dependencies. Run the following:
$ brew update # Always good to do
$ brew install zeromq # Necessary for pyzmq
$ brew install pyqt # Necessary for the qtconsole
It may take a few minutes to build these.
Once it's done, we can install IPython with all the available options:
$ pip install ipython[zmq,qtconsole,notebook,test]

Usage

You can launch IPython from the command line with $ ipython, but what's more interesting is to use its QT Console. Launch the QT Console by running:
$ ipython qtconsole
You can also customize the font it uses:
$ ipython qtconsole --ConsoleWidget.font_family="Consolas" --ConsoleWidget.font_size=13
And since I'm lazy and I don't want to type or copy & paste that all the time, I'm going to create an alias for it. Create a .extra text file in your home directory with $ subl ~/.extra (I've set up .bash_profile to load .extra), and add the following line:
alias ipy='ipython qtconsole --ConsoleWidget.font_family="Consolas" --ConsoleWidget.font_size=13'
Open a fresh terminal. Now when you run $ ipy, it will launch the QT Console with your configured options.
To use the in-line Matplotlib functionality (nice for scientific computing), run $ ipy --pylab=inline.

Numpy and Scipy

The Numpy and Scipy scientific libraries for Python are always a little tricky to install from source because they have all these dependencies they need to build correctly. Luckily for us, Samuel John has put together some Homebrew formulae to make it easier to install these Python libraries.
First, grab the special formulae (which are not part of Homebrew core):
$ brew tap samueljohn/python
$ brew tap homebrew/science
Then, install the gfortran dependency (now in gcc) which we will need to build the libraries:
$ brew install gcc
Finally, you can install Numpy and Scipy with:
$ brew install numpy
$ brew install scipy
(It may take a few minutes to build.)

MySQL

Install

We will install MySQL using Homebrew, which will also install some header files needed for MySQL bindings in different programming languages (MySQL-Python for one).
To install, run:
$ brew update # Always good to do
$ brew install mysql
As you can see in the ouput from Homebrew, before we can use MySQL we first need to set it up with:
$ unset TMPDIR
$ mkdir /usr/local/var
$ mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp

Usage

To start the MySQL server, use the mysql.server tool:
$ mysql.server start
To stop it when you are done, run:
$ mysql.server stop
You can see the different commands available for mysql.server with:
$ mysql.server --help
To connect with the command-line client, run:
$ mysql -uroot
(Use exit to quit the MySQL shell.)
Note: By default, the MySQL user root has no password. It doesn't really matter for a local development database. If you wish to change it though, you can use $ mysqladmin -u root password 'new-password'.

MySQL Workbench

In terms of a GUI client for MySQL, I'm used to the official and free MySQL Workbench. But feel free to use whichever you prefer.
You can find the MySQL Workbench download here. (Note: It will ask you to sign in, you don't need to, just click on "No thanks, just start my download!" at the bottom.)

Node.js

Install Node.js with Homebrew:
$ brew update
$ brew install node
The formula also installs the npm package manager. However, as suggested by the Homebrew output, we need to add /usr/local/share/npm/bin to our path so that npm-installed modules with executables will have them picked up.
To do so, add this line to your ~/.path file, before the export PATH line:
PATH=/usr/local/share/npm/bin:$PATH
Open a new terminal for the $PATH changes to take effect.
We also need to tell npm where to find the Xcode Command Line Tools, by running:
$ sudo xcode-select -switch /usr/bin
(If Xcode Command Line Tools were installed by Xcode, try instead:)
$ sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
Node modules are installed locally in the node_modules folder of each project by default, but there are at least two that are worth installing globally. Those are CoffeeScript and Grunt:
$ npm install -g coffee-script
$ npm install -g grunt-cli

Npm usage

To install a package:
$ npm install <package> # Install locally
$ npm install -g <package> # Install globally
To install a package and save it in your project's package.json file:
$ npm install <package> --save
To see what's installed:
$ npm list # Local
$ npm list -g # Global
To find outdated packages (locally or globally):
$ npm outdated [-g]
To upgrade all or a particular package:
$ npm update [<package>]
To uninstall a package:
$ npm uninstall <package>
##JSHint
JSHint is a JavaScript developer's best friend.
If the extra credit assignment to install Sublime Package Manager was completed, JSHint can be run as part of Sublime Text.
Install JSHint via npm (global install preferred)
$ npm install -g jshint
Follow additional instructions on the JSHint Package Manager page or build it manually.

Ruby and RVM

Like Python, Ruby is already installed on Unix systems. But we don't want to mess around with that installation. More importantly, we want to be able to use the latest version of Ruby.

Install

When installing Ruby, best practice is to use RVM (Ruby Version Manager) which allows you to manage multiple versions of Ruby on the same machine. Installing RVM, as well as the latest version of Ruby, is very easy. Just run:
$ curl -L https://get.rvm.io | bash -s stable --ruby
When it is done, both RVM and a fresh version of Ruby 2.0 are installed. The following line was also automatically added to your .bash_profile:
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*
I prefer to move that line to the .extra file, keeping my .bash_profile clean. I suggest you do the same.
After that, start a new terminal and run:
$ type rvm | head -1
You should get the output rvm is a function.

Usage

The following command will show you which versions of Ruby you have installed:
$ rvm list
The one that was just installed, Ruby 2.0, should be set as default. When managing multiple versions, you switch between them with:
$ rvm use system # Switch back to system install (1.8)
$ rvm use 2.0.0 --default # Switch to 2.0.0 and sets it as default
Run the following to make sure the version you want is being used (in our case, the just-installed Ruby 1.9.3):
$ which ruby
$ ruby --version
You can install another version with:
$ rvm install 1.9.3
To update RVM itself, use:
$ rvm get stable
RubyGems, the Ruby package manager, was also installed:
$ which gem
Update to its latest version with:
$ gem update --system
To install a "gem" (Ruby package), run:
$ gem install <gemname>
To install without generating the documentation for each gem (faster):
$ gem install <gemname> --no-document
To see what gems you have installed:
$ gem list
To check if any installed gems are outdated:
$ gem outdated
To update all gems or a particular gem:
$ gem update [<gemname>]
RubyGems keeps old versions of gems, so feel free to do come cleaning after updating:
$ gem cleanup
I mainly use Ruby for the CSS pre-processor Compass, which is built on top of Sass:
$ gem install compass --no-document

LESS

CSS preprocessors are becoming quite popular, the most popular processors are LESS and SASS. Preprocessing is a lot like compiling code for CSS. It allows you to reuse CSS in many different ways. Let's start out with using LESS as a basic preprocessor, it's used by a lot of popular CSS frameworks like Bootstrap.

Install

To install LESS you have to use NPM / Node, which you installed earlier using Homebrew. In the terminal use:
$ npm install less --global
Note: the --global flag is optional but it prevents having to mess around with file paths. You can install without the flag, just know what you're doing.
You can check that it installed properly by using:
$ lessc --version
This should output some information about the compiler:
lessc 1.5.1 (LESS Compiler) [JavaScript]
Okay, LESS is installed and running. Great!

Usage

There's a lot of different ways to use LESS. Generally I use it to compile my stylesheet locally. You can do that by using this command in the terminal:
$ lessc template.less template.css
The two options are the "input" and "output" files for the compiler. The command looks in the current directory for the LESS stylesheet, compiles it, and outputs it to the second file in the same directory. You can add in paths to keep your project files organized:
$ lessc less/template.less css/template.css
Read more about LESS on their page here: http://lesscss.org/

Heroku

Heroku, if you're not already familiar with it, is a Platform-as-a-Service (PaaS) that makes it really easy to deploy your apps online. There are other similar solutions out there, but Heroku was among the first and is currently the most popular. Not only does it make a developer's life easier, but I find that having Heroku deployment in mind when building an app forces you to follow modern app development best practices.

Install

Assuming that you have an account (sign up if you don't), let's install the Heroku Client for the command-line. Heroku offers a Mac OS X installer, the Heroku Toolbelt, that includes the client. But for these kind of tools, I prefer using Homebrew. It allows us to keep better track of what we have installed. Luckily for us, Homebrew includes a heroku-toolbelt formula:
$ brew install heroku-toolbelt
The formula might not have the latest version of the Heroku Client, which is updated pretty often. Let's update it now:
$ heroku update
Don't be afraid to run heroku update every now and then to always have the most recent version.

Usage

Login to your Heroku account using your email and password:
$ heroku login
If this is a new account, and since you don't already have a public SSH key in your ~/.ssh directory, it will offer to create one for you. Say yes! It will also upload the key to your Heroku account, which will allow you to deploy apps from this computer.
If it didn't offer create the SSH key for you (i.e. your Heroku account already has SSH keys associated with it), you can do so manually by running:
 $ mkdir ~/.ssh
 $ ssh-keygen -t rsa
Keep the default file name and skip the passphrase by just hitting Enter both times. Then, add the key to your Heroku account:
$ heroku keys:add
Once the key business is done, you're ready to deploy apps! Heroku has a great Getting Started guide, so I'll let you refer to that (the one linked here is for Python, but there is one for every popular language). Heroku uses Git to push code for deployment, so make sure your app is under Git version control. A quick cheat sheet (if you've used Heroku before):
$ cd myapp/
$ heroku create myapp
$ git push heroku master
$ heroku ps
$ heroku logs -t
The Heroku Dev Center is full of great resources, so be sure to check it out!

MongoDB

MongoDB is a popular NoSQL database.

Install

Installing it is very easy through Homebrew:
$ brew update
$ brew install mongo

Usage

In a terminal, start the MongoDB server:
$ mongod
In another terminal, connect to the database with the Mongo shell using:
$ mongo
I'll let you refer to MongoDB's Getting Started guide for more!

Redis

Redis is a blazing fast, in-memory, key-value store, that uses the disk for persistence. It's kind of like a NoSQL database, but there are a lot of cool things that you can do with it that would be hard or inefficient with other database solutions. For example, it's often used as session management or caching by web apps, but it has many other uses.

Install

To install Redis, use Homebrew:
$ brew update
$ brew install redis

Usage

Start a local Redis server using the default configuration settings with:
$ redis-server
For advanced usage, you can tweak the configuration file at /usr/local/etc/redis.conf (I suggest making a backup first), and use those settings with:
$ redis-server /usr/local/etc/redis.conf
In another terminal, connect to the server with the Redis command-line interface using:
$ redis-cli
I'll let you refer to Redis' documentation or other tutorials for more information.

Elasticsearch

As it says on the box, Elasticsearch is a "powerful open source, distributed real-time search and analytics engine". It uses an HTTP REST API, making it really easy to work with from any programming language.
You can use elasticsearch for such cool things as real-time search results, autocomplete, recommendations, machine learning, and more.

Install

Elasticsearch runs on Java, so check if you have it installed by running:
java -version
If Java isn't installed yet, a window will appear prompting you to install it. Go ahead and click "Install".
Next, install elasticsearch with:
$ brew install elasticsearch
Note: Elasticsearch also has a plugin program that gets moved to your PATH. I find that too generic of a name, so I rename it to elasticsearch-plugin by running (will need to do that again if you update elasticsearch):
$ mv /usr/local/bin/plugin /usr/local/bin/elasticsearch-plugin
Below I will use elasticsearch-plugin, just replace it with plugin if you haven't followed this step.
As you guessed, you can add plugins to elasticsearch. A popular one is elasticsearch-head, which gives you a web interface to the REST API. Install it with:
$ elasticsearch-plugin --install mobz/elasticsearch-head

Usage

Start a local elasticsearch server with:
$ elasticsearch -f
(The -f option tells it to run in the foreground, so you can stop it with Ctrl+C.)
Test that the server is working correctly by running:
$ curl -XGET 'http://localhost:9200/'
If you installed the elasticsearch-head plugin, you can visit its interface at http://localhost:9200/_plugin/head/.
Elasticsearch's documentation is more of a reference. To get started, I suggest reading some of the blog posts linked on this StackOverflow answer.

Projects folder

This really depends on how you want to organize your files, but I like to put all my version-controlled projects in ~/Projects. Other documents I may have, or things not yet under version control, I like to put in ~/Dropbox (if you have Dropbox installed), or ~/Documents.

Apps

Here is a quick list of some apps I use, and that you might find useful as well:
  • Dropbox: File syncing to the cloud. I put all my documents in Dropbox. It syncs them to all my devices (laptop, mobile, tablet), and serves as a backup as well! (Free for 2GB)
  • Google Drive: File syncing to the cloud too! I use Google Docs a lot to collaborate with others (edit a document with multiple people in real-time!), and sometimes upload other non-Google documents (pictures, etc.), so the app comes in handy for that. (Free for 5GB)
  • 1Password: Allows you to securely store your login and passwords. Even if you only use a few different passwords (they say you shouldn't!), this is really handy to keep track of all the accounts you sign up for! Also, they have a mobile app so you always have all your passwords with you (syncs with Dropbox). A little pricey though. There are free alternatives. ($50 for Mac app, $18 for iOS app)
  • Marked: As a developer, most of the stuff you write ends up being in Markdown. In fact, this README.md file (possibly the most important file of a GitHub repo) is indeed in Markdown, written in Sublime Text, and I use Marked to preview the results everytime I save. ($4)
  • Path Finder: I love OSX, it's Unix so great for developers, and all of it just works and looks pretty! Only thing I "miss" from Windows (OMG what did he say?), is a decent file explorer. I think Finder is a pain to use. So I gladly paid for this alternative, but I understand others might find it expensive just to not have to use Finder. ($40)
  • Evernote: If I don't write something down, I'll forget it. As a developer, you learn so many new things every day, and technology keeps changing, it would be insane to want to keep it all in your head. So take notes, sync them to the cloud, and have them on all your devices. To be honest, I switched to Simplenote because I only take text notes, and I got tired of Evernote putting extra spaces between paragraphs when I copy & pasted into other applications. Simplenote is so much better for text notes (and it supports Markdown!). (Both are free)
  • Moom: Don't waste time resizing and moving your windows. Moom makes this very easy. ($10)
  •  
  • from https://github.com/nicolashery/mac-dev-setup
  •  
  • -----------------
  •  
  • https://github.com/svett/mac-osx-dev-setup
  • https://github.com/svett/home-osx
  • --------------
  •  
  • Table of Contents

  • Cloud Storages
  • Developer Tools
  • E-Mail
  • FTP Clients
  • Finance
  • Games
  • IDE (Integrated development environment)
  • Messaging
  • Organisational
  • Photo and Video
  • Music
  • Productivity
  • Utilities
  • Security
  • Text Editors

Cloud Storages

Several data providers who stores your data in the cloud
  • Google Drive - A file storage and synchronization service created by Google.
  • iCloud - A file storage and synchronization service powered by Apple.
  • OneDrive - OneDrive is a file hosting service that allows users to sync files and later access them from a web browser or mobile device from Microsoft.

Developer Tools

Several tools to support the work of a developer
  • Paw - The ultimative REST client for Mac.
  • Postman - Postman helps you develop APIs faster.
  • PSequel - A PostgreSQL GUI Tool for Mac OS X.
  • Sequel Pro - MySQL database management for Mac OS X.

E-Mail

Programs which are used to access and manage a user's email
  • Airmail - Lightning Fast Mail Client for Mac and iPhone.
  • N1 - The extensible, open source mail client.
  • Postbox - Another powerful Mail Client for Mac.

FTP Clients

Applications to connect via several protocols to a server.
  • Cyberduck - Libre FTP, SFTP, WebDAV, S3 & OpenStack Swift client.
  • FileZilla - A fast and reliable cross-platform FTP, FTPS and SFTP client.
  • Flow - The Mac's Best FTP + SFTP Client.
  • Transmit - The ultimate Mac OS X FTP + SFTP + S3 app.
  • Yummy FTP - Pro-level, Fast, Reliable FTP Client.

Finance

Applications to keep an eye on your costs
  • Banking 4 - Your banking software for OS X.

Games

A list of awesome games which are running smoothly under Mac OS X

IDE (Integrated development environment)

Software Applications that provides comprehensive facilities for software development.
  • Android Studio - Android Studio is the official integrated development environment (IDE) for Android platform development.
  • AppCode - Swift execution of your bright ideas.
  • CLion - intelligent cross-platform C/C++ IDE.
  • Eclipse - A project aiming to provide a universal toolset for development.
  • Intellij IDEA - The Most Intelligent Java IDE.
  • PhpStorm - The Most Intelligent PHP IDE.
  • PyCharm - The Most Intelligent Python IDE.
  • RubyMine - The Most Intelligent Ruby and Rails IDE.
  • WebStorm - The smartest JavaScript IDE.
  • VS Code - Excellent multipurpose IDE.

Messaging

Apps to communicate with other human beings
  • ChitChat - Unofficial Desktop client for WhatsApp.
  • Nimbus - Standalone IRCCloud client for OS X.
  • Skype - Share, message and call across Platforms.
  • Slack - A messaging app for teams.
  • Telegram - A new era of messaging.
  • Textual - The world's most popular application for interacting with IRC on OS X.

Organisational

Apps to organize your life like calendars or task lists

Photo and Video

Apps for you to be more creative
  • Zoommy - Find awesome free stock photos.

Music

Apps for listen to your favourite music
  • Soundnode - An opensource SoundCloud app for desktop.

Productivity

Apps to improve your productivity during your day
  • Cerebro - One-input productivity booster.
  • Wunderlist - Wunderlist is the easistest way to get stuff done. Keep your life in sync.

Utilities

A list of tools to ease up your work with Mac OS X
  • Alfred - Search your Mac and the web effortlessly, and control your Mac using customised actions with the Alfred.
  • Amphetamine - Don't let you mac sleep.
  • Android File Transfer - Browse and transfer files upto 4 GB between Mac and Android device.
  • AppCleaner - A small application to thoroughly uninstall unwanted apps.
  • Battery Guardian - Battery Guardian offers an easy way to remember to deplete your MacBook battery. Depleting your battery helps extend the battery's life.
  • CleanMyMac - CleanMyMac can helps you to clean your Mac, monitor its health, optimize it for speed, and more.
  • Fluid - Turn Your Favorite Web Apps into Real Mac Apps.
  • Garbage Truck - Automate emptying of trash on your Mac.
  • HyperDock - Windows 7 style preview of open windows/applications and more.
  • iTerm2 - A terminal emulator for Mac OS X that does amazing things.
  • Knock - Unlock your Mac faster and more securely than ever.
  • MacID - Unlock your Mac with just your fingerprint.™
  • Onyx - The multifunction Utility.
  • Paste - Keep track of your clipboard.
  • Spectacle - Window control with simple and customizable keyboard shortcuts.
  • Kap - Kap. Capture your screen

Security

Encryption, Password Manager and other tools for your safety
  • 1Password - A comprehensive password manager.
  • Boxcryptor - A tool to encript your sensitive files in your cloud storage.
  • Dashlane - An another password manager & secure digital wallet.

Text Editors

A type of program used for editing plain text files.
  • Atom - A hackable text editor for the 21st Century.
  • BBEdit - It doesn’t suck.®
  • Coda2 - Your code for the web.
  • Emacs - Emacs is console based editor and highly customizable.
  • Sublime Text 3 - A sophisticated text editor for code, markup and prose.
  • TextMate - The Missing Editor for Mac OS X.
  • Vim - Vim is a highly configurable console based editor aimed at efficient text creation and modification.
from https://github.com/xyNNN/awesome-mac
-----------

My awesome macOS apps

List of macOS apps I love and use.

Disclaimer

This is not supposed to be a huge list, but you may find it useful. Big awesome lists can be found here:

Contributions are not welcome.

Utilities

  • iStatMenus – An advanced Mac system monitor for your menubar
  • Bartender – Organize your menu bar icons
  • The Unarchiver – Unpack any archive, in no time
  • AppCleaner – Small application which allows you to thoroughly uninstall unwanted apps
  • Keka – The macOS file archiver
  • DaisyDisk – Analyze disk usage and free up disk space on Mac
  • KeeWeb – Free cross-platform password manager compatible with KeePass
  • Transmission – A fast, easy, and free BitTorrent client
  • VLC – Free and open source cross-platform multimedia player and framework that plays most multimedia files
  • Skype – Communication tool for free calls and chat
  • GPG Suite - One simple package with everything you need, to protect your emails and files
  • Parcel – All Deliveries in One Place
  • KnockKnock – See what's persistently installed on your Mac

Development

  • IntelliJ IDEA Ultimate – The Java IDE for Professional Developers by JetBrains
  • Visual Studio Code – Code editing. Redefined.
  • XCode – Everything you need to create amazing apps
  • SourceTree – A free Git GUI for Mac and Windows
  • Postman – API development environment
  • MDB / ACCDB Viewer – Open Microsoft Access Databases on your Mac
  • TableTool – A simple CSV editor for the Mac
  • P4Merge – Visual Code Merge Tool and Diff Tool for Designers and Developers Alike
  • VirtualBox – Powerful x86 and AMD64/Intel64 virtualization product
  • Cyberduck – A libre server and cloud storage browser
  • Bit Slicer – Universal game trainer for macOS
  • HexFeind – A fast and clever hex editor for Mac OS X
  • Hopper Disassembler – The reverse engineering tool that lets you disassemble, decompile and debug your applications
  • Wireshark – The world’s foremost and widely-used network protocol analyzer
  • Proxyman – A modern and intuitive HTTP debugging proxy

Design

Browser

  • AdBlock — Surf the web without annoying pop ups and ads
  • Ghostery — Makes the Web Cleaner, Faster and Safer
from https://github.com/antelle/my-awesome-mac-apps
-------------------------------

https://github.com/kiriaze/mac-dev-env

 https://github.com/jamesacampbell/fresh-osx