{"id":13509581,"url":"https://github.com/NghiaTranUIT/artify-macos","last_synced_at":"2025-03-30T13:32:36.360Z","repository":{"id":44331532,"uuid":"133010546","full_name":"NghiaTranUIT/artify-macos","owner":"NghiaTranUIT","description":"🌎 18th century Arts for everyone","archived":false,"fork":false,"pushed_at":"2019-03-02T03:13:16.000Z","size":8028,"stargazers_count":180,"open_issues_count":8,"forks_count":9,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-10-27T11:19:38.080Z","etag":null,"topics":["art","artify","macos","mvvm-architecture","oss","rxswift","swift","wallpaper"],"latest_commit_sha":null,"homepage":"https://artify.launchaco.com","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NghiaTranUIT.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-05-11T08:14:35.000Z","updated_at":"2024-10-27T07:05:31.000Z","dependencies_parsed_at":"2022-09-01T16:30:13.525Z","dependency_job_id":null,"html_url":"https://github.com/NghiaTranUIT/artify-macos","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NghiaTranUIT%2Fartify-macos","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NghiaTranUIT%2Fartify-macos/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NghiaTranUIT%2Fartify-macos/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NghiaTranUIT%2Fartify-macos/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NghiaTranUIT","download_url":"https://codeload.github.com/NghiaTranUIT/artify-macos/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":222552942,"owners_count":17002160,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["art","artify","macos","mvvm-architecture","oss","rxswift","swift","wallpaper"],"created_at":"2024-08-01T02:01:09.896Z","updated_at":"2024-11-01T09:31:52.487Z","avatar_url":"https://github.com/NghiaTranUIT.png","language":"Swift","funding_links":[],"categories":["Swift","Applications","壁纸","Wallpaper"],"sub_categories":["Wallpaper","Text","🖥️ Wallpaper (11)","Utilities"],"readme":"\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/NghiaTranUIT/artify-macos/blob/master/images/logo.png\" alt=\"Artify App Logo\" width=\"600\" height=\"auto\"/\u003e\n\u003c/p\u003e\n\n\u003ch2\u003e\n  Artify\n  \u003ca href=\"https://travis-ci.org/NghiaTranUIT/artify-macos\"\u003e\n    \u003cimg src=\"https://travis-ci.org/NghiaTranUIT/artify-macos.svg?branch=master\" alt=\"Build Status\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/NghiaTranUIT/artify-macos/releases/tag/0.5.1\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/version-0.5.1-green.svg\" alt=\"0.5.1\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"./LICENSE\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/license-GPL--3.0-blue.svg\"\u003e\n  \u003c/a\u003e\n\u003c/h2\u003e\n\nA macOS X application for bringing dedicatedly 18th century Arts to everyone 🌎.\n\n\u003ca href=\"#screenshots\"\u003eWallpaper\u003c/a\u003e •\n\u003ca href=\"#features\"\u003eFeatures\u003c/a\u003e •\n\u003ca href=\"#downloads\"\u003eDownloads\u003c/a\u003e •\n\u003ca href=\"#technologies\"\u003eTechnologies\u003c/a\u003e •\n\u003ca href=\"#3rd-libraries\"\u003e3rd Libraries\u003c/a\u003e •\n\u003ca href=\"#development\"\u003eDevelopment\u003c/a\u003e •\n\u003ca href=\"#faq\"\u003eFAQ\u003c/a\u003e •\n\n## Wallpaper\n\n\u003cdiv align=\"center\"\u003e\n    \u003cimg src=\"https://github.com/NghiaTranUIT/artify-macos/blob/master/images/red-vineyards-at-arles-1888.jpg\" width=\"100%\" /\u003e\n    \u003cdiv align=\"center\"\u003eRed Vineyard At Arles\u003c/div\u003e\n    \u003cimg src=\"https://github.com/NghiaTranUIT/artify-macos/blob/master/images/the-starry-night.jpg\" width=\"100%\" /\u003e\n    \u003cdiv align=\"center\"\u003eThe Starry Night\u003c/div\u003e\n    \u003cimg src=\"https://github.com/NghiaTranUIT/artify-macos/blob/master/images/1440_900_the_wanderer_above_the_sea_of_fog.jpg\" width=\"100%\" /\u003e\n    \u003cdiv align=\"center\"\u003eThe Wanderer Above The Sea of Fog\u003c/div\u003e\n\u003c/div\u003e\n\n## Features\n* 😍 Hand-picked 18th Arts.\n* 👨‍💻 Generate beautiful wallpaper depend on your screen size.\n* 👑 Automatically fetch feature art for every days.\n* 🌎 On-demand art, You can pick your favorites art-style, artist (Coming soon 🙇🏻‍♂️)\n* 🍉 Open-source project.\n* 💯 Totally Free.\n\n## Downloads\nAll downloads are available at [Release page](https://github.com/NghiaTranUIT/artify-macos/releases)\n\n### macOS Requirement\nThe minimum version supported is macOS 10.11.\n\n## Technologies\n* [Swift 4.1](https://swift.org)\n* [macOS Native](https://developer.apple.com/documentation/)\n* [RxSwift](https://github.com/ReactiveX/RxSwift)\n* [MVVM](https://www.objc.io/issues/13-architecture/mvvm/)\n\n## 3rd Libraries\n* [Moya/RxSwift](https://github.com/Moya/Moya)\n* [RxSwift](https://github.com/ReactiveX/RxSwift)\n* [RxCocoa](https://github.com/ReactiveX/RxSwift/tree/master/RxCocoa)\n* [RxOptional](https://github.com/RxSwiftCommunity/RxOptional)\n* [Action](https://github.com/RxSwiftCommunity/Action)\n* [Alamofire](https://github.com/Alamofire/Alamofire)\n* [Unbox](https://github.com/JohnSundell/Unbox)\n* [RxNuke](https://github.com/kean/RxNuke)\n* [Sparkle](https://sparkle-project.org)\n\n## Development\nArtify 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 😎\n\nAfter starting the development server.\n* Clone this project\n* Run `$ pod install`\n* Open `ArtifyWorkspace.xcworkspace`\n* Happy coding 😍\n\n## FAQ\n\n* **Is it a original idea?**\n\n\u003e 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.\n\u003e\n\u003e I'm a lazy guy, I'd something could do it automatically every time. Ultimately, I came up with this idea.\n\n* **Where is the Backend side?**\n\n\u003e I'm in charge of developing the [Artify Core](https://github.com/NghiaTranUIT/artify-core), as a Golang backend serverside. \u003e Feel free to contribute cooperatively.\n\n* **What is the current progress?**\n\n\u003e 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)\n\n* **Why do you choose RxSwift + MVVM?**\n\n\u003e 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.\n\u003e\n\u003e If something makes me happy, I will follow it. Simple enough 😂\n\n* **Is this app built with Swift?**\n\n\u003e Yes, Artify is built on top of Swift 4.1 and macOS Native library.\n\n* **Why is it an OSS?**\n\n\u003e 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.\n\u003e\n\u003e The best way is publishing your source code 👨‍💻.\n\n* **Why is 18th century art?**\n\n\u003e 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.\n\u003e\n\u003e I realize I fall in love with the 18th art somehow 🤣\n\u003e\n\u003e Then I come up with the idea, why don't we bring it to everybody, who has the same passion as me.\n\u003e\n\u003e 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 😱\n\u003e\n\u003e 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.\n\u003e\n\u003e All of the art pictures will be hand-picked by me and my best girlfriend. Hope you enjoy it 😍\n\n* **How does Artify generate the beautify wallpaper?**\n\n\u003e **[DR;TL]**\n\u003e\n\u003e 1. Determine the golden size, which relies on your current screen size. It makes sure every generated wallpaper is as nice as possible.\n\u003e 2. Draw this image with the desired size in the middle\n\u003e 3. Draw shadow\n\u003e 4. Scale the background with \"aspect to fill\" mode\n\u003e 5. Apply Gaussian algorithm\n\u003e 6. Combine everything and cached locally.\n\u003e\n\u003e **[Detail implementation]**\n\u003e\n\u003e Here is the [algorithm](https://github.com/NghiaTranUIT/artify-macos/blob/master/artify-core/artify-core/Algorithm/Gaussian/GaussianAlgorithm.swift)\n\n* **Where does the Artify's resource come from?**\n\n\u003e Every art pictures are hand-picked from [WikiArt](https://www.wikiart.org).\n\u003e\n\u003e 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.\n\u003e\n\u003e 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 😅.\n\n* **What are the tough problems, which you confronts when developing this project?**\n\n\u003e 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.\n\n* **Can I become a contributor?**\n\n\u003e Defintely, I appreciate your effort to become a contributor. Clone the project and setup your workspace. Happy coding guys 🚢\n\n* **Do you have personal blog?**\n\n\u003e Yes, I often write blog at [My lab](https://nghiatran.me/) 👨‍🍳\n\n* **How do I contact you?**\n\n\u003e Don't hesitate to open Issue on Github if you encounter any problems. Or give a welcome hug to me at vinhnghiatran@gmail.com.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FNghiaTranUIT%2Fartify-macos","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FNghiaTranUIT%2Fartify-macos","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FNghiaTranUIT%2Fartify-macos/lists"}