Skip to content

Latest commit

 

History

History
316 lines (226 loc) · 16.3 KB

README.md

File metadata and controls

316 lines (226 loc) · 16.3 KB

The Awesome Server Side Swift List

A curated list of awesome Server Side Swift 3 projects.

Interested in contributing? Please see the Contributing section below. Please note that components targeting iOS projects will not be considered unless there is a clear use case for a server side implementation. Projects must also be SPM modules that can be included as dependancies, unless otherwise stated.

Thanks goes out to vsouza for the inspiration of his Awesome iOS list!

Table of Contents

Server Side Swift Frameworks

Server Side Swift frameworks are projects that provide an infrastructure with which you can build a working Swift API.

Server Side Utilities

File System

Compression

Encryption / Cryptography

Logging

Command Line Access

iOS Notifications

Networking

Configuration

  • JSON Config - A Swift 3 JSON Config reader library. Reads JSON files for server side configuration.
  • Swifty-pList - A Swift 3 pList library. Reads & writes pLists for server side configuration.

Testing

  • SwiftRandom - A tiny generator of random data for swift. SPM module.
  • LoremSwiftum - A lightweight lorem ipsum generator for Swift.

Miscellaneous

Authentication

Templating

Parsers

JSON

XML

MessagePack

Miscellaneous Parsers

Utility

Strings

  • SwiftString - A comprehensive, lightweight string extension for Swift 3
  • Hypertext - Any-way-you-want-it, type-safe HTML in Swift

Misc Utilities

Database Connectors

MySQL

PostgreSQL

SQLite

MongoDB

CouchDB

Redis

Tarantool

Cassandra

  • Kassandra - Cassandra CQL 3.2 client in (pure) Swift.

FileMaker

ORM

Web Server Connectivity

HTTP Libraries

Connectors to Web servers such as Apache, nginx.

WebSockets

Distributed Messaging

MQTT

  • Aphid - MQTT 3.1 library in (pure) Swift.

Contributing

Submit a pull request with changes. Please use GitHub Issues for dead or changed links only.

  • Search previous suggestions before making a new one, as yours may be a duplicate.
  • Make an individual pull request for each suggestion.
  • Use the following format: PACKAGE - DESCRIPTION.
  • New categories, or improvements to the existing categorization are welcome.
  • Keep descriptions short and simple, but descriptive.
  • End all descriptions with a full stop/period.
  • Check your spelling and grammar.
  • Make sure that your suggestion is positioned as the last item category.
  • Make sure your text editor is set to remove trailing whitespace.
  • Projects must work in Swift 3.0 (or above). ObjC and Swift 1 & 2 projects will not be considered.
  • The Project must be an SPM module that can be included directly, unless otherwise stated.

Projects are ineligible if:

  • The project is not in and of itself, an SPM module.
  • Doesn't have commit for more than two years.
  • Only have README in another language (Chinese, Japanese, Portuguese and etc)
  • We cannot clearly understand the objective.
  • Without clear README

License

Distributed under the MIT license. See LICENSE for more information.

Code of Conduct

We welcome people of all ethnicities, nationalities, ages, gender, disability, levels of experience, and religious beliefs to use and contribute to this project. We pledge to foster and enforce a harassment-free environment of openness, respect, and cooperation for everyone in all project and public spaces online or offline.

Please report any behaviour that violates our Code of Conduct. The team is committed to enforcing this Code of Conduct to ensure everyone who wishes to use, contribute to, and comment on the project may do so freely and openly and without fear of reprisal.

We will investigate all complaints of unacceptable or abusive behaviour or comments expediently, and we will maintain the confidentiality of the person who reports any perceived infraction or wrongdoing to us. We will not tolerate any form of direct or indirect harassment or discrimination within the Swift community, and will take appropriate, fair, and corrective action to any instance of inappropriate behaviour.

The team maintains the right to remove, edit, or reject any comments, code, edits, or issues that do not align with our Code of Conduct.