renaming music tools to mixonomer

This commit is contained in:
andy 2022-08-07 13:27:59 +01:00
parent 0fe7d8f117
commit 649e77acb5
23 changed files with 325 additions and 302 deletions

View File

@ -1,12 +1,12 @@
[Music Tools](https://music.sarsoo.xyz) [Mixonomer](https://music.sarsoo.xyz)
================== ==================
![Python Tests](https://github.com/sarsoo/music-tools/workflows/test%20and%20deploy/badge.svg) ![Python Tests](https://github.com/sarsoo/Mixonomer/workflows/test%20and%20deploy/badge.svg)
Set of utility tools for Spotify and Last.fm. Set of utility tools for Spotify and Last.fm.
Built on my other libraries for Spotify ([spotframework](https://github.com/Sarsoo/spotframework)), Last.fm ([fmframework](https://github.com/Sarsoo/pyfmframework)) and interfacing utility tools for the two ([spotfm](https://github.com/Sarsoo/pyfmframework)). Currently running on a suite of Google Cloud Platform services. An iOS client is currently under development [here](https://github.com/Sarsoo/Music-Tools-iOS). Built on my other libraries for Spotify ([spotframework](https://github.com/Sarsoo/spotframework)), Last.fm ([fmframework](https://github.com/Sarsoo/pyfmframework)) and interfacing utility tools for the two ([spotfm](https://github.com/Sarsoo/pyfmframework)). Currently running on a suite of Google Cloud Platform services. An iOS client is currently under development [here](https://github.com/Sarsoo/Mixonomer-iOS).
Read the full documentation [here](https://sarsoo.github.io/Music-Tools/). Read the full documentation [here](https://sarsoo.github.io/Mixonomer/).
# Smart Playlists # Smart Playlists
@ -20,7 +20,7 @@ Playlists can pull tracks from multiple sources with some extra ones based on th
* Spotify playlists * Spotify playlists
- Currently referenced by case-sensitive names of those followed by the user - Currently referenced by case-sensitive names of those followed by the user
- Plan to include reference by Spotify URI - Plan to include reference by Spotify URI
* Other Music Tools playlists * Other Mixonomer playlists
- Dynamically include the Spotify playlists of other managed playlists - Dynamically include the Spotify playlists of other managed playlists
- Used to allow hierarchy playlists such as for genre (as seen above for multiple rap playlists) - Used to allow hierarchy playlists such as for genre (as seen above for multiple rap playlists)
* Spotify Library Tracks * Spotify Library Tracks

View File

@ -35,7 +35,7 @@ COMPONENTS:
class Admin(Cmd): class Admin(Cmd):
intro = 'Music Tools Admin... ? for help' intro = 'Mixonomer Admin... ? for help'
prompt = '> ' prompt = '> '
locals = ['spotframework', 'fmframework', 'spotfm'] locals = ['spotframework', 'fmframework', 'spotfm']

View File

@ -6,3 +6,9 @@ dispatch:
- url: "music.sarsoo.xyz/*" - url: "music.sarsoo.xyz/*"
service: spotify service: spotify
- url: "mixonomer.sarsoo.xyz/*"
service: spotify
- url: "mix.sarsoo.xyz/*"
service: spotify

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 122 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 68 KiB

After

Width:  |  Height:  |  Size: 130 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 88 KiB

View File

@ -18,7 +18,7 @@
# -- Project information ----------------------------------------------------- # -- Project information -----------------------------------------------------
project = 'Music Tools' project = 'Mixonomer'
copyright = '2021, Sarsoo' copyright = '2021, Sarsoo'
author = 'Sarsoo' author = 'Sarsoo'

View File

@ -1,4 +1,4 @@
Music Tools Mixonomer
======================================= =======================================
.. toctree:: .. toctree::
@ -10,12 +10,12 @@ Music Tools
Admin Script <src/admin> Admin Script <src/admin>
All Modules <src/modules> All Modules <src/modules>
`Music Tools <https://music.sarsoo.xyz>`_ `Mixonomer <https://music.sarsoo.xyz>`_
---------------------------------------------- ----------------------------------------------
.. image:: https://github.com/sarsoo/music-tools/workflows/test%20and%20deploy/badge.svg .. image:: https://github.com/sarsoo/Mixonomer/workflows/test%20and%20deploy/badge.svg
Music Tools is a web app for creating smart Spotify playlists. The app is based on `spotframework <https://github.com/Sarsoo/spotframework>`_ and `fmframework <https://github.com/Sarsoo/pyfmframework>`_ for interfacing with Spotify and Last.fm. The app is currently hosted on Google's Cloud Platform. Mixonomer is a web app for creating smart Spotify playlists. The app is based on `spotframework <https://github.com/Sarsoo/spotframework>`_ and `fmframework <https://github.com/Sarsoo/pyfmframework>`_ for interfacing with Spotify and Last.fm. The app is currently hosted on Google's Cloud Platform.
The backend is composed of a Flask web server with a Fireo ORM layer and longer tasks dispatched to Cloud Tasks or Functions. The frontend is a React app with material UI components and Axios for HTTP requests. The backend is composed of a Flask web server with a Fireo ORM layer and longer tasks dispatched to Cloud Tasks or Functions. The frontend is a React app with material UI components and Axios for HTTP requests.

View File

@ -89,7 +89,7 @@ todonotes
\begin_body \begin_body
\begin_layout Title \begin_layout Title
Sarsoo Music Tools: A cloud-based web app for smarter playlists Sarsoo Mixonomer: A cloud-based web app for smarter playlists
\end_layout \end_layout
\begin_layout Author \begin_layout Author
@ -101,7 +101,7 @@ Online music streaming services have allowed the consumption of a wider
breadth of music than ever before. breadth of music than ever before.
These services, however, typically do not lend themselves to the structured These services, however, typically do not lend themselves to the structured
listening of a library of music categorised by genre and sub-genre. listening of a library of music categorised by genre and sub-genre.
Sarsoo Music Tools presents a method for doing so via smart playlists with Sarsoo Mixonomer presents a method for doing so via smart playlists with
emphasis on drawing tracks from other playlists facilitating a hierarchy emphasis on drawing tracks from other playlists facilitating a hierarchy
well suited to listening by genre. well suited to listening by genre.
\end_layout \end_layout

View File

@ -1,4 +1,4 @@
Music Tools Modules Mixonomer Modules
====================== ======================
.. toctree:: .. toctree::

View File

@ -1,4 +1,4 @@
"""Root module containing Music Tools backend """Root module containing Mixonomer backend
Top level module with functions for creating app with loaded blueprints and initialising the logging stack Top level module with functions for creating app with loaded blueprints and initialising the logging stack

View File

@ -102,5 +102,5 @@ def get_authed_lastfm_network(user: User) -> Optional[FmNetwork]:
@dataclass @dataclass
class DatabaseUser(NetworkUser): class DatabaseUser(NetworkUser):
"""Adding Music Tools username to spotframework network user""" """Adding Mixonomer username to spotframework network user"""
user_id: str = None user_id: str = None

View File

@ -15,7 +15,7 @@ def create_app():
"""Generate and retrieve a ready-to-run flask app """Generate and retrieve a ready-to-run flask app
Returns: Returns:
Flask App: Music Tools app Flask App: Mixonomer app
""" """
app = Flask(__name__, static_folder=os.path.join(os.path.dirname(__file__), '..', 'build'), template_folder="templates") app = Flask(__name__, static_folder=os.path.join(os.path.dirname(__file__), '..', 'build'), template_folder="templates")

View File

@ -1,7 +1,7 @@
<!doctype html> <!doctype html>
<html> <html>
<head> <head>
<title>sarsoo/music</title> <title>sarsoo/mixonomer</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
<link type="text/css" rel="stylesheet" href="{{ url_for('static', filename='style.css') }}"> <link type="text/css" rel="stylesheet" href="{{ url_for('static', filename='style.css') }}">
<link href="https://fonts.googleapis.com/css?family=Pirata+One|Lato" rel="stylesheet"> <link href="https://fonts.googleapis.com/css?family=Pirata+One|Lato" rel="stylesheet">
@ -16,7 +16,7 @@
</head> </head>
<body> <body>
<div> <div>
<h1 class="title">sarsoo</h1> <h1 class="title">Mixonomer</h1>
</div> </div>
{% with messages = get_flashed_messages() %} {% with messages = get_flashed_messages() %}

View File

@ -1,7 +1,7 @@
<!doctype html> <!doctype html>
<html> <html>
<head> <head>
<title>sarsoo/{% block title %}{% endblock %}</title> <title>Mixonomer/{% block title %}{% endblock %}</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
<link type="text/css" rel="stylesheet" href="{{ url_for('static', filename='style.css') }}"> <link type="text/css" rel="stylesheet" href="{{ url_for('static', filename='style.css') }}">
<link href="https://fonts.googleapis.com/css?family=Pirata+One|Roboto" rel="stylesheet"> <link href="https://fonts.googleapis.com/css?family=Pirata+One|Roboto" rel="stylesheet">
@ -19,12 +19,12 @@
</head> </head>
<body> <body>
<div> <div>
<h1 class="title">sarsoo</h1> <h1 class="title">Mixonomer</h1>
</div> </div>
<br><br> <br><br>
<ul class="navbar"> <ul class="navbar">
<li><a href="/">Home</a></li> <li><a href="/">Home</a></li>
<li><a href="https://sarsoo.xyz">Sarsoo.xyz</a></li> <li><a href="https://sarsoo.xyz">sarsoo.xyz</a></li>
</ul> </ul>
{% block content %}{% endblock %} {% block content %}{% endblock %}

View File

@ -16,7 +16,7 @@
<div class="row"> <div class="row">
<div class="{% if logged_in %}pad-12{% else %}pad-9{% endif %} card"> <div class="{% if logged_in %}pad-12{% else %}pad-9{% endif %} card">
<h1 class="center-text">Music Tools</h1> <!-- <h1 class="center-text">Mixonomer</h1> -->
<p class="center-text">A set of tools using Spotify and Last.fm to create smart playlists and calculate listening statistics</p> <p class="center-text">A set of tools using Spotify and Last.fm to create smart playlists and calculate listening statistics</p>
<p class="center-text">Playlists are updated multiple times a day to keep tracks up to date</p> <p class="center-text">Playlists are updated multiple times a day to keep tracks up to date</p>
@ -24,8 +24,8 @@
<p class="center-text">Written in Python and Javascript, based on the <a href="https://github.com/Sarsoo/spotframework">spotframework</a> and <a href="https://github.com/Sarsoo/pyfmframework">fmframework</a> libraries</p> <p class="center-text">Written in Python and Javascript, based on the <a href="https://github.com/Sarsoo/spotframework">spotframework</a> and <a href="https://github.com/Sarsoo/pyfmframework">fmframework</a> libraries</p>
<div style="padding:10px"> <div style="padding:10px">
<a class="button" style="padding:15px;width:49%" href="https://github.com/Sarsoo/Music-Tools">View Source</a> <a class="button" style="padding:15px;width:49%" href="https://github.com/Sarsoo/Mixonomer">View Source</a>
<a class="button" style="padding:15px;width:49%" href="https://github.com/Sarsoo/Music-Tools-iOS">iOS Client Source</a> <a class="button" style="padding:15px;width:49%" href="https://github.com/Sarsoo/Mixonomer-iOS">iOS Client Source</a>
</div> </div>
{% if logged_in %} {% if logged_in %}
@ -49,7 +49,7 @@
<ul style="text-align:left" > <ul style="text-align:left" >
<li style="padding:10px">Spotify Playlists</li> <li style="padding:10px">Spotify Playlists</li>
<li style="padding:10px">Spotify Library Tracks</li> <li style="padding:10px">Spotify Library Tracks</li>
<li style="padding:10px">Music Tools Playlists</li> <li style="padding:10px">Mixonomer Playlists</li>
</ul> </ul>
</div> </div>
<div class="pad-6 card"> <div class="pad-6 card">

549
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,5 @@
{ {
"name": "music-tools", "name": "mixonomer",
"version": "1.0.0", "version": "1.0.0",
"description": "web app for spotify playlist management with last.fm integration", "description": "web app for spotify playlist management with last.fm integration",
"private": true, "private": true,
@ -10,14 +10,14 @@
}, },
"repository": { "repository": {
"type": "git", "type": "git",
"url": "git+https://github.com/Sarsoo/Music-Tools.git" "url": "git+https://github.com/Sarsoo/Mixonomer.git"
}, },
"author": "sarsoo", "author": "sarsoo",
"license": "ISC", "license": "ISC",
"bugs": { "bugs": {
"url": "https://github.com/Sarsoo/Music-Tools/issues" "url": "https://github.com/Sarsoo/Mixonomer/issues"
}, },
"homepage": "https://github.com/Sarsoo/Music-Tools#readme", "homepage": "https://github.com/Sarsoo/Mixonomer#readme",
"dependencies": { "dependencies": {
"@material-ui/core": "^4.11.3", "@material-ui/core": "^4.11.3",
"@material-ui/icons": "^4.11.2", "@material-ui/icons": "^4.11.2",

View File

@ -5,7 +5,7 @@ description = "Spotify smart playlist generator. Last.fm integration for listeni
authors = ["andy <andy@sarsoo.xyz>"] authors = ["andy <andy@sarsoo.xyz>"]
readme = "README.md" readme = "README.md"
homepage = "https://music.sarsoo.xyz/" homepage = "https://music.sarsoo.xyz/"
repository = "https://github.com/Sarsoo/Music-Tools" repository = "https://github.com/Sarsoo/Mixonomer"
[tool.poetry.scripts] [tool.poetry.scripts]
test = 'admin:test' test = 'admin:test'

View File

@ -100,7 +100,7 @@ class MusicTools extends Component {
<MenuIcon /> <MenuIcon />
</IconButton> </IconButton>
<Typography variant="h6"> <Typography variant="h6">
<Link to='/app/playlists' style={{textDecoration: 'none'}}>Music Tools</Link> <Link to='/app/playlists' style={{textDecoration: 'none'}}>Mixes</Link>
</Typography> </Typography>
</Toolbar> </Toolbar>
</AppBar> </AppBar>

View File

@ -263,7 +263,7 @@ export class Edit extends Component{
} }
/** /**
* Handle adding new watched music tools playlist reference * Handle adding new watched Mixonomer playlist reference
* @param {*} event Event data * @param {*} event Event data
*/ */
handleAddReference(event){ handleAddReference(event){
@ -320,7 +320,7 @@ export class Edit extends Component{
} }
/** /**
* Handle removing watched music tools playlist reference * Handle removing watched Mixonomer playlist reference
* @param {*} id Subject playlist name * @param {*} id Subject playlist name
* @param {*} event Event data * @param {*} event Event data
*/ */

View File

@ -3,6 +3,6 @@ import ReactDOM from "react-dom";
import MusicTools from "./MusicTools"; import MusicTools from "./MusicTools";
// ROOT file for bootstrapping the Music Tools component and app // ROOT file for bootstrapping the Mixonomer component and app
ReactDOM.render(<MusicTools />, document.getElementById('react')); ReactDOM.render(<MusicTools />, document.getElementById('react'));

View File

@ -145,7 +145,7 @@ h1.title {
background-color: white; background-color: white;
padding: 0px; padding: 0px;
/*font-size: 16em;*/ /*font-size: 16em;*/
width: 3.5em; width: 5em;
height: 1.3em; height: 1.3em;
text-align: center; text-align: center;
margin: auto; margin: auto;