{"id":20530383,"url":"https://github.com/zoomten/sheepyart","last_synced_at":"2026-04-24T03:36:02.711Z","repository":{"id":49320542,"uuid":"199677457","full_name":"ZoomTen/SheepyArt","owner":"ZoomTen","description":"May or may not contain actual sheep art.","archived":false,"fork":false,"pushed_at":"2022-07-24T11:04:34.000Z","size":246,"stargazers_count":3,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-06T02:24:22.459Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ZoomTen.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2019-07-30T15:20:21.000Z","updated_at":"2023-08-03T20:49:27.000Z","dependencies_parsed_at":"2022-07-25T23:49:50.057Z","dependency_job_id":null,"html_url":"https://github.com/ZoomTen/SheepyArt","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/ZoomTen/SheepyArt","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZoomTen%2FSheepyArt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZoomTen%2FSheepyArt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZoomTen%2FSheepyArt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZoomTen%2FSheepyArt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ZoomTen","download_url":"https://codeload.github.com/ZoomTen/SheepyArt/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZoomTen%2FSheepyArt/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32208474,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-24T03:15:14.334Z","status":"ssl_error","status_checked_at":"2026-04-24T03:15:11.608Z","response_time":64,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":[],"created_at":"2024-11-15T23:36:38.026Z","updated_at":"2026-04-24T03:36:02.683Z","avatar_url":"https://github.com/ZoomTen.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SheepyArt\n\n## What\nThis is a Flask application, basically a ripoff of classic DeviantArt.\n\nIt's pretty awful, but it's a practice / crashcourse app. About the same\nexcuse as me making MS Paint art and calling that my art style... but\nI find this pretty interesting to write out anyway.\n\nIt's supposed to look like the 2008 layout, but even I don't remember\nwhat that looked like. It might end up looking like an amalgamation of\n2008 and 2010 dA. The VidLii of DeviantArt? nah.\n\nIt doesn't do much right now. You can only register, login and upload stuff.\nThat's it. Watch as your masterpiece floats away in the browse screen...\nbecause there's no next page yet. Will get to it eventually. Orientation's\nright around the corner.\n\n## What it Looks like\nNot much right now.\n![SheepyArt](screenshot1275.jpg)\n\n## Working Features\n  * Basic user authentication (registration, login, logout)\n  * Image upload and thumbnailing\n  * User gallery and global gallery\n  * Basic configuration through `definitions.json`\n  * Configurable color scheme, just edit `$theme-color` in `assets/scss/main/main.scss`\n  * Basic search support (tags included)\n  * Browsing categories and seeking by offset\n  * Editing and deleting art\n  * Markdown support\n\n## Missing from the Big Picture\n  * Comments\n  * Critiques\n  * Collections, favorites and views\n  * Trending tab\n  * Literature and journal/blogs.\n  * User bio and other user info\n  * Avatar and user settings\n  * Notifications, inbox\n  * Literally everything else\n\n## Missing from the Small Picture\n  * Logging in by e-mail address\n  * Country selection and inclusion on userpage\n  * Subcategory display on the sidebar\n  * Tags looking like hashtags, each being a separate link to the search query\n\n## Oddities\n  * Importing global objects need to be done from `sheepyart.sheepyart`\n  * Database located at `rootdir/sheepyart/base.db`, definitions file located at `rootdir/sheepyart/app/definitions.json`\n  * The logs are located at `rootdir/sheepyart.log`\n  * Search indexes located at `rootdir/sheepyart_search`\n  * Migration is in `rootdir/migrations`\n\n## Known Bugs\n  * Upload doesn't handle no-file-selected cases yet\n  * Seach function might be slow? (might affect art uploads)\n  * Manually uploading the art file when editing an entry, regardless of intent\n  * Possible unhandled errors and conditions\n\n## What to install first\nCore dependencies\n  * Python 3.7+\n  * Pipenv (make sure it's the Python 3 pipenv!)\n\nPIL dependencies\n  * libjpeg (`libjpeg-dev` in Debian and descendants)\n  * zlib (`zlib1g-dev` in Debian and descendants)\n  * ffi (`libffi-dev` in Debian and descendants)\n\n## Run\n  * Run `pipenv install`\n  * Run the migration thing below, to initalize the database.\n  * Then `pipenv run python make_db.py`.\n  * Then `pipenv run python main.py`.\n  * Access the application by going to `http://localhost:8000` once\n    it is running.\n  * You can also do `pipenv run python main.py 9000` to run the application on port 9000 instead of 8000.\n\n## Migrations\n  * Run `pipenv run python migrate.py db init` to create the folders.\n  * Run `pipenv run python migrate.py db migrate` to update the database schemas.\n  * Run `pipenv run python migrate.py db upgrade` to migrate the database.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzoomten%2Fsheepyart","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzoomten%2Fsheepyart","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzoomten%2Fsheepyart/lists"}