Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/NghiaTranUIT/artify-macos
π 18th century Arts for everyone
https://github.com/NghiaTranUIT/artify-macos
art artify macos mvvm-architecture oss rxswift swift wallpaper
Last synced: 7 days ago
JSON representation
π 18th century Arts for everyone
- Host: GitHub
- URL: https://github.com/NghiaTranUIT/artify-macos
- Owner: NghiaTranUIT
- License: lgpl-3.0
- Created: 2018-05-11T08:14:35.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2019-03-02T03:13:16.000Z (over 5 years ago)
- Last Synced: 2024-10-27T11:19:38.080Z (12 days ago)
- Topics: art, artify, macos, mvvm-architecture, oss, rxswift, swift, wallpaper
- Language: Swift
- Homepage: https://artify.launchaco.com
- Size: 7.66 MB
- Stars: 180
- Watchers: 6
- Forks: 9
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- open-source-mac-os-apps - Artify - A macOS application for bringing dedicatedly 18th century Arts to everyone ![swift_icon] (Applications / Wallpaper)
- open-source-mac-os-apps - Artify - A macOS application for bringing dedicatedly 18th century Arts to everyone ![swift_icon] (Applications / Wallpaper)
- awesome-swift-macos-apps - Artify - A macOS application for bringing dedicatedly 18th century Arts to everyone (Wallpaper / Text)
- awesome-swift-macos-apps - Artify - A macOS application for bringing dedicatedly 18th century Arts to everyone (Wallpaper / Text)
- gitcat - Macε£ηΊΈ-18thδΈηΊͺθΊζ―
README
Artify
A macOS X application for bringing dedicatedly 18th century Arts to everyone π.
Wallpaper β’
Features β’
Downloads β’
Technologies β’
3rd Libraries β’
Development β’
FAQ β’## Wallpaper
Red Vineyard At Arles
The Starry Night
The Wanderer Above The Sea of Fog## Features
* π Hand-picked 18th Arts.
* π¨βπ» Generate beautiful wallpaper depend on your screen size.
* π Automatically fetch feature art for every days.
* π On-demand art, You can pick your favorites art-style, artist (Coming soon ππ»ββοΈ)
* π Open-source project.
* π― Totally Free.## Downloads
All downloads are available at [Release page](https://github.com/NghiaTranUIT/artify-macos/releases)### macOS Requirement
The minimum version supported is macOS 10.11.## Technologies
* [Swift 4.1](https://swift.org)
* [macOS Native](https://developer.apple.com/documentation/)
* [RxSwift](https://github.com/ReactiveX/RxSwift)
* [MVVM](https://www.objc.io/issues/13-architecture/mvvm/)## 3rd Libraries
* [Moya/RxSwift](https://github.com/Moya/Moya)
* [RxSwift](https://github.com/ReactiveX/RxSwift)
* [RxCocoa](https://github.com/ReactiveX/RxSwift/tree/master/RxCocoa)
* [RxOptional](https://github.com/RxSwiftCommunity/RxOptional)
* [Action](https://github.com/RxSwiftCommunity/Action)
* [Alamofire](https://github.com/Alamofire/Alamofire)
* [Unbox](https://github.com/JohnSundell/Unbox)
* [RxNuke](https://github.com/kean/RxNuke)
* [Sparkle](https://sparkle-project.org)## Development
Artify requires [Artify Core](https://github.com/NghiaTranUIT/artify-core) as a backend. Pls follow this [Instruction](https://github.com/NghiaTranUIT/artify-core/blob/master/README.md) in order to start the core successfully πAfter starting the development server.
* Clone this project
* Run `$ pod install`
* Open `ArtifyWorkspace.xcworkspace`
* Happy coding π## FAQ
* **Is it a original idea?**
> Nowadays, Almost idea is mixing. The original idea was inspired by a guy in HN-Show I've seen in a couple months ago. It's just a tool to generate a photo after dragging manually my original picture. It has lack of capability.
>
> I'm a lazy guy, I'd something could do it automatically every time. Ultimately, I came up with this idea.* **Where is the Backend side?**
> I'm in charge of developing the [Artify Core](https://github.com/NghiaTranUIT/artify-core), as a Golang backend serverside. > Feel free to contribute cooperatively.
* **What is the current progress?**
> Here is [Open Ticket](https://github.com/NghiaTranUIT/artify-macos/issues?q=is%3Aopen+is%3Aissue) and [Close Ticket](https://github.com/NghiaTranUIT/artify-macos/issues?q=is%3Aissue+is%3Aclosed)
* **Why do you choose RxSwift + MVVM?**
> I have solid experience when working with RxSwift + MVVM for a couple projects on Production. I'm so happy when writing concise, elegant Observable, Driver,... rather than clumsy functions with tons of nested-callbacks.
>
> If something makes me happy, I will follow it. Simple enough π* **Is this app built with Swift?**
> Yes, Artify is built on top of Swift 4.1 and macOS Native library.
* **Why is it an OSS?**
> The source code is a trash if keep it in your inventory forever. I'd contribute back to the dev community when I have an opportunity.
>
> The best way is publishing your source code π¨βπ».* **Why is 18th century art?**
> Every time I have a short trip to an overseas country, I often spent 1 or 2 days to visit all famous art museum. I could stand for an hour to look at the detail, the scrape from those old oil photo. Individual traits could represent the history, the effort, the dream from original authors.
>
> I realize I fall in love with the 18th art somehow π€£
>
> Then I come up with the idea, why don't we bring it to everybody, who has the same passion as me.
>
> Let imagine, every day, when I open my laptop at 9 AM, I can see the best photo of this day, with detail information, history, and the author. That would be amazing π±
>
> Without considering, I start to develop the macOS app as well as the [Artify-Core](https://github.com/NghiaTranUIT/artify-core), which is written by Golang.
>
> All of the art pictures will be hand-picked by me and my best girlfriend. Hope you enjoy it π* **How does Artify generate the beautify wallpaper?**
> **[DR;TL]**
>
> 1. Determine the golden size, which relies on your current screen size. It makes sure every generated wallpaper is as nice as possible.
> 2. Draw this image with the desired size in the middle
> 3. Draw shadow
> 4. Scale the background with "aspect to fill" mode
> 5. Apply Gaussian algorithm
> 6. Combine everything and cached locally.
>
> **[Detail implementation]**
>
> Here is the [algorithm](https://github.com/NghiaTranUIT/artify-macos/blob/master/artify-core/artify-core/Algorithm/Gaussian/GaussianAlgorithm.swift)* **Where does the Artify's resource come from?**
> Every art pictures are hand-picked from [WikiArt](https://www.wikiart.org).
>
> If you wonder how I collect the data. Here is my partner, [Spider Man](https://github.com/NghiaTranUIT/artify-core/blob/master/scripts/spider.ruby), which is a Ruby script.
>
> The conjunction of [Nokogiri](http://www.nokogiri.org) and [Watir](http://watir.com) are perfect for this scenario. Indeed,I'm a lazy man, I don't want to collect data like a manual labor π .* **What are the tough problems, which you confronts when developing this project?**
> The Implementation of the [Artify Core](https://github.com/NghiaTranUIT/artify-core) by Golang with latest technologies and the Artify Gaussian algorithm are two things take me most the effort.
* **Can I become a contributor?**
> Defintely, I appreciate your effort to become a contributor. Clone the project and setup your workspace. Happy coding guys π’
* **Do you have personal blog?**
> Yes, I often write blog at [My lab](https://nghiatran.me/) π¨βπ³
* **How do I contact you?**
> Don't hesitate to open Issue on Github if you encounter any problems. Or give a welcome hug to me at [email protected].