6008 / Perfect

Server-side Swift. The Perfect library, application server, connectors and example apps. (For mobile back-end development, website and web app development, and more...)

Home Page:https://www.perfect.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Perfect

Perfect logo

Swift 2.2 Platforms OS X | iOS | Linux License Apache Docs Issues Donate Twitter Join the chat at https://gitter.im/PerfectlySoft/Perfect

Please Note v1.0 has been released

For a stable development environment, switch to branch release-1.0 or download v1.0

(2016-04-05) We are refactoring the Perfect project repository with the ultimate goal of supporting the Swift Package Manager. The various modules, such as the PerfectLib, server, database connectors and examples pack are being split off into their own repositories. This change will also include some API streamlining and fewer 3rd party dependencies resulting in easier installation and deployment. Once this task has completed we will release as v1.1 and continue from there. We hope to have these changes solidified by the end of the week and we appreciate all the feedback we've received along the way.

If you've been working on a Perfect project switch to branch release-1.0 to maintain the stable API you've been working with.

WebSockets & iOS Push Notifications

Perfect now includes a WebSockets server and support for handling your own server-side iOS push notifications.

Perfect now runs on Linux!

Perfect now builds and runs on Linux with the open source release of Swift. Consult the readmes of the individual components for build instructions.

Perfect is an application server which provides a framework for developing web and other REST services in the Swift programming language. Its primary focus is on facilitating mobile apps which require backend server software. It enables you to use one language for both front and back ends.

Perfect operates using either its own stand-alone HTTP server or through FastCGI with Apache 2.4. It provides a system for loading your own Swift based modules at startup and for interfacing those modules with its built-in request/response objects or the mustache template processing system.

Perfect consists of the following components:

  • PerfectLib - Framework components and utilities for client and server.
  • Perfect Server - Backend server supporting FastCGI or stand-alone HTTP.
    • Perfect Server FastCGI - Server process which accepts connections over FastCGI.
    • Perfect Server HTTP - Stand-alone HTTP server.
    • Perfect Server HTTP App - Development focused stand-alone HTTP server OS X app.
  • Connectors - Server-side connectivity.
    • mod_perfect - FastCGI connectivity for Apache 2.4.
    • MySQL - Provides connectivity for MySQL databases.
    • PostgreSQL - Provides connectivity for PostgreSQL databases.
    • MongoDB - Provides connectivity for MongoDB databases.
  • Examples - A set of examples which show how to utilize Perfect.
    • Mobile iOS Examples
    • Web Site Examples
    • Game Examples (coming soon!)

Getting Started

Check the README in the Examples directory for further instructions.

More Information

For more information on the Perfect project, please visit perfect.org.

About

Server-side Swift. The Perfect library, application server, connectors and example apps. (For mobile back-end development, website and web app development, and more...)

https://www.perfect.org

License:Apache License 2.0


Languages

Language:Swift 93.8%Language:C++ 2.6%Language:Makefile 1.8%Language:C 0.9%Language:Objective-C 0.7%Language:HTML 0.2%