From 5c851aae88646ffae6a31f43da90ff17967b6e1e Mon Sep 17 00:00:00 2001 From: JotaChina Date: Sun, 30 Nov 2025 18:14:25 -0300 Subject: [PATCH] Upgrade interface do MMPSearch --- pages/404.md | 25 ++ pages/automation.md | 130 ++++++++ pages/bassline.md | 138 ++++++++ pages/creation.md | 678 ++++++++++++++++++++++++++++++++++++++ pages/instruments.md | 306 +++++++++++++++++ pages/mmp_pages.md | 264 +++++++++++++++ pages/pattern.md | 574 ++++++++++++++++++++++++++++++++ pages/plugin.md | 504 ++++++++++++++++++++++++++++ pages/projetosPorTrack.md | 57 ++++ pages/quantasVezes.md | 39 +++ pages/sample.md | 127 +++++++ pages/wavFiles.md | 132 ++++++++ 12 files changed, 2974 insertions(+) create mode 100644 pages/404.md create mode 100644 pages/automation.md create mode 100644 pages/bassline.md create mode 100644 pages/creation.md create mode 100644 pages/instruments.md create mode 100644 pages/mmp_pages.md create mode 100644 pages/pattern.md create mode 100644 pages/plugin.md create mode 100644 pages/projetosPorTrack.md create mode 100644 pages/quantasVezes.md create mode 100644 pages/sample.md create mode 100644 pages/wavFiles.md diff --git a/pages/404.md b/pages/404.md new file mode 100644 index 00000000..086a5c9e --- /dev/null +++ b/pages/404.md @@ -0,0 +1,25 @@ +--- +permalink: /404.html +layout: default +--- + + + +
+

404

+ +

Page not found :(

+

The requested page could not be found.

+
diff --git a/pages/automation.md b/pages/automation.md new file mode 100644 index 00000000..d69abea1 --- /dev/null +++ b/pages/automation.md @@ -0,0 +1,130 @@ +--- +layout: default +title: Projetos com a tag Automation +permalink: /automation/ +--- + + + +
+
{% include sidebar.html %}
+ +
+
+ +
+

+ Projetos que possuem a tag automation: +

+
+ +
+ +
+
+ + +
+ {% for projeto in site.data.all %} {% if projeto.tags.TAG contains + "automation" %} +
+
+ + {% assign file_url = projeto.file | downcase | replace: ' ', '-' | + replace: 'ç', 'c' | replace: 'ã', 'a' | replace: 'á', 'a' | replace: + 'â', 'a' | replace: 'é', 'e' | replace: 'ê', 'e' | replace: 'í', 'i' | + replace: 'ó', 'o' | replace: 'ô', 'o' | replace: 'õ', 'o' | replace: + 'ú', 'u' %} + + + {{ projeto.file }} + + + + {% if projeto.tags.automation and projeto.tags.automation.size > 0 %} +
+

Automation:

+
    + {% for automation in projeto.tags.automation %} {% if automation + != "" %} +
  • + {{ automation }} +
  • + {% endif %} {% endfor %} +
+
+ {% endif %} +
+
+ {% endif %} {% endfor %} +
+
+
+ + diff --git a/pages/bassline.md b/pages/bassline.md new file mode 100644 index 00000000..00e482ce --- /dev/null +++ b/pages/bassline.md @@ -0,0 +1,138 @@ +--- +layout: default +title: Projetos com a tag Bassline +permalink: /bassline/ +--- + + + +
+
{% include sidebar.html %}
+ +
+
+ +
+

+ Projetos que possuem a tag bassline: +

+
+ +
+ +
+
+ + +
+ {% for projeto in site.data.all %} {% if projeto.tags.TAG contains + "bassline" %} +
+
+ + {% assign file_url = projeto.file | downcase | replace: ' ', '-' | + replace: 'ç', 'c' | replace: 'ã', 'a' | replace: 'á', 'a' | replace: + 'â', 'a' | replace: 'é', 'e' | replace: 'ê', 'e' | replace: 'í', 'i' | + replace: 'ó', 'o' | replace: 'ô', 'o' | replace: 'õ', 'o' | replace: + 'ú', 'u' %} + + + {{ projeto.file }} + + + + {% if projeto.tags.bassline and projeto.tags.bassline.size > 0 %} +
+

Bassline:

+
    + {% for bassline in projeto.tags.bassline %} {% if bassline != "" + %} +
  • + {{ bassline }} +
  • + {% endif %} {% endfor %} +
+
+ {% endif %} +
+
+ {% endif %} {% endfor %} +
+
+
+ + diff --git a/pages/creation.md b/pages/creation.md new file mode 100644 index 00000000..84087cb2 --- /dev/null +++ b/pages/creation.md @@ -0,0 +1,678 @@ + + + + + + MMPCreator + + + + + + + + + + +
+
+
+ + Novo projeto + + Abrir projetos + + Salvar projeto + + Enviar sample +
+
+
+ +
+
+
+
+
+ + + +
+
ANDAMENTO/BPM
+
+
+
+ + + +
+
COMPASSOS
+
+
+
+
+ + + +
+ / +
+ + + +
+
+
COMPASSO
+
+
+
+ 00:00:00 +
+
MIN:SEC:MSEC
+
+
+
+ + + +
+
+
+
+
+
+
+ VOL MASTER +
+
+
+
+
+ PAN MASTER +
+
+
+ +
+
+
+
+
+ + + +
+ + + + + + +
+ + +
+ +
+ + +
+ + + +
+
+ +
+
+
+
+
+
Copiar
+
Recortar
+
Colar
+ +
+ Excluir Clipe +
+
+ +
+
Definir Início do Loop
+
Definir Fim do Loop
+
+
+
+
+ + + +
+
+
+ Playlist + +
+ + + + +
+ +
+ + + + + +
+ + + + +
+ + + +
+
+ +
+
+
+
+
+
+
+
+
+ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/pages/instruments.md b/pages/instruments.md new file mode 100644 index 00000000..c5142547 --- /dev/null +++ b/pages/instruments.md @@ -0,0 +1,306 @@ +--- +layout: default +title: Projetos por Instrumento +permalink: /instruments/ +--- + + + +
+
+ +
+
+ +
+ {% include sidebar.html %} +
+ +
+ + +
+ + Todos os Instrumentos Disponíveis + +
+ +
+ +
+
+ {% assign all_instruments_string = "" %} + + {% for p in site.data.all %} + {% for track in p.tracks %} + {% if track.instruments %} + {% for inst in track.instruments %} + {% if inst.instrument_name and inst.instrument_name != "" %} + {% unless all_instruments_string contains inst.instrument_name %} + {% assign all_instruments_string = all_instruments_string | append: inst.instrument_name | append: "|||" %} + {% endunless %} + {% endif %} + {% endfor %} + {% elsif track.instrument_name and track.instrument_name != "" %} + {% unless all_instruments_string contains track.instrument_name %} + {% assign all_instruments_string = all_instruments_string | append: track.instrument_name | append: "|||" %} + {% endunless %} + {% endif %} + {% endfor %} + {% endfor %} + + {% assign unique_instruments = all_instruments_string | split: "|||" | sort %} + + {% for item in unique_instruments %} + {% if item != "" %} + + {{ item }} + + {% endif %} + {% endfor %} +
+
+

Clique para filtrar.

+
+
+
+ +
+
+

+ + Filtro: (todos) +

+
+
+ +
+
+ +
+ {% for projeto in site.data.all %} + + {% assign project_insts = "" %} + {% for track in projeto.tracks %} + {% if track.instruments %} + {% for inst in track.instruments %} + {% assign project_insts = project_insts | append: inst.instrument_name | append: "," %} + {% endfor %} + {% elsif track.instrument_name %} + {% assign project_insts = project_insts | append: track.instrument_name | append: "," %} + {% endif %} + {% endfor %} + +
+ +
+ + {% assign file_url = projeto.file | downcase | replace: ' ', '-' | replace: 'ç', 'c' | replace: 'ã', 'a' | replace: 'á', 'a' | replace: 'â', 'a' | replace: 'é', 'e' | replace: 'ê', 'e' | replace: 'í', 'i' | replace: 'ó', 'o' | replace: 'ô', 'o' | replace: 'õ', 'o' | replace: 'ú', 'u' %} + {% assign page_url = '../mmp_pages/' | append: file_url | append: '.html' %} + + +
+ +
+ +
+ +

+ {{ projeto.file }} +

+ + {% if projeto.bpm %} +
+ + 🎵 {{ projeto.bpm }} BPM + +
+ {% else %} +
+ {% endif %} + +
+ + {% assign unique_proj_insts = project_insts | split: "," | uniq %} + {% if unique_proj_insts.size > 0 %} +
+ {% for item in unique_proj_insts %} + {% if item != "" %} + + {{ item | truncate: 15 }} + + {% endif %} + {% endfor %} +
+ {% endif %} +
+
+ +
+ Ver + {% assign creation_url = '/mmpSearch/creation.html?project=' | append: projeto.file %} + {% assign embed_url = creation_url | append: '&embed=true' %} + Editar +
+ +
+
+ {% endfor %} +
+
+ +
+
+ + + + + + diff --git a/pages/mmp_pages.md b/pages/mmp_pages.md new file mode 100644 index 00000000..904d0b14 --- /dev/null +++ b/pages/mmp_pages.md @@ -0,0 +1,264 @@ +--- +layout: default +title: Arquivos MMP +permalink: /mmp_pages/ +--- + +
+
+
+ +
+ {% include sidebar.html %} +
+ +
+

📁 Projetos Disponíveis

+

+ Explore, ouça e reutilize projetos da comunidade LMMS. +

+
+
+ +
+ {% assign mmp_pages = site.pages | where_exp: "page", "page.path contains 'mmp_pages/'" | sort: "title" %} + {% for page in mmp_pages %} + {% if page.url != '/mmp_pages/' %} +
+ +
+ + +
+ +
+ + + +
+ +

+ {{ page.title | default: page.name | replace: '.html', '' }} +

+ + {% if page.bpm %} +
+ + 🎵 {{ page.bpm }} BPM + +
+ {% else %} +
+ {% endif %} + +
+ + {% if page.tags %} +
+ {% endif %} +
+ + +
+ + Ver + + + {% assign creation_url = '/mmpSearch/creation.html?project=' | append: page.file %} + {% assign embed_url = creation_url | append: '&embed=true' %} + + + Editar + +
+ +
+
+ {% endif %} + {% endfor %} +
+ +

+ +
+
+ + + + + + diff --git a/pages/pattern.md b/pages/pattern.md new file mode 100644 index 00000000..52f72553 --- /dev/null +++ b/pages/pattern.md @@ -0,0 +1,574 @@ +--- +layout: default +title: Projetos por Pattern Rítmico +permalink: /pattern/ +--- + + + +
+
+
+
+ +
+ {% include sidebar.html %} +
+ +
+
+
+

+ + Busca por Pattern Rítmico +

+

+ Desenhe um ritmo (16 steps) abaixo ou clique nos patterns dos + instrumentos: +

+ + + + +
+
+
+ +
+ {% for projeto in site.data.all %} {% assign project_patterns_flat = "" + | split: "," %} {% for track in projeto.tracks %} {% if + track.instruments %} {% for instrument in track.instruments %} {% if + instrument.patterns %} {% for pattern in instrument.patterns %} {% + assign pattern_steps = pattern.steps %} {% if pattern_steps and + pattern_steps.size > 0 %} {% assign total_steps = pattern_steps.size %} + {% assign chunk_size = 4 %} {% assign num_chunks = total_steps | + divided_by: chunk_size %} {% assign remainder = total_steps | modulo: + chunk_size %} {% if remainder > 0 %}{% assign num_chunks = num_chunks | + plus: 1 %}{% endif %} {% for i in (0..num_chunks) %} {% assign + start_index = i | times: chunk_size %} {% assign current_chunk_array = + pattern_steps | slice: start_index, chunk_size %} {% if + current_chunk_array.size > 0 %} {% assign chunk_string = "" %} {% for + step in current_chunk_array %} {% if step == true or step == 'true' or + step == 1 %}{% assign chunk_string = chunk_string | append: '1' %}{% + else %}{% assign chunk_string = chunk_string | append: '0' %}{% endif %} + {% endfor %} {% unless project_patterns_flat contains chunk_string %} {% + assign project_patterns_flat = project_patterns_flat | push: + chunk_string %} {% endunless %} {% endif %} {% endfor %} {% endif %} {% + endfor %} {% endif %} {% endfor %} {% endif %} {% endfor %} {% if + project_patterns_flat.size > 0 %} {% assign project_patterns_string = + project_patterns_flat | join: ',' %} + +
+
+ {% assign file_url = projeto.file | downcase | replace: ' ', '-' | + replace: 'ç', 'c' | replace: 'ã', 'a' | replace: 'á', 'a' | replace: + 'â', 'a' | replace: 'é', 'e' | replace: 'ê', 'e' | replace: 'í', 'i' + | replace: 'ó', 'o' | replace: 'ô', 'o' | replace: 'õ', 'o' | + replace: 'ú', 'u' %} {% assign page_url = '../mmp_pages/' | append: + file_url | append: '.html' %} + + +
+
+ +
+

+ {{ projeto.file }} +

+
+
+ +
+
+

+ Patterns por Instrumento: +

+ +
+ {% for track in projeto.tracks %} {% if track.instruments %} + {% for instrument in track.instruments %} {% if + instrument.patterns %} {% assign inst_patterns = "" | split: + "," %} {% for pattern in instrument.patterns %} {% assign + pattern_steps = pattern.steps %} {% if pattern_steps and + pattern_steps.size > 0 %} {% assign total_steps = + pattern_steps.size %} {% assign chunk_size = 4 %} {% assign + num_chunks = total_steps | divided_by: chunk_size %} {% assign + remainder = total_steps | modulo: chunk_size %} {% if + remainder > 0 %}{% assign num_chunks = num_chunks | plus: 1 + %}{% endif %} {% for i in (0..num_chunks) %} {% assign + start_index = i | times: chunk_size %} {% assign + current_chunk_array = pattern_steps | slice: start_index, + chunk_size %} {% if current_chunk_array.size > 0 %} {% assign + chunk_string = "" %} {% for step in current_chunk_array %} {% + if step == true or step == 'true' or step == 1 %}{% assign + chunk_string = chunk_string | append: '1' %}{% else %}{% + assign chunk_string = chunk_string | append: '0' %}{% endif %} + {% endfor %} {% if chunk_string != "0000" %} {% unless + inst_patterns contains chunk_string %} {% assign inst_patterns + = inst_patterns | push: chunk_string %} {% endunless %} {% + endif %} {% endif %} {% endfor %} {% endif %} {% endfor %} {% + if inst_patterns.size > 0 %} +
+ {% assign instrument_slug = instrument.instrument_name | + replace: ' ', '+' %} + + {{ instrument.instrument_name }} + + +
+ {% for p_str in inst_patterns %} +
+ {% assign bits = p_str | split: '' %} {% for bit in bits + %} +
+ {% endfor %} +
+ {% endfor %} +
+
+ {% endif %} {% endif %} {% endfor %} {% endif %} {% endfor %} +
+
+
+ +
+ Ver + {% assign creation_url = '/mmpSearch/creation.html?project=' | + append: projeto.file %} {% assign embed_url = creation_url | + append: '&embed=true' %} + Editar +
+
+
+ {% endif %} {% endfor %} +
+
+ +
+
+ + + + + + diff --git a/pages/plugin.md b/pages/plugin.md new file mode 100644 index 00000000..7ee13eb2 --- /dev/null +++ b/pages/plugin.md @@ -0,0 +1,504 @@ +--- +layout: default +title: Projetos com a tag Plugin +permalink: /plugin/ +--- + + + +
+
+
+
+ +
+ {% include sidebar.html %} +
+ +
+ +
+ + Todos os Plugins Disponíveis + +
+ +
+ +
+
+ {% assign all_items_string = "" %} {% for p in site.data.all %} {% + if p.tags.plugin %} {% for item in p.tags.plugin %} {% if item != "" + %} {% unless all_items_string contains item %} {% assign + all_items_string = all_items_string | append: item | append: "|||" + %} {% endunless %} {% endif %} {% endfor %} {% endif %} {% endfor %} + {% assign unique_items = all_items_string | split: "|||" | sort %} + {% for item in unique_items %} {% if item != "" %} + + {{ item }} + + {% endif %} {% endfor %} +
+
+
+ +
+
+

+ + Filtro: + (todos) +

+
+
+ +
+
+ +
+ {% for projeto in site.data.all %} {% if projeto.tags.TAG contains + "plugin" %} + +
+
+ {% assign file_url = projeto.file | downcase | replace: ' ', '-' | + replace: 'ç', 'c' | replace: 'ã', 'a' | replace: 'á', 'a' | replace: + 'â', 'a' | replace: 'é', 'e' | replace: 'ê', 'e' | replace: 'í', 'i' + | replace: 'ó', 'o' | replace: 'ô', 'o' | replace: 'õ', 'o' | + replace: 'ú', 'u' %} {% assign page_url = '../mmp_pages/' | append: + file_url | append: '.html' %} + + +
+
+ +
+ +

+ {{ projeto.file }} +

+ + {% if projeto.bpm %} +
+ + 🎵 {{ projeto.bpm }} BPM + +
+ {% else %} +
+ {% endif %} + +
+ + {% if projeto.tags.plugin and projeto.tags.plugin.size > 0 %} +
+ {% for item in projeto.tags.plugin %} {% if item != "" %} + + {{ item | truncate: 15 }} + + {% endif %} {% endfor %} +
+ {% endif %} +
+
+ +
+ Ver + {% assign creation_url = '/mmpSearch/creation.html?project=' | + append: projeto.file %} {% assign embed_url = creation_url | + append: '&embed=true' %} + Editar +
+
+
+ {% endif %} {% endfor %} +
+
+
+
+ + + + + + diff --git a/pages/projetosPorTrack.md b/pages/projetosPorTrack.md new file mode 100644 index 00000000..38bb1d5a --- /dev/null +++ b/pages/projetosPorTrack.md @@ -0,0 +1,57 @@ +--- +layout: default +title: Projetos por tipo de track +permalink: /projetosPorTrack/ +--- + + +
+
+ +
+
+
+ {% include sidebar.html %} +
+ +
+
+
+

Navegar por Categorias

+ + + + BUSCAR POR INSTRUMENTO + + +
+ + + + BUSCAR POR DESENHO DE PATTERN + + +
OU POR TIPO DE TRACK
+ +
+ {% assign tags_exibidas = "" %} + {% for item in site.data.all %} + {% for tag in item.tags.TAG %} + {% unless tags_exibidas contains tag %} + {% capture tags_exibidas %}{{ tags_exibidas }},{{ tag }}{% endcapture %} + + + {{ tag | upcase }} + + {% endunless %} + {% endfor %} + {% endfor %} +
+
+
+
+
+ +
+
diff --git a/pages/quantasVezes.md b/pages/quantasVezes.md new file mode 100644 index 00000000..b1c108f2 --- /dev/null +++ b/pages/quantasVezes.md @@ -0,0 +1,39 @@ +--- +layout: default +title: Quantidade de Repetições de Instrumentos +permalink: /quantasVezesAparecemInstrumentos/ +--- + +
+
+ {% include sidebar.html %} +
+
+

Quantidade de vezes que cada instrumento é utilizado:

+
    + {% for item in site.data.processed_data %} +
  • {{ item.instrument_name }}: {{ item.count }}
  • + {% endfor %} +
+
+
+ + + diff --git a/pages/sample.md b/pages/sample.md new file mode 100644 index 00000000..953df4f9 --- /dev/null +++ b/pages/sample.md @@ -0,0 +1,127 @@ +--- +layout: default +title: Projetos com a tag Sample +permalink: /sample/ +--- + + + +
+
+
+ {% include sidebar.html %} +
+ +
+
+ +
+

Projetos que possuem a tag sample:

+
+ +
+ +
+
+ + +
+ {% for projeto in site.data.all %} + {% if projeto.tags.TAG contains "sample" %} +
+
+ + {% assign file_url = projeto.file | downcase + | replace: ' ', '-' + | replace: 'ç', 'c' + | replace: 'ã', 'a' + | replace: 'á', 'a' + | replace: 'â', 'a' + | replace: 'é', 'e' + | replace: 'ê', 'e' + | replace: 'í', 'i' + | replace: 'ó', 'o' + | replace: 'ô', 'o' + | replace: 'õ', 'o' + | replace: 'ú', 'u' %} + + + {{ projeto.file }} + + + + {% if projeto.tags.sample and projeto.tags.sample.size > 0 %} +
+

Sample:

+
    + {% for sample in projeto.tags.sample %} + {% if sample != "" %} +
  • {{ sample }}
  • + {% endif %} + {% endfor %} +
+
+ {% endif %} +
+
+ {% endif %} + {% endfor %} +
+ +
+
+ + diff --git a/pages/wavFiles.md b/pages/wavFiles.md new file mode 100644 index 00000000..e5384182 --- /dev/null +++ b/pages/wavFiles.md @@ -0,0 +1,132 @@ +--- +layout: default +title: Beats Disponíveis +permalink: /beats/ +--- + +
+
+
+ {% include sidebar.html %} +
+
+
+

🎧 Lista de Beats 🎧

+

Aqui estão os beats disponíveis. +
Clique em um beat para ouvi-lo.

+ + +
+ {% assign files = site.static_files %} + {% for file in files %} + {% if file.path contains '/wav/' %} +
+ {% assign project_url = "" %} + + + {% assign file_name_without_extension = file.name | remove: '.wav' %} + {% for projeto in site.data.all %} + {% if projeto.file == file_name_without_extension %} + {% assign project_url = "/mmp_pages/" + | append: projeto.file + | downcase + | replace: ' ', '-' + | replace: ' ', '-' + | replace: 'ç', 'c' + | replace: 'ã', 'a' + | replace: 'á', 'a' + | replace: 'â', 'a' + | replace: 'é', 'e' + | replace: 'ê', 'e' + | replace: 'í', 'i' + | replace: 'ó', 'o' + | replace: 'ô', 'o' + | replace: 'õ', 'o' + | replace: 'ú', 'u' + | append: ".html" %} + {% endif %} + {% endfor %} + +

+ {% if project_url %} + + + {{ file.name | replace: '.wav', '' }} + + {% else %} + + {{ file.name | replace: '.wav', '' }} + {% endif %} +

+ + +
+ {% endif %} + {% endfor %} +
+
+ +
+
+ + + +