{"id":21517491,"url":"https://github.com/prcutler/silversaucer","last_synced_at":"2025-08-24T08:29:32.172Z","repository":{"id":39620208,"uuid":"57923145","full_name":"prcutler/silversaucer","owner":"prcutler","description":"A webapp to interact with my music collection using FastAPI, Python and the Discogs API.","archived":false,"fork":false,"pushed_at":"2024-10-29T11:50:19.000Z","size":5342,"stargazers_count":7,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"dev","last_synced_at":"2024-10-29T13:31:22.411Z","etag":null,"topics":["discogs","discogs-client","fastapi","music","python","vinyl","vinyl-records"],"latest_commit_sha":null,"homepage":"https://paulcutler.org/project/silversaucer/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/prcutler.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-05-02T21:39:42.000Z","updated_at":"2024-10-29T11:50:21.000Z","dependencies_parsed_at":"2023-10-18T13:46:11.963Z","dependency_job_id":"8e4b58ee-1c88-486b-9520-017583718114","html_url":"https://github.com/prcutler/silversaucer","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prcutler%2Fsilversaucer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prcutler%2Fsilversaucer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prcutler%2Fsilversaucer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prcutler%2Fsilversaucer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/prcutler","download_url":"https://codeload.github.com/prcutler/silversaucer/tar.gz/refs/heads/dev","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248115359,"owners_count":21050197,"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":["discogs","discogs-client","fastapi","music","python","vinyl","vinyl-records"],"created_at":"2024-11-24T00:42:04.173Z","updated_at":"2025-04-09T21:35:01.961Z","avatar_url":"https://github.com/prcutler.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Project Type: Toy](https://img.shields.io/badge/project%20type-toy-blue)](https://project-types.github.io/#toy)\n[![made-with-python](https://img.shields.io/badge/Made%20with-Python-1f425f.svg)](https://www.python.org/)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black)\n[![SilverSaucer](https://github.com/prcutler/silversaucer/actions/workflows/python-app.yml/badge.svg)](https://github.com/prcutler/silversaucer/actions/workflows/python-app.yml)\n\n# Overview\n\n### Project Status:  Completed\n\nSilver Saucer is a domain I registered many years ago and kept because I like the name. Both the name and the logo are inspired from both a poem by Neil Gaiman, *The Day the Saucers Came* and my love of *The X-Files*.\n\nSilver Saucer's main goal is was a Python learning exercise to integrate my record collection, using the Discogs API, with a website to display album art when an album is chosen or randomly picked.\n\nYou can visit [Silversaucer.com](https://silversaucer.com/) to see the site in action.\n\n## Project Goals\n\nThe project had three main goals:\n\n* Complete: Build a website that integrates with the Discogs API to display information about an album, either chosen at random or picked specifically.\n* Integrate with an Adafruit PyPortal and using CircuitPython, display the album art on the PyPortal.\n* Build an \"On this Day\" feature to display albums released on a specific day.  This required a number of steps to integrate the MusicBrainz into the app.\n\nWant to know more? You can view my [blog posts about Silver Saucer and my progress here](https://paulcutler.org/tags/silver-saucer/).\n\n\n## Development Goals\n\n* [x] Switch from the Pyramid web framework to the FastAPI framework.\n* [ ] Still need to learn testing and 'pytest'.  Just can't wrap my head around it.\n* [x] Migrate to Github Actions from Azure Pipelines.\n* [x] Learn the Discogs API (and potentially MusicBrainz).\n* [x] Learn how to use the CircuitPython MatrixPortal.  (This is more complex than it sounds!)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprcutler%2Fsilversaucer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprcutler%2Fsilversaucer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprcutler%2Fsilversaucer/lists"}