https://github.com/hyperoslo/champagne
The Champagne Web Framework.
https://github.com/hyperoslo/champagne
Last synced: 10 months ago
JSON representation
The Champagne Web Framework.
- Host: GitHub
- URL: https://github.com/hyperoslo/champagne
- Owner: hyperoslo
- License: other
- Created: 2016-02-28T16:47:13.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2016-07-08T17:13:11.000Z (almost 10 years ago)
- Last Synced: 2025-06-10T00:37:15.072Z (about 1 year ago)
- Language: Swift
- Homepage:
- Size: 392 KB
- Stars: 7
- Watchers: 10
- Forks: 0
- Open Issues: 16
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
Awesome Lists containing this project
README

[](https://travis-ci.org/hyperoslo/Champagne)



[](http://opensource.org/licenses/MIT)
**Champagne** is a Swift web framework with flexible and powerful modular
system.
* Conventional project structure.
* Modularity with `bubbles` - bundles/components that help to organize
the project code and spit functionality into separate feature-based modules.
* Application-specific `bubbles` used to build your application.
* Reusable `bubbles` that could be made into Swift packages and be shared across
many projects.
* Smart assets management.
* Template engines, resource and rendering factories.
* Built-in routing system.
* [S4](https://github.com/open-swift/S4) compatible [server](https://github.com/VeniceX/Venice).
* More features are coming...
**Please note** that this is a work in progress, `Champagne` is under continuous
development and **is not ready** for production usage.
* [Installation](#installation)
* [Usage](#usage)
* [Author](#author)
* [Credits](#credits)
* [Contributing](#contributing)
* [License](#license)
## Installation
* Install Swift development snapshot [version](https://github.com/hyperoslo/Champagne/blob/master/.swift-version)
from [Swift.org](https://swift.org/download/) or via [swiftenv](https://github.com/kylef/swiftenv).
* Add the following lines to your `Package.swift`:
## Usage
```swift
import Champagne
let kernel = AppKernel()
do {
let application = Application(
kernel: kernel,
config: Config(root: "/")
)
try application.start()
} catch {
print(error)
}
```
For more info about the project structure and conventions please check
[Demo](https://github.com/hyperoslo/Champagne/blob/master/Sources/Demo)
## Author
Hyper Interaktiv AS, ios@hyper.no
## Credits
- Initial implementation is heavily inspired by [Vapor](https://github.com/qutheory/vapor)
which is the first true web framework for Swift.
- It's also worth mentioning that a lot of ideas came from
[Symfony](http://symfony.com), [Rails](https://github.com/rails/rails) and
other Ruby and PHP frameworks.
- And we salute the whole Swift server-side community, especially
[Zewo](https://github.com/Zewo/Zewo) and [OpenSwift](https://github.com/open-swift).
Thanks you for doing such an awesome job bringing developers open source
libraries and tools for all the needs.
## Contributing
We would love you to contribute to **Champagne**, check the [CONTRIBUTING](https://github.com/hyperoslo/Champagne/blob/master/CONTRIBUTING.md)
file for more info.
## License
**Champagne** is available under the MIT license. See the [LICENSE](https://github.com/hyperoslo/Champagne/blob/master/LICENSE.md) file for more info.