OK, rename

This commit is contained in:
2025-10-14 02:11:59 +02:00
parent 6116745795
commit dfb57a082f
6 changed files with 104 additions and 75 deletions

View File

@ -1,4 +1,4 @@
# poof
# rsgp
Audio synthesis web application for generating random sound samples. Users generate sounds via different synthesis engines, mutate parameters, apply audio processors in multiple passes, and export as WAV. Built for musicians seeking unexpected textures and one-shots.
@ -39,8 +39,8 @@ pnpm build
## Docker
```sh
docker build -t poof .
docker run -p 8080:80 poof
docker build -t rsgp .
docker run -p 8080:80 rsgp
```
Opens on http://localhost:8080

View File

@ -4,9 +4,9 @@
<meta charset="UTF-8" />
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="description" content="Poof: a sample generator" />
<meta name="description" content="RSGP: Random Sample Generator and Processor" />
<meta name="theme-color" content="#000000" />
<title>Poof</title>
<title>RSGP</title>
</head>
<body>
<div id="app"></div>

View File

@ -1,5 +1,5 @@
{
"name": "poof",
"name": "rsgp",
"private": true,
"version": "0.0.0",
"type": "module",

BIN
public/tutorial.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 972 KiB

View File

@ -532,7 +532,7 @@
<line x1="3" y1="18" x2="21" y2="18" />
</svg>
</button>
<h1 class="app-title">Poof: a sample generator and processor</h1>
<h1 class="app-title">RSGP: Random Sample Generator and Processor</h1>
<div class="controls-group">
{#if showPitchLock}
<div class="control-item pitch-lock-control">

View File

@ -21,39 +21,35 @@
onclick={(e) => e.stopPropagation()}
onkeydown={(e) => e.stopPropagation()}
>
<h1 id="modal-title">Poof: a sample generator</h1>
<p class="description">
Do you need to generate audio samples for your projects? Poof, it's
already done! These are not the best samples you'll ever hear, but they
have the right to exist, nonetheless, in the realm of all the random and
haphazardly generated digital sounds. Have fun, give computers some love!
</p>
<ul>
<h1 id="modal-title">Random Sample Generator and Processor</h1>
<div class="modal-columns">
<div class="modal-column gif-column">
<img src="/tutorial.gif" alt="Tutorial showing how to use RSGP" class="tutorial-gif" />
</div>
<div class="modal-column text-column">
<ol>
<li class="description">
Generate audio samples using various audio synthesis generators. Random
parameters.
Generate new samples using a diverse collection of synth engines.
</li>
<li class="description">
Process each sound with with a growing collection of random effects.
Process samples using a growing list of tools and effects.
</li>
<li class="description">Export your samples as WAV files.</li>
</ul>
<div class="modal-links">
<p>
</ol>
</div>
</div>
<p class="modal-footer">
Created by <a
href="https://raphaelforment.fr"
target="_blank"
rel="noopener noreferrer">Raphaël Forment (BuboBubo)</a
>
</p>
<p>
Licensed under <a
• Licensed under <a
href="https://www.gnu.org/licenses/gpl-3.0.html"
target="_blank"
rel="noopener noreferrer">GPL 3.0</a
>
</p>
</div>
<button class="modal-close" onclick={onclose}>Start</button>
</div>
</div>
@ -98,7 +94,7 @@
background-color: #000;
border: 2px solid #fff;
padding: 1.25rem;
max-width: 500px;
max-width: 800px;
width: calc(100% - 2rem);
color: #fff;
max-height: 90vh;
@ -108,60 +104,92 @@
}
.modal-content h1 {
margin: 0 0 0.5rem 0;
font-size: 1.75rem;
margin: 0 0 1.575rem 0;
font-size: 1.25rem;
font-weight: bold;
letter-spacing: 0.02em;
text-align: center;
}
.modal-columns {
display: flex;
flex-direction: column;
gap: 1.575rem;
margin-bottom: 1.575rem;
}
.modal-column {
flex: 1;
}
.gif-column {
flex: 0 0 auto;
max-width: 420px;
}
.text-column {
flex: 1;
display: flex;
flex-direction: column;
justify-content: center;
}
.text-column ol {
display: flex;
flex-direction: column;
justify-content: space-evenly;
height: 100%;
margin: 0;
padding-left: 2rem;
}
.modal-content .description {
margin: 0 0 1rem 0;
margin: 0;
line-height: 1.6;
color: #e0e0e0;
font-size: 0.875rem;
}
.tutorial-gif {
width: 100%;
max-width: 100%;
height: auto;
border: 1px solid #444;
}
.modal-content ul {
margin: 0 0 1rem 0;
padding-left: 1.25rem;
}
.modal-content ul li {
margin-bottom: 0.5rem;
}
.modal-content ul li:last-child {
margin-bottom: 0;
}
.modal-links {
margin: 1.25rem 0;
padding: 0.875rem 0;
border-top: 1px solid #444;
border-bottom: 1px solid #444;
.text-column ol li {
margin-bottom: 0;
}
.modal-links p {
margin: 0.375rem 0;
font-size: 0.8125rem;
.modal-footer {
margin: 0 0 1.575rem 0;
font-size: 0.75rem;
color: #bbb;
line-height: 1.5;
text-align: center;
}
.modal-links a {
.modal-footer a {
color: #646cff;
text-decoration: none;
word-break: break-word;
transition: color 0.2s ease;
}
.modal-links a:hover {
.modal-footer a:hover {
color: #8891ff;
text-decoration: underline;
}
.modal-close {
margin-top: 1rem;
margin-top: 0;
width: 100%;
padding: 0.75rem;
font-size: 1rem;
@ -194,8 +222,8 @@
}
.modal-content h1 {
font-size: 2rem;
margin: 0 0 0.75rem 0;
font-size: 1.5rem;
margin: 0 0 1.575rem 0;
}
.modal-content .description {
@ -213,32 +241,33 @@
}
.modal-content h1 {
font-size: 2.5rem;
margin: 0 0 1rem 0;
font-size: 1.75rem;
margin: 0 0 2.1rem 0;
}
.modal-columns {
flex-direction: row;
gap: 2.1rem;
margin-bottom: 2.1rem;
}
.modal-content .description {
margin: 0 0 1.25rem 0;
margin: 0;
font-size: 1rem;
line-height: 1.7;
}
.modal-content ul {
margin: 0 0 1.25rem 0;
margin: 0;
}
.modal-links {
margin: 1.75rem 0;
padding: 1.125rem 0;
}
.modal-links p {
font-size: 0.9375rem;
margin: 0.5rem 0;
.modal-footer {
margin: 0 0 2.1rem 0;
font-size: 0.875rem;
}
.modal-close {
margin-top: 1.25rem;
margin-top: 0;
padding: 0.875rem;
font-size: 1.125rem;
}