mirror of
https://github.com/eliasstepanik/strudel.git
synced 2026-01-11 21:58:37 +00:00
commit
a7daf41934
@ -10,3 +10,4 @@ paper
|
||||
pnpm-lock.yaml
|
||||
pnpm-workspace.yaml
|
||||
**/dev-dist
|
||||
website/.astro
|
||||
|
||||
7
pnpm-lock.yaml
generated
7
pnpm-lock.yaml
generated
@ -586,6 +586,9 @@ importers:
|
||||
claviature:
|
||||
specifier: ^0.1.0
|
||||
version: 0.1.0
|
||||
date-fns:
|
||||
specifier: ^3.2.0
|
||||
version: 3.2.0
|
||||
nanoid:
|
||||
specifier: ^5.0.4
|
||||
version: 5.0.4
|
||||
@ -6220,6 +6223,10 @@ packages:
|
||||
engines: {node: '>= 12'}
|
||||
dev: true
|
||||
|
||||
/date-fns@3.2.0:
|
||||
resolution: {integrity: sha512-E4KWKavANzeuusPi0jUjpuI22SURAznGkx7eZV+4i6x2A+IZxAMcajgkvuDAU1bg40+xuhW1zRdVIIM/4khuIg==}
|
||||
dev: false
|
||||
|
||||
/dateformat@3.0.3:
|
||||
resolution: {integrity: sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==}
|
||||
dev: true
|
||||
|
||||
276
website/.astro/types.d.ts
vendored
Normal file
276
website/.astro/types.d.ts
vendored
Normal file
@ -0,0 +1,276 @@
|
||||
declare module 'astro:content' {
|
||||
interface Render {
|
||||
'.mdx': Promise<{
|
||||
Content: import('astro').MarkdownInstance<{}>['Content'];
|
||||
headings: import('astro').MarkdownHeading[];
|
||||
remarkPluginFrontmatter: Record<string, any>;
|
||||
}>;
|
||||
}
|
||||
}
|
||||
|
||||
declare module 'astro:content' {
|
||||
interface Render {
|
||||
'.md': Promise<{
|
||||
Content: import('astro').MarkdownInstance<{}>['Content'];
|
||||
headings: import('astro').MarkdownHeading[];
|
||||
remarkPluginFrontmatter: Record<string, any>;
|
||||
}>;
|
||||
}
|
||||
}
|
||||
|
||||
declare module 'astro:content' {
|
||||
export { z } from 'astro/zod';
|
||||
|
||||
type Flatten<T> = T extends { [K: string]: infer U } ? U : never;
|
||||
|
||||
export type CollectionKey = keyof AnyEntryMap;
|
||||
export type CollectionEntry<C extends CollectionKey> = Flatten<AnyEntryMap[C]>;
|
||||
|
||||
export type ContentCollectionKey = keyof ContentEntryMap;
|
||||
export type DataCollectionKey = keyof DataEntryMap;
|
||||
|
||||
// This needs to be in sync with ImageMetadata
|
||||
export type ImageFunction = () => import('astro/zod').ZodObject<{
|
||||
src: import('astro/zod').ZodString;
|
||||
width: import('astro/zod').ZodNumber;
|
||||
height: import('astro/zod').ZodNumber;
|
||||
format: import('astro/zod').ZodUnion<
|
||||
[
|
||||
import('astro/zod').ZodLiteral<'png'>,
|
||||
import('astro/zod').ZodLiteral<'jpg'>,
|
||||
import('astro/zod').ZodLiteral<'jpeg'>,
|
||||
import('astro/zod').ZodLiteral<'tiff'>,
|
||||
import('astro/zod').ZodLiteral<'webp'>,
|
||||
import('astro/zod').ZodLiteral<'gif'>,
|
||||
import('astro/zod').ZodLiteral<'svg'>,
|
||||
import('astro/zod').ZodLiteral<'avif'>,
|
||||
]
|
||||
>;
|
||||
}>;
|
||||
|
||||
type BaseSchemaWithoutEffects =
|
||||
| import('astro/zod').AnyZodObject
|
||||
| import('astro/zod').ZodUnion<[BaseSchemaWithoutEffects, ...BaseSchemaWithoutEffects[]]>
|
||||
| import('astro/zod').ZodDiscriminatedUnion<string, import('astro/zod').AnyZodObject[]>
|
||||
| import('astro/zod').ZodIntersection<BaseSchemaWithoutEffects, BaseSchemaWithoutEffects>;
|
||||
|
||||
type BaseSchema =
|
||||
| BaseSchemaWithoutEffects
|
||||
| import('astro/zod').ZodEffects<BaseSchemaWithoutEffects>;
|
||||
|
||||
export type SchemaContext = { image: ImageFunction };
|
||||
|
||||
type DataCollectionConfig<S extends BaseSchema> = {
|
||||
type: 'data';
|
||||
schema?: S | ((context: SchemaContext) => S);
|
||||
};
|
||||
|
||||
type ContentCollectionConfig<S extends BaseSchema> = {
|
||||
type?: 'content';
|
||||
schema?: S | ((context: SchemaContext) => S);
|
||||
};
|
||||
|
||||
type CollectionConfig<S> = ContentCollectionConfig<S> | DataCollectionConfig<S>;
|
||||
|
||||
export function defineCollection<S extends BaseSchema>(
|
||||
input: CollectionConfig<S>
|
||||
): CollectionConfig<S>;
|
||||
|
||||
type AllValuesOf<T> = T extends any ? T[keyof T] : never;
|
||||
type ValidContentEntrySlug<C extends keyof ContentEntryMap> = AllValuesOf<
|
||||
ContentEntryMap[C]
|
||||
>['slug'];
|
||||
|
||||
export function getEntryBySlug<
|
||||
C extends keyof ContentEntryMap,
|
||||
E extends ValidContentEntrySlug<C> | (string & {}),
|
||||
>(
|
||||
collection: C,
|
||||
// Note that this has to accept a regular string too, for SSR
|
||||
entrySlug: E
|
||||
): E extends ValidContentEntrySlug<C>
|
||||
? Promise<CollectionEntry<C>>
|
||||
: Promise<CollectionEntry<C> | undefined>;
|
||||
|
||||
export function getDataEntryById<C extends keyof DataEntryMap, E extends keyof DataEntryMap[C]>(
|
||||
collection: C,
|
||||
entryId: E
|
||||
): Promise<CollectionEntry<C>>;
|
||||
|
||||
export function getCollection<C extends keyof AnyEntryMap, E extends CollectionEntry<C>>(
|
||||
collection: C,
|
||||
filter?: (entry: CollectionEntry<C>) => entry is E
|
||||
): Promise<E[]>;
|
||||
export function getCollection<C extends keyof AnyEntryMap>(
|
||||
collection: C,
|
||||
filter?: (entry: CollectionEntry<C>) => unknown
|
||||
): Promise<CollectionEntry<C>[]>;
|
||||
|
||||
export function getEntry<
|
||||
C extends keyof ContentEntryMap,
|
||||
E extends ValidContentEntrySlug<C> | (string & {}),
|
||||
>(entry: {
|
||||
collection: C;
|
||||
slug: E;
|
||||
}): E extends ValidContentEntrySlug<C>
|
||||
? Promise<CollectionEntry<C>>
|
||||
: Promise<CollectionEntry<C> | undefined>;
|
||||
export function getEntry<
|
||||
C extends keyof DataEntryMap,
|
||||
E extends keyof DataEntryMap[C] | (string & {}),
|
||||
>(entry: {
|
||||
collection: C;
|
||||
id: E;
|
||||
}): E extends keyof DataEntryMap[C]
|
||||
? Promise<DataEntryMap[C][E]>
|
||||
: Promise<CollectionEntry<C> | undefined>;
|
||||
export function getEntry<
|
||||
C extends keyof ContentEntryMap,
|
||||
E extends ValidContentEntrySlug<C> | (string & {}),
|
||||
>(
|
||||
collection: C,
|
||||
slug: E
|
||||
): E extends ValidContentEntrySlug<C>
|
||||
? Promise<CollectionEntry<C>>
|
||||
: Promise<CollectionEntry<C> | undefined>;
|
||||
export function getEntry<
|
||||
C extends keyof DataEntryMap,
|
||||
E extends keyof DataEntryMap[C] | (string & {}),
|
||||
>(
|
||||
collection: C,
|
||||
id: E
|
||||
): E extends keyof DataEntryMap[C]
|
||||
? Promise<DataEntryMap[C][E]>
|
||||
: Promise<CollectionEntry<C> | undefined>;
|
||||
|
||||
/** Resolve an array of entry references from the same collection */
|
||||
export function getEntries<C extends keyof ContentEntryMap>(
|
||||
entries: {
|
||||
collection: C;
|
||||
slug: ValidContentEntrySlug<C>;
|
||||
}[]
|
||||
): Promise<CollectionEntry<C>[]>;
|
||||
export function getEntries<C extends keyof DataEntryMap>(
|
||||
entries: {
|
||||
collection: C;
|
||||
id: keyof DataEntryMap[C];
|
||||
}[]
|
||||
): Promise<CollectionEntry<C>[]>;
|
||||
|
||||
export function reference<C extends keyof AnyEntryMap>(
|
||||
collection: C
|
||||
): import('astro/zod').ZodEffects<
|
||||
import('astro/zod').ZodString,
|
||||
C extends keyof ContentEntryMap
|
||||
? {
|
||||
collection: C;
|
||||
slug: ValidContentEntrySlug<C>;
|
||||
}
|
||||
: {
|
||||
collection: C;
|
||||
id: keyof DataEntryMap[C];
|
||||
}
|
||||
>;
|
||||
// Allow generic `string` to avoid excessive type errors in the config
|
||||
// if `dev` is not running to update as you edit.
|
||||
// Invalid collection names will be caught at build time.
|
||||
export function reference<C extends string>(
|
||||
collection: C
|
||||
): import('astro/zod').ZodEffects<import('astro/zod').ZodString, never>;
|
||||
|
||||
type ReturnTypeOrOriginal<T> = T extends (...args: any[]) => infer R ? R : T;
|
||||
type InferEntrySchema<C extends keyof AnyEntryMap> = import('astro/zod').infer<
|
||||
ReturnTypeOrOriginal<Required<ContentConfig['collections'][C]>['schema']>
|
||||
>;
|
||||
|
||||
type ContentEntryMap = {
|
||||
"blog": {
|
||||
"release-0.0.2-schwindlig.mdx": {
|
||||
id: "release-0.0.2-schwindlig.mdx";
|
||||
slug: "release-002-schwindlig";
|
||||
body: string;
|
||||
collection: "blog";
|
||||
data: InferEntrySchema<"blog">
|
||||
} & { render(): Render[".mdx"] };
|
||||
"release-0.0.2.1-stuermisch.mdx": {
|
||||
id: "release-0.0.2.1-stuermisch.mdx";
|
||||
slug: "release-0021-stuermisch";
|
||||
body: string;
|
||||
collection: "blog";
|
||||
data: InferEntrySchema<"blog">
|
||||
} & { render(): Render[".mdx"] };
|
||||
"release-0.0.3-maelstrom.mdx": {
|
||||
id: "release-0.0.3-maelstrom.mdx";
|
||||
slug: "release-003-maelstrom";
|
||||
body: string;
|
||||
collection: "blog";
|
||||
data: InferEntrySchema<"blog">
|
||||
} & { render(): Render[".mdx"] };
|
||||
"release-0.0.4-gischt.mdx": {
|
||||
id: "release-0.0.4-gischt.mdx";
|
||||
slug: "release-004-gischt";
|
||||
body: string;
|
||||
collection: "blog";
|
||||
data: InferEntrySchema<"blog">
|
||||
} & { render(): Render[".mdx"] };
|
||||
"release-0.3.0-donauwelle.mdx": {
|
||||
id: "release-0.3.0-donauwelle.mdx";
|
||||
slug: "release-030-donauwelle";
|
||||
body: string;
|
||||
collection: "blog";
|
||||
data: InferEntrySchema<"blog">
|
||||
} & { render(): Render[".mdx"] };
|
||||
"release-0.4.0-brandung.mdx": {
|
||||
id: "release-0.4.0-brandung.mdx";
|
||||
slug: "release-040-brandung";
|
||||
body: string;
|
||||
collection: "blog";
|
||||
data: InferEntrySchema<"blog">
|
||||
} & { render(): Render[".mdx"] };
|
||||
"release-0.5.0-wirbel.mdx": {
|
||||
id: "release-0.5.0-wirbel.mdx";
|
||||
slug: "release-050-wirbel";
|
||||
body: string;
|
||||
collection: "blog";
|
||||
data: InferEntrySchema<"blog">
|
||||
} & { render(): Render[".mdx"] };
|
||||
"release-0.6.0-zimtschnecke.mdx": {
|
||||
id: "release-0.6.0-zimtschnecke.mdx";
|
||||
slug: "release-060-zimtschnecke";
|
||||
body: string;
|
||||
collection: "blog";
|
||||
data: InferEntrySchema<"blog">
|
||||
} & { render(): Render[".mdx"] };
|
||||
"release-0.7.0-zuckerguss.mdx": {
|
||||
id: "release-0.7.0-zuckerguss.mdx";
|
||||
slug: "release-070-zuckerguss";
|
||||
body: string;
|
||||
collection: "blog";
|
||||
data: InferEntrySchema<"blog">
|
||||
} & { render(): Render[".mdx"] };
|
||||
"release-0.8.0-himbeermuffin.mdx": {
|
||||
id: "release-0.8.0-himbeermuffin.mdx";
|
||||
slug: "release-080-himbeermuffin";
|
||||
body: string;
|
||||
collection: "blog";
|
||||
data: InferEntrySchema<"blog">
|
||||
} & { render(): Render[".mdx"] };
|
||||
"release-0.9.0-bananenbrot.mdx": {
|
||||
id: "release-0.9.0-bananenbrot.mdx";
|
||||
slug: "release-090-bananenbrot";
|
||||
body: string;
|
||||
collection: "blog";
|
||||
data: InferEntrySchema<"blog">
|
||||
} & { render(): Render[".mdx"] };
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
type DataEntryMap = {
|
||||
|
||||
};
|
||||
|
||||
type AnyEntryMap = ContentEntryMap & DataEntryMap;
|
||||
|
||||
type ContentConfig = typeof import("../src/content/config");
|
||||
}
|
||||
@ -48,6 +48,7 @@
|
||||
"astro": "^4.0.8",
|
||||
"canvas": "^2.11.2",
|
||||
"claviature": "^0.1.0",
|
||||
"date-fns": "^3.2.0",
|
||||
"nanoid": "^5.0.4",
|
||||
"nanostores": "^0.9.5",
|
||||
"react": "^18.2.0",
|
||||
|
||||
27
website/src/components/BlogPost.astro
Normal file
27
website/src/components/BlogPost.astro
Normal file
@ -0,0 +1,27 @@
|
||||
---
|
||||
import type { CollectionEntry } from 'astro:content';
|
||||
|
||||
type Props = CollectionEntry<'blog'>['data'];
|
||||
|
||||
const { post } = Astro.props;
|
||||
const { Content } = await post.render();
|
||||
import { format } from 'date-fns';
|
||||
---
|
||||
|
||||
<article
|
||||
class="prose max-w-none prose-headings:font-sans prose-headings:font-black prose-headings:text-slate-900 dark:prose-headings:text-gray-200 dark:text-gray-400 dark:prose-strong:text-gray-400 dark:prose-code:text-slate-400 dark:prose-a:text-gray-300 prose-a:text-slate-900 prose-blockquote:text-slate-800 dark:prose-blockquote:text-slate-400"
|
||||
>
|
||||
<div class="pb-2">
|
||||
<div class="md:flex justify-between">
|
||||
<h1 class="mb-4" id={post.slug}>{post.data.title}</h1>
|
||||
</div>
|
||||
<p class="italic p-0 m-0">
|
||||
<time datetime={post.data.date.toISOString()}>
|
||||
{format(post.data.date, 'MMMM yyyy')} by {post.data.author}
|
||||
</time>
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<Content />
|
||||
</div>
|
||||
</article>
|
||||
5
website/src/components/BlogVideo.astro
Normal file
5
website/src/components/BlogVideo.astro
Normal file
@ -0,0 +1,5 @@
|
||||
---
|
||||
const { src } = Astro.props;
|
||||
---
|
||||
|
||||
<video controls width="600" src={src}></video>
|
||||
@ -9,7 +9,7 @@ import MobileNav from '../../docs/MobileNav';
|
||||
import { SIDEBAR } from '../../config';
|
||||
|
||||
type Props = {
|
||||
currentPage: string;
|
||||
currentPage?: string;
|
||||
};
|
||||
|
||||
const { currentPage } = Astro.props as Props;
|
||||
|
||||
@ -1,18 +1,11 @@
|
||||
---
|
||||
import type { Frontmatter } from '../../config';
|
||||
import MoreMenu from '../RightSidebar/MoreMenu.astro';
|
||||
import TableOfContents from '../RightSidebar/TableOfContents';
|
||||
import type { MarkdownHeading } from 'astro';
|
||||
|
||||
type Props = {
|
||||
frontmatter: Frontmatter;
|
||||
headings: MarkdownHeading[];
|
||||
githubEditUrl: string;
|
||||
githubEditUrl?: string;
|
||||
};
|
||||
|
||||
const { frontmatter, headings, githubEditUrl } = Astro.props as Props;
|
||||
const title = frontmatter.title;
|
||||
const currentPage = Astro.url.pathname;
|
||||
const { githubEditUrl } = Astro.props as Props;
|
||||
---
|
||||
|
||||
<article id="article" class="content">
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
import * as CONFIG from '../../config';
|
||||
|
||||
type Props = {
|
||||
editHref: string;
|
||||
editHref?: string;
|
||||
};
|
||||
|
||||
const { editHref } = Astro.props as Props;
|
||||
|
||||
@ -6,7 +6,7 @@ import AvatarList from '../Footer/AvatarList.astro';
|
||||
|
||||
type Props = {
|
||||
headings: MarkdownHeading[];
|
||||
githubEditUrl: string;
|
||||
githubEditUrl?: string;
|
||||
};
|
||||
|
||||
const { headings, githubEditUrl } = Astro.props as Props;
|
||||
|
||||
@ -36,6 +36,13 @@ export function Showcase() {
|
||||
}
|
||||
|
||||
let _videos = [
|
||||
{ title: 'Coding Music With Strudel Workhop by Dan Gorelick and Viola He', id: 'oqyAJ4WeKoU' },
|
||||
{ title: 'Hexe - playing w strudel live coding music', id: '03m3F5xVOMg' },
|
||||
{ title: 'DJ_Dave - Array [Lil Data Edit]', id: 'KUujFuTcuKc' },
|
||||
{ title: 'DJ_Dave - Bitrot [v10101a Edit]', id: 'z_cJMdBp67Q' },
|
||||
{ title: 'you will not steve reich your way out of it', id: 'xpILnXcWyuo' },
|
||||
{ title: 'dough dream #1 - strudel jam 12/03/23', id: 'p0J7XrT9JEs' },
|
||||
{ title: 'eddyflux & superdirtspatz at the dough cathedral', id: 'GrkwKMQ7_Ys' },
|
||||
// solstice 2023
|
||||
{ title: 'Jade Rose @ solstice stream 2023', id: 'wg0vW5Ac7L0' },
|
||||
{
|
||||
|
||||
@ -57,6 +57,7 @@ export const SIDEBAR: Sidebar = {
|
||||
Presentation: [
|
||||
{ text: 'What is Strudel?', link: 'workshop/getting-started' },
|
||||
{ text: 'Showcase', link: 'intro/showcase' },
|
||||
{ text: 'Blog', link: 'blog' },
|
||||
],
|
||||
Workshop: [
|
||||
// { text: 'Getting Started', link: 'workshop/getting-started' },
|
||||
|
||||
40
website/src/content/blog/release-0.0.2-schwindlig.mdx
Normal file
40
website/src/content/blog/release-0.0.2-schwindlig.mdx
Normal file
@ -0,0 +1,40 @@
|
||||
---
|
||||
title: 'Release Notes v0.0.2 Schwindlig'
|
||||
description: ''
|
||||
date: '2022-03-28'
|
||||
tags: ['meta']
|
||||
author: froos
|
||||
---
|
||||
|
||||
## What's Changed
|
||||
|
||||
- Most work done as [commits to main](https://github.com/tidalcycles/strudel/commits/2a0d8c3f77ff7b34e82602e2d02400707f367316)
|
||||
- repl + reify functions by @felixroos in https://github.com/tidalcycles/strudel/pull/2
|
||||
- Fix path by @yaxu in https://github.com/tidalcycles/strudel/pull/3
|
||||
- update readme for local dev by @kindohm in https://github.com/tidalcycles/strudel/pull/4
|
||||
- Patternify all the things by @yaxu in https://github.com/tidalcycles/strudel/pull/5
|
||||
- krill parser + improved repl by @felixroos in https://github.com/tidalcycles/strudel/pull/6
|
||||
- fixed editor crash by @felixroos in https://github.com/tidalcycles/strudel/pull/7
|
||||
- timeCat by @yaxu in https://github.com/tidalcycles/strudel/pull/8
|
||||
- Bugfix every, and create more top level functions by @yaxu in https://github.com/tidalcycles/strudel/pull/9
|
||||
- Failing test for `when` WIP by @yaxu in https://github.com/tidalcycles/strudel/pull/10
|
||||
- Added mask() and struct() by @yaxu in https://github.com/tidalcycles/strudel/pull/11
|
||||
- Add continuous signals (sine, cosine, saw, etc) by @yaxu in https://github.com/tidalcycles/strudel/pull/13
|
||||
- add apply and layer, and missing div/mul methods by @yaxu in https://github.com/tidalcycles/strudel/pull/15
|
||||
- higher latencyHint by @felixroos in https://github.com/tidalcycles/strudel/pull/16
|
||||
- test: 📦 Add missing dependency and a CI check, to prevent oversights ;p by @puria in https://github.com/tidalcycles/strudel/pull/17
|
||||
- fix: 💄 Enhance visualisation of the Tutorial on mobile by @puria in https://github.com/tidalcycles/strudel/pull/19
|
||||
- Stateful queries and events (WIP) by @yaxu in https://github.com/tidalcycles/strudel/pull/14
|
||||
- Fix resolveState by @yaxu in https://github.com/tidalcycles/strudel/pull/22
|
||||
- added \_asNumber + interprete numbers as midi by @felixroos in https://github.com/tidalcycles/strudel/pull/21
|
||||
- Update package.json by @ChiakiUehira in https://github.com/tidalcycles/strudel/pull/23
|
||||
- packaging by @felixroos in https://github.com/tidalcycles/strudel/pull/24
|
||||
|
||||
## New Contributors
|
||||
|
||||
- @felixroos made their first contribution in https://github.com/tidalcycles/strudel/pull/2
|
||||
- @kindohm made their first contribution in https://github.com/tidalcycles/strudel/pull/4
|
||||
- @puria made their first contribution in https://github.com/tidalcycles/strudel/pull/17
|
||||
- @ChiakiUehira made their first contribution in https://github.com/tidalcycles/strudel/pull/23
|
||||
|
||||
**Full Changelog**: https://github.com/tidalcycles/strudel/commits/2a0d8c3f77ff7b34e82602e2d02400707f367316
|
||||
53
website/src/content/blog/release-0.0.2.1-stuermisch.mdx
Normal file
53
website/src/content/blog/release-0.0.2.1-stuermisch.mdx
Normal file
@ -0,0 +1,53 @@
|
||||
---
|
||||
title: 'Release Notes v0.0.3 Stürmisch'
|
||||
date: '2022-05-20'
|
||||
tags: ['meta']
|
||||
author: froos
|
||||
---
|
||||
|
||||
## What's Changed
|
||||
|
||||
- Add chunk, chunkBack and iterBack by @yaxu in https://github.com/tidalcycles/strudel/pull/25
|
||||
- Update tutorial.mdx by @bwagner in https://github.com/tidalcycles/strudel/pull/37
|
||||
- Update tutorial.mdx by @bwagner in https://github.com/tidalcycles/strudel/pull/38
|
||||
- Compose by @felixroos in https://github.com/tidalcycles/strudel/pull/40
|
||||
- Fix polymeter by @yaxu in https://github.com/tidalcycles/strudel/pull/44
|
||||
- First run at squeezeBind, ref #32 by @yaxu in https://github.com/tidalcycles/strudel/pull/48
|
||||
- Implement `chop()` by @yaxu in https://github.com/tidalcycles/strudel/pull/50
|
||||
- OSC and SuperDirt support by @yaxu in https://github.com/tidalcycles/strudel/pull/27
|
||||
- More functions by @yaxu in https://github.com/tidalcycles/strudel/pull/56
|
||||
- More functions by @yaxu in https://github.com/tidalcycles/strudel/pull/61
|
||||
- Separate out strudel.mjs, make index.mjs aggregate module by @yaxu in https://github.com/tidalcycles/strudel/pull/62
|
||||
- Speech output by @felixroos in https://github.com/tidalcycles/strudel/pull/67
|
||||
- use new fixed version of osc-js package by @felixroos in https://github.com/tidalcycles/strudel/pull/68
|
||||
- First effort at rand() by @yaxu in https://github.com/tidalcycles/strudel/pull/69
|
||||
- More randomness, fix `rand`, and add `brand`, `irand` and `choose` by @yaxu in https://github.com/tidalcycles/strudel/pull/70
|
||||
- webaudio package by @felixroos in https://github.com/tidalcycles/strudel/pull/26
|
||||
- Port `perlin` noise, `rangex`, and `palindrome` by @yaxu in https://github.com/tidalcycles/strudel/pull/73
|
||||
- More random functions by @yaxu in https://github.com/tidalcycles/strudel/pull/74
|
||||
- Try to fix appLeft / appRight by @yaxu in https://github.com/tidalcycles/strudel/pull/75
|
||||
- Basic webserial support by @yaxu in https://github.com/tidalcycles/strudel/pull/80
|
||||
- Webaudio in REPL by @felixroos in https://github.com/tidalcycles/strudel/pull/77
|
||||
- add `striate()` by @yaxu in https://github.com/tidalcycles/strudel/pull/76
|
||||
- Tidy up a couple of old files by @mindofmatthew in https://github.com/tidalcycles/strudel/pull/84
|
||||
- Add pattern composers, implements #82 by @yaxu in https://github.com/tidalcycles/strudel/pull/83
|
||||
- Fiddles with cat/stack by @yaxu in https://github.com/tidalcycles/strudel/pull/90
|
||||
- Paper by @felixroos in https://github.com/tidalcycles/strudel/pull/98
|
||||
- Change to Affero GPL by @yaxu in https://github.com/tidalcycles/strudel/pull/101
|
||||
- Work on Codemirror 6 highlighting by @mindofmatthew in https://github.com/tidalcycles/strudel/pull/102
|
||||
- Codemirror 6 by @felixroos in https://github.com/tidalcycles/strudel/pull/97
|
||||
- Tune tests by @felixroos in https://github.com/tidalcycles/strudel/pull/104
|
||||
- /embed package: web component for repl by @felixroos in https://github.com/tidalcycles/strudel/pull/106
|
||||
- Reset, Restart and other composers by @felixroos in https://github.com/tidalcycles/strudel/pull/88
|
||||
- Embed style by @felixroos in https://github.com/tidalcycles/strudel/pull/109
|
||||
- In source doc by @yaxu in https://github.com/tidalcycles/strudel/pull/105
|
||||
- `.brak()`, `.inside()` and `.outside()` by @yaxu in https://github.com/tidalcycles/strudel/pull/112
|
||||
- loopAt by @yaxu in https://github.com/tidalcycles/strudel/pull/114
|
||||
- Osc timing improvements by @yaxu in https://github.com/tidalcycles/strudel/pull/113
|
||||
|
||||
## New Contributors
|
||||
|
||||
- @bwagner made their first contribution in https://github.com/tidalcycles/strudel/pull/37
|
||||
- @mindofmatthew made their first contribution in https://github.com/tidalcycles/strudel/pull/84
|
||||
|
||||
**Full Changelog**: https://github.com/tidalcycles/strudel/compare/v0.0.2...@strudel.cycles/core@0.1.0
|
||||
66
website/src/content/blog/release-0.0.3-maelstrom.mdx
Normal file
66
website/src/content/blog/release-0.0.3-maelstrom.mdx
Normal file
@ -0,0 +1,66 @@
|
||||
---
|
||||
title: 'Release Notes v0.0.3 Maelstrom'
|
||||
description: ''
|
||||
date: '2022-06-18'
|
||||
tags: ['meta']
|
||||
author: froos
|
||||
---
|
||||
|
||||
## What's Changed
|
||||
|
||||
- Add chunk, chunkBack and iterBack by @yaxu in https://github.com/tidalcycles/strudel/pull/25
|
||||
- Update tutorial.mdx by @bwagner in https://github.com/tidalcycles/strudel/pull/37
|
||||
- Update tutorial.mdx by @bwagner in https://github.com/tidalcycles/strudel/pull/38
|
||||
- Compose by @felixroos in https://github.com/tidalcycles/strudel/pull/40
|
||||
- Fix polymeter by @yaxu in https://github.com/tidalcycles/strudel/pull/44
|
||||
- First run at squeezeBind, ref #32 by @yaxu in https://github.com/tidalcycles/strudel/pull/48
|
||||
- Implement `chop()` by @yaxu in https://github.com/tidalcycles/strudel/pull/50
|
||||
- OSC and SuperDirt support by @yaxu in https://github.com/tidalcycles/strudel/pull/27
|
||||
- More functions by @yaxu in https://github.com/tidalcycles/strudel/pull/56
|
||||
- More functions by @yaxu in https://github.com/tidalcycles/strudel/pull/61
|
||||
- Separate out strudel.mjs, make index.mjs aggregate module by @yaxu in https://github.com/tidalcycles/strudel/pull/62
|
||||
- Speech output by @felixroos in https://github.com/tidalcycles/strudel/pull/67
|
||||
- use new fixed version of osc-js package by @felixroos in https://github.com/tidalcycles/strudel/pull/68
|
||||
- First effort at rand() by @yaxu in https://github.com/tidalcycles/strudel/pull/69
|
||||
- More randomness, fix `rand`, and add `brand`, `irand` and `choose` by @yaxu in https://github.com/tidalcycles/strudel/pull/70
|
||||
- webaudio package by @felixroos in https://github.com/tidalcycles/strudel/pull/26
|
||||
- Port `perlin` noise, `rangex`, and `palindrome` by @yaxu in https://github.com/tidalcycles/strudel/pull/73
|
||||
- More random functions by @yaxu in https://github.com/tidalcycles/strudel/pull/74
|
||||
- Try to fix appLeft / appRight by @yaxu in https://github.com/tidalcycles/strudel/pull/75
|
||||
- Basic webserial support by @yaxu in https://github.com/tidalcycles/strudel/pull/80
|
||||
- Webaudio in REPL by @felixroos in https://github.com/tidalcycles/strudel/pull/77
|
||||
- add `striate()` by @yaxu in https://github.com/tidalcycles/strudel/pull/76
|
||||
- Tidy up a couple of old files by @mindofmatthew in https://github.com/tidalcycles/strudel/pull/84
|
||||
- Add pattern composers, implements #82 by @yaxu in https://github.com/tidalcycles/strudel/pull/83
|
||||
- Fiddles with cat/stack by @yaxu in https://github.com/tidalcycles/strudel/pull/90
|
||||
- Paper by @felixroos in https://github.com/tidalcycles/strudel/pull/98
|
||||
- Change to Affero GPL by @yaxu in https://github.com/tidalcycles/strudel/pull/101
|
||||
- Work on Codemirror 6 highlighting by @mindofmatthew in https://github.com/tidalcycles/strudel/pull/102
|
||||
- Codemirror 6 by @felixroos in https://github.com/tidalcycles/strudel/pull/97
|
||||
- Tune tests by @felixroos in https://github.com/tidalcycles/strudel/pull/104
|
||||
- /embed package: web component for repl by @felixroos in https://github.com/tidalcycles/strudel/pull/106
|
||||
- Reset, Restart and other composers by @felixroos in https://github.com/tidalcycles/strudel/pull/88
|
||||
- Embed style by @felixroos in https://github.com/tidalcycles/strudel/pull/109
|
||||
- In source doc by @yaxu in https://github.com/tidalcycles/strudel/pull/105
|
||||
- `.brak()`, `.inside()` and `.outside()` by @yaxu in https://github.com/tidalcycles/strudel/pull/112
|
||||
- loopAt by @yaxu in https://github.com/tidalcycles/strudel/pull/114
|
||||
- Osc timing improvements by @yaxu in https://github.com/tidalcycles/strudel/pull/113
|
||||
- react package + vite build by @felixroos in https://github.com/tidalcycles/strudel/pull/116
|
||||
- In source doc by @felixroos in https://github.com/tidalcycles/strudel/pull/117
|
||||
- fix: #108 by @felixroos in https://github.com/tidalcycles/strudel/pull/123
|
||||
- fix: #122 ctrl enter would add newline by @felixroos in https://github.com/tidalcycles/strudel/pull/124
|
||||
- Webdirt by @felixroos in https://github.com/tidalcycles/strudel/pull/121
|
||||
- Fix link to contributing to tutorial docs by @stephendwolff in https://github.com/tidalcycles/strudel/pull/129
|
||||
- Pianoroll enhancements by @felixroos in https://github.com/tidalcycles/strudel/pull/131
|
||||
- add createParam + createParams by @felixroos in https://github.com/tidalcycles/strudel/pull/110
|
||||
- remove cycle + delta from onTrigger by @felixroos in https://github.com/tidalcycles/strudel/pull/135
|
||||
- Scheduler improvements by @felixroos in https://github.com/tidalcycles/strudel/pull/134
|
||||
- add onTrigger helper by @felixroos in https://github.com/tidalcycles/strudel/pull/136
|
||||
|
||||
## New Contributors
|
||||
|
||||
- @bwagner made their first contribution in https://github.com/tidalcycles/strudel/pull/37
|
||||
- @mindofmatthew made their first contribution in https://github.com/tidalcycles/strudel/pull/84
|
||||
- @stephendwolff made their first contribution in https://github.com/tidalcycles/strudel/pull/129
|
||||
|
||||
**Full Changelog**: https://github.com/tidalcycles/strudel/compare/v0.0.2...v0.0.3
|
||||
45
website/src/content/blog/release-0.0.4-gischt.mdx
Normal file
45
website/src/content/blog/release-0.0.4-gischt.mdx
Normal file
@ -0,0 +1,45 @@
|
||||
---
|
||||
title: 'Release Notes v0.0.4 Gischt'
|
||||
description: ''
|
||||
date: '2022-08-14'
|
||||
tags: ['meta']
|
||||
author: froos
|
||||
---
|
||||
|
||||
## What's Changed
|
||||
|
||||
- Webaudio rewrite by @felixroos in https://github.com/tidalcycles/strudel/pull/138
|
||||
- Fix createParam() by @yaxu in https://github.com/tidalcycles/strudel/pull/140
|
||||
- Soundfont Support by @felixroos in https://github.com/tidalcycles/strudel/pull/139
|
||||
- Serial twiddles by @yaxu in https://github.com/tidalcycles/strudel/pull/141
|
||||
- Pianoroll Object Support by @felixroos in https://github.com/tidalcycles/strudel/pull/142
|
||||
- flash effect on ctrl enter by @felixroos in https://github.com/tidalcycles/strudel/pull/144
|
||||
- can now generate short link for sharing by @felixroos in https://github.com/tidalcycles/strudel/pull/146
|
||||
- Sampler optimizations and more by @felixroos in https://github.com/tidalcycles/strudel/pull/148
|
||||
- Final update to demo.pdf by @yaxu in https://github.com/tidalcycles/strudel/pull/151
|
||||
- add webdirt drum samples to prebake for general availability by @larkob in https://github.com/tidalcycles/strudel/pull/150
|
||||
- update to tutorial documentation by @larkob in https://github.com/tidalcycles/strudel/pull/162
|
||||
- add chooseInWith/chooseCycles by @yaxu in https://github.com/tidalcycles/strudel/pull/166
|
||||
- fix: jsdoc comments by @felixroos in https://github.com/tidalcycles/strudel/pull/169
|
||||
- Pianoroll fixes by @felixroos in https://github.com/tidalcycles/strudel/pull/163
|
||||
- Talk fixes by @felixroos in https://github.com/tidalcycles/strudel/pull/164
|
||||
- Amend shapeshifter to allow use of dynamic import by @debrisapron in https://github.com/tidalcycles/strudel/pull/171
|
||||
- add more shapeshifter flags by @felixroos in https://github.com/tidalcycles/strudel/pull/99
|
||||
- Replace react-codemirror6 with @uiw/react-codemirror by @felixroos in https://github.com/tidalcycles/strudel/pull/173
|
||||
- fix some annoying bugs by @felixroos in https://github.com/tidalcycles/strudel/pull/177
|
||||
- incorporate elements of randomness to the mini notation by @bpow in https://github.com/tidalcycles/strudel/pull/165
|
||||
- replace mocha with vitest by @felixroos in https://github.com/tidalcycles/strudel/pull/175
|
||||
- scheduler improvements by @felixroos in https://github.com/tidalcycles/strudel/pull/181
|
||||
- Fix codemirror bug by @felixroos in https://github.com/tidalcycles/strudel/pull/186
|
||||
- wait for prebake to finish before evaluating by @felixroos in https://github.com/tidalcycles/strudel/pull/189
|
||||
- fix regression: old way of setting frequencies was broken by @felixroos in https://github.com/tidalcycles/strudel/pull/190
|
||||
- Soundfont file support by @felixroos in https://github.com/tidalcycles/strudel/pull/183
|
||||
- change "stride"/"offset" of successive degradeBy/chooseIn by @bpow in https://github.com/tidalcycles/strudel/pull/185
|
||||
|
||||
## New Contributors
|
||||
|
||||
- @larkob made their first contribution in https://github.com/tidalcycles/strudel/pull/150
|
||||
- @debrisapron made their first contribution in https://github.com/tidalcycles/strudel/pull/171
|
||||
- @bpow made their first contribution in https://github.com/tidalcycles/strudel/pull/165
|
||||
|
||||
**Full Changelog**: https://github.com/tidalcycles/strudel/compare/v0.0.3...v0.0.4
|
||||
65
website/src/content/blog/release-0.3.0-donauwelle.mdx
Normal file
65
website/src/content/blog/release-0.3.0-donauwelle.mdx
Normal file
@ -0,0 +1,65 @@
|
||||
---
|
||||
title: 'Release Notes v0.3.0 Donauwelle'
|
||||
description: ''
|
||||
date: '2022-11-06'
|
||||
tags: ['meta']
|
||||
author: froos
|
||||
---
|
||||
|
||||
## Package Versions
|
||||
|
||||
- @strudel.cycles/core@0.3.1
|
||||
- @strudel.cycles/eval@0.3.1
|
||||
- @strudel.cycles/midi@0.3.1
|
||||
- @strudel.cycles/mini@0.3.1
|
||||
- @strudel.cycles/react@0.3.1
|
||||
- @strudel.cycles/soundfonts@0.3.1
|
||||
- @strudel.cycles/tonal@0.3.1
|
||||
- @strudel.cycles/tone@0.3.1
|
||||
- @strudel.cycles/webaudio@0.3.1
|
||||
- @strudel.cycles/webdirt@0.3.1
|
||||
- @strudel.cycles/xen@0.3.1
|
||||
|
||||
## What's Changed
|
||||
|
||||
- Fix numbers in sampler by @felixroos in https://github.com/tidalcycles/strudel/pull/196
|
||||
- document random functions by @felixroos in https://github.com/tidalcycles/strudel/pull/199
|
||||
- add rollup-plugin-visualizer to build by @felixroos in https://github.com/tidalcycles/strudel/pull/200
|
||||
- add vowel to .out by @felixroos in https://github.com/tidalcycles/strudel/pull/201
|
||||
- Coarse crush shape by @felixroos in https://github.com/tidalcycles/strudel/pull/205
|
||||
- Webaudio guide by @felixroos in https://github.com/tidalcycles/strudel/pull/207
|
||||
- Even more docs by @felixroos in https://github.com/tidalcycles/strudel/pull/212
|
||||
- Just another docs PR by @felixroos in https://github.com/tidalcycles/strudel/pull/215
|
||||
- sampler features + fixes by @felixroos in https://github.com/tidalcycles/strudel/pull/217
|
||||
- samples now have envelopes by @felixroos in https://github.com/tidalcycles/strudel/pull/218
|
||||
- encapsulate webaudio output by @felixroos in https://github.com/tidalcycles/strudel/pull/219
|
||||
- Fix squeeze join by @yaxu in https://github.com/tidalcycles/strudel/pull/220
|
||||
- Feedback Delay by @felixroos in https://github.com/tidalcycles/strudel/pull/213
|
||||
- support negative speeds by @felixroos in https://github.com/tidalcycles/strudel/pull/222
|
||||
- focus tweak for squeezeJoin - another go at fixing #216 by @yaxu in https://github.com/tidalcycles/strudel/pull/221
|
||||
- Reverb by @felixroos in https://github.com/tidalcycles/strudel/pull/224
|
||||
- fix fastgap for events that go across cycle boundaries by @yaxu in https://github.com/tidalcycles/strudel/pull/225
|
||||
- Core util tests by @mystery-house in https://github.com/tidalcycles/strudel/pull/226
|
||||
- Refactor tunes away from tone by @felixroos in https://github.com/tidalcycles/strudel/pull/230
|
||||
- Just another docs branch by @felixroos in https://github.com/tidalcycles/strudel/pull/228
|
||||
- Patternify range by @yaxu in https://github.com/tidalcycles/strudel/pull/231
|
||||
- Out by default by @felixroos in https://github.com/tidalcycles/strudel/pull/232
|
||||
- Fix zero length queries WIP by @yaxu in https://github.com/tidalcycles/strudel/pull/234
|
||||
- add vcsl sample library by @felixroos in https://github.com/tidalcycles/strudel/pull/235
|
||||
- fx on stereo speakers by @felixroos in https://github.com/tidalcycles/strudel/pull/236
|
||||
- Tidal drum machines by @felixroos in https://github.com/tidalcycles/strudel/pull/237
|
||||
- Object arithmetic by @felixroos in https://github.com/tidalcycles/strudel/pull/238
|
||||
- Load samples from url by @felixroos in https://github.com/tidalcycles/strudel/pull/239
|
||||
- feat: support github: links by @felixroos in https://github.com/tidalcycles/strudel/pull/240
|
||||
- in source example tests by @felixroos in https://github.com/tidalcycles/strudel/pull/242
|
||||
- Readme + TLC by @felixroos in https://github.com/tidalcycles/strudel/pull/244
|
||||
- patchday by @felixroos in https://github.com/tidalcycles/strudel/pull/246
|
||||
- Some tunes by @felixroos in https://github.com/tidalcycles/strudel/pull/247
|
||||
- snapshot tests on shared snippets by @felixroos in https://github.com/tidalcycles/strudel/pull/243
|
||||
- General purpose scheduler by @felixroos in https://github.com/tidalcycles/strudel/pull/248
|
||||
|
||||
## New Contributors
|
||||
|
||||
- @mystery-house made their first contribution in https://github.com/tidalcycles/strudel/pull/226
|
||||
|
||||
**Full Changelog**: https://github.com/tidalcycles/strudel/compare/v0.0.4...v0.3.0
|
||||
15
website/src/content/blog/release-0.4.0-brandung.mdx
Normal file
15
website/src/content/blog/release-0.4.0-brandung.mdx
Normal file
@ -0,0 +1,15 @@
|
||||
---
|
||||
title: 'Release Notes v0.4.0 Brandung'
|
||||
description: ''
|
||||
date: '2022-11-13'
|
||||
tags: ['meta']
|
||||
author: froos
|
||||
---
|
||||
|
||||
## What's Changed
|
||||
|
||||
- new transpiler based on acorn by @felixroos in https://github.com/tidalcycles/strudel/pull/249
|
||||
- Webaudio build by @felixroos in https://github.com/tidalcycles/strudel/pull/250
|
||||
- Repl refactoring by @felixroos in https://github.com/tidalcycles/strudel/pull/255
|
||||
|
||||
**Full Changelog**: https://github.com/tidalcycles/strudel/compare/v0.3.0...v0.4.0
|
||||
59
website/src/content/blog/release-0.5.0-wirbel.mdx
Normal file
59
website/src/content/blog/release-0.5.0-wirbel.mdx
Normal file
@ -0,0 +1,59 @@
|
||||
---
|
||||
title: 'Release Notes v0.5.0 Wirbel'
|
||||
description: ''
|
||||
date: '2022-12-13'
|
||||
tags: ['meta']
|
||||
author: froos
|
||||
---
|
||||
|
||||
## Package Versions
|
||||
|
||||
- @strudel.cycles/core@0.5.0
|
||||
- @strudel.cycles/osc@0.4.0
|
||||
- @strudel.cycles/serial@0.3.0
|
||||
- @strudel.cycles/csound@0.5.1
|
||||
- @strudel.cycles/eval@0.5.0
|
||||
- @strudel.cycles/midi@0.5.0
|
||||
- @strudel.cycles/mini@0.5.0
|
||||
- @strudel.cycles/react@0.5.0
|
||||
- @strudel.cycles/soundfonts@0.5.0
|
||||
- @strudel.cycles/tonal@0.5.0
|
||||
- @strudel.cycles/tone@0.5.0
|
||||
- @strudel.cycles/transpiler@0.5.0
|
||||
- @strudel.cycles/webaudio@0.5.0
|
||||
- @strudel.cycles/webdirt@0.5.0
|
||||
- @strudel.cycles/xen@0.5.0
|
||||
|
||||
## What's Changed
|
||||
|
||||
- Binaries by @felixroos in https://github.com/tidalcycles/strudel/pull/254
|
||||
- fix tutorial bugs by @felixroos in https://github.com/tidalcycles/strudel/pull/263
|
||||
- fix performance bottleneck by @felixroos in https://github.com/tidalcycles/strudel/pull/266
|
||||
- Tidying up core by @yaxu in https://github.com/tidalcycles/strudel/pull/256
|
||||
- tonal update with fixed memory leak by @felixroos in https://github.com/tidalcycles/strudel/pull/272
|
||||
- add eslint by @felixroos in https://github.com/tidalcycles/strudel/pull/271
|
||||
- release version bumps by @felixroos in https://github.com/tidalcycles/strudel/pull/273
|
||||
- Support sending CRC16 bytes with serial messages by @yaxu in https://github.com/tidalcycles/strudel/pull/276
|
||||
- add licenses / credits to all tunes + remove some by @felixroos in https://github.com/tidalcycles/strudel/pull/277
|
||||
- add basic csound output by @felixroos in https://github.com/tidalcycles/strudel/pull/275
|
||||
- do not recompile orc by @felixroos in https://github.com/tidalcycles/strudel/pull/278
|
||||
- implement collect + arp function by @felixroos in https://github.com/tidalcycles/strudel/pull/281
|
||||
- Switch 'operators' from .whatHow to .what.how by @yaxu in https://github.com/tidalcycles/strudel/pull/285
|
||||
- Fancy hap show, include part in snapshots by @yaxu in https://github.com/tidalcycles/strudel/pull/291
|
||||
- Reorganise pattern.mjs with a 'toplevel first' regime by @yaxu in https://github.com/tidalcycles/strudel/pull/286
|
||||
- add prettier task by @felixroos in https://github.com/tidalcycles/strudel/pull/296
|
||||
- Move stuff to new register function by @felixroos in https://github.com/tidalcycles/strudel/pull/295
|
||||
- can now add bare numbers to numeral object props by @felixroos in https://github.com/tidalcycles/strudel/pull/287
|
||||
- update vitest by @felixroos in https://github.com/tidalcycles/strudel/pull/297
|
||||
- remove whitespace from highlighted region by @felixroos in https://github.com/tidalcycles/strudel/pull/298
|
||||
- .defragmentHaps() for merging touching haps that share a whole and value by @yaxu in https://github.com/tidalcycles/strudel/pull/299
|
||||
- fix whitespace trimming by @felixroos in https://github.com/tidalcycles/strudel/pull/300
|
||||
- add freq support to sampler by @felixroos in https://github.com/tidalcycles/strudel/pull/301
|
||||
- add lint + prettier check before test by @felixroos in https://github.com/tidalcycles/strudel/pull/305
|
||||
- Updated csoundm to use the register facility . by @gogins in https://github.com/tidalcycles/strudel/pull/303
|
||||
|
||||
## New Contributors
|
||||
|
||||
- @gogins made their first contribution in https://github.com/tidalcycles/strudel/pull/303
|
||||
|
||||
**Full Changelog**: https://github.com/tidalcycles/strudel/compare/v0.4.0...v0.5.0
|
||||
84
website/src/content/blog/release-0.6.0-zimtschnecke.mdx
Normal file
84
website/src/content/blog/release-0.6.0-zimtschnecke.mdx
Normal file
@ -0,0 +1,84 @@
|
||||
---
|
||||
title: 'Release Notes v0.6.0 Zimtschnecke'
|
||||
description: ''
|
||||
date: '2023-02-01'
|
||||
tags: ['meta']
|
||||
author: froos
|
||||
---
|
||||
|
||||
## Package Versions
|
||||
|
||||
- @strudel.cycles/core@0.6.8
|
||||
- @strudel.cycles/eval@0.6.2
|
||||
- @strudel.cycles/transpiler@0.6.0
|
||||
- @strudel.cycles/mini@0.6.0
|
||||
- @strudel.cycles/tonal@0.6.0
|
||||
- @strudel.cycles/tone@0.6.0
|
||||
- @strudel.cycles/xen@0.6.0
|
||||
- @strudel.cycles/webaudio@0.6.1
|
||||
- @strudel.cycles/react@0.6.0
|
||||
- @strudel.cycles/osc@0.6.0
|
||||
- @strudel.cycles/midi@0.6.0
|
||||
- @strudel.cycles/webdirt@0.6.0
|
||||
- @strudel.cycles/serial@0.6.0
|
||||
- @strudel.cycles/soundfonts@0.6.0
|
||||
- @strudel.cycles/csound@0.6.0
|
||||
|
||||
## What's Changed
|
||||
|
||||
- support freq in pianoroll by @felixroos in https://github.com/tidalcycles/strudel/pull/308
|
||||
- ICLC2023 paper WIP by @yaxu in https://github.com/tidalcycles/strudel/pull/306
|
||||
- fix: copy share link to clipboard was broken for some browers by @felixroos in https://github.com/tidalcycles/strudel/pull/311
|
||||
- Jsdoc component by @felixroos in https://github.com/tidalcycles/strudel/pull/312
|
||||
- object support for .scale by @felixroos in https://github.com/tidalcycles/strudel/pull/307
|
||||
- Astro build by @felixroos in https://github.com/tidalcycles/strudel/pull/315
|
||||
- Reference tab sort by @felixroos in https://github.com/tidalcycles/strudel/pull/318
|
||||
- tutorial updates by @jarmitage in https://github.com/tidalcycles/strudel/pull/320
|
||||
- support notes without octave by @felixroos in https://github.com/tidalcycles/strudel/pull/323
|
||||
- mini repl improvements by @felixroos in https://github.com/tidalcycles/strudel/pull/324
|
||||
- fix: workaround Object.assign globalThis by @felixroos in https://github.com/tidalcycles/strudel/pull/326
|
||||
- add examples route by @felixroos in https://github.com/tidalcycles/strudel/pull/327
|
||||
- add my-patterns by @felixroos in https://github.com/tidalcycles/strudel/pull/328
|
||||
- my-patterns build + deploy by @felixroos in https://github.com/tidalcycles/strudel/pull/329
|
||||
- my-patterns: fix paths + update readme by @felixroos in https://github.com/tidalcycles/strudel/pull/330
|
||||
- improve displaying 's' in pianoroll by @felixroos in https://github.com/tidalcycles/strudel/pull/331
|
||||
- fix: can now multiply floats in mini notation by @felixroos in https://github.com/tidalcycles/strudel/pull/332
|
||||
- Embed mode improvements by @felixroos in https://github.com/tidalcycles/strudel/pull/333
|
||||
- testing + docs docs by @felixroos in https://github.com/tidalcycles/strudel/pull/334
|
||||
- animate mvp by @felixroos in https://github.com/tidalcycles/strudel/pull/335
|
||||
- Tidy parser, implement polymeters by @yaxu in https://github.com/tidalcycles/strudel/pull/336
|
||||
- animation options by @felixroos in https://github.com/tidalcycles/strudel/pull/337
|
||||
- move /my-patterns to /swatch by @yaxu in https://github.com/tidalcycles/strudel/pull/338
|
||||
- more animate functions + mini repl fix by @felixroos in https://github.com/tidalcycles/strudel/pull/340
|
||||
- Patternify euclid, fast, slow and polymeter step parameters in mininotation by @yaxu in https://github.com/tidalcycles/strudel/pull/341
|
||||
- fixes #346 by @felixroos in https://github.com/tidalcycles/strudel/pull/347
|
||||
- Fix prebake base path by @felixroos in https://github.com/tidalcycles/strudel/pull/345
|
||||
- Fix Bjorklund by @yaxu in https://github.com/tidalcycles/strudel/pull/343
|
||||
- docs: tidal comparison + add global fx + add missing sampler fx by @felixroos in https://github.com/tidalcycles/strudel/pull/356
|
||||
- Fix .out(), renaming webaudio's out() to webaudio() by @yaxu in https://github.com/tidalcycles/strudel/pull/361
|
||||
- Support for multiple mininotation operators by @yaxu in https://github.com/tidalcycles/strudel/pull/350
|
||||
- doc structuring by @felixroos in https://github.com/tidalcycles/strudel/pull/360
|
||||
- add https to url by @urswilke in https://github.com/tidalcycles/strudel/pull/364
|
||||
- document more functions + change arp join by @felixroos in https://github.com/tidalcycles/strudel/pull/369
|
||||
- improve new draw logic by @felixroos in https://github.com/tidalcycles/strudel/pull/372
|
||||
- Draw fixes by @felixroos in https://github.com/tidalcycles/strudel/pull/377
|
||||
- update my-patterns instructions by @felixroos in https://github.com/tidalcycles/strudel/pull/384
|
||||
- docs: use note instead of n to mitigate confusion by @felixroos in https://github.com/tidalcycles/strudel/pull/385
|
||||
- add run + test + docs by @felixroos in https://github.com/tidalcycles/strudel/pull/386
|
||||
- Rename a to angle by @felixroos in https://github.com/tidalcycles/strudel/pull/387
|
||||
- document csound by @felixroos in https://github.com/tidalcycles/strudel/pull/391
|
||||
- Notes are not essential :) by @yaxu in https://github.com/tidalcycles/strudel/pull/393
|
||||
- add ribbon + test + docs by @felixroos in https://github.com/tidalcycles/strudel/pull/388
|
||||
- Add tidal-drum-patterns to examples by @urswilke in https://github.com/tidalcycles/strudel/pull/379
|
||||
- add pattern methods hurry, press and pressBy by @yaxu in https://github.com/tidalcycles/strudel/pull/397
|
||||
- proper builds + use pnpm workspaces by @felixroos in https://github.com/tidalcycles/strudel/pull/396
|
||||
- fix: minirepl styles by @felixroos in https://github.com/tidalcycles/strudel/pull/398
|
||||
- can now await initAudio + initAudioOnFirstClick by @felixroos in https://github.com/tidalcycles/strudel/pull/399
|
||||
- release webaudio by @felixroos in https://github.com/tidalcycles/strudel/pull/400
|
||||
|
||||
## New Contributors
|
||||
|
||||
- @jarmitage made their first contribution in https://github.com/tidalcycles/strudel/pull/320
|
||||
- @urswilke made their first contribution in https://github.com/tidalcycles/strudel/pull/364
|
||||
|
||||
**Full Changelog**: https://github.com/tidalcycles/strudel/compare/v0.5.0...v0.6.0
|
||||
88
website/src/content/blog/release-0.7.0-zuckerguss.mdx
Normal file
88
website/src/content/blog/release-0.7.0-zuckerguss.mdx
Normal file
@ -0,0 +1,88 @@
|
||||
---
|
||||
title: 'Release Notes v0.7.0 Zimtschnecke'
|
||||
description: ''
|
||||
date: '2023-03-23'
|
||||
tags: ['meta']
|
||||
author: froos
|
||||
---
|
||||
|
||||
## Package Versions
|
||||
|
||||
- @strudel.cycles/core@0.7.2
|
||||
- @strudel.cycles/transpiler@0.7.1
|
||||
- @strudel.cycles/mini@0.7.2
|
||||
- @strudel.cycles/tonal@0.7.1
|
||||
- @strudel.cycles/xen@0.7.1
|
||||
- @strudel.cycles/tone@0.7.1
|
||||
- @strudel.cycles/webaudio@0.7.1
|
||||
- @strudel.cycles/react@0.7.1
|
||||
- @strudel.cycles/osc@0.7.1
|
||||
- @strudel.cycles/serial@0.7.1
|
||||
- @strudel.cycles/midi@0.7.1
|
||||
- @strudel.cycles/csound@0.7.1
|
||||
|
||||
## What's Changed
|
||||
|
||||
- pin @csound/browser to 6.18.3 + bump by @felixroos in https://github.com/tidalcycles/strudel/pull/403
|
||||
- update csound + fix sound output by @felixroos in https://github.com/tidalcycles/strudel/pull/404
|
||||
- fix: share url on subpath by @felixroos in https://github.com/tidalcycles/strudel/pull/405
|
||||
- add shabda doc by @felixroos in https://github.com/tidalcycles/strudel/pull/407
|
||||
- Update effects.mdx by @bwagner in https://github.com/tidalcycles/strudel/pull/410
|
||||
- improve effects doc by @felixroos in https://github.com/tidalcycles/strudel/pull/409
|
||||
- google gtfo by @felixroos in https://github.com/tidalcycles/strudel/pull/413
|
||||
- improve samples doc by @felixroos in https://github.com/tidalcycles/strudel/pull/411
|
||||
- PWA with offline support by @felixroos in https://github.com/tidalcycles/strudel/pull/417
|
||||
- add caching strategy for missing file types + cache all samples loaded from github by @felixroos in https://github.com/tidalcycles/strudel/pull/419
|
||||
- add more offline caching by @felixroos in https://github.com/tidalcycles/strudel/pull/421
|
||||
- add cdn.freesound to cache list by @felixroos in https://github.com/tidalcycles/strudel/pull/425
|
||||
- minirepl: add keyboard shortcuts by @felixroos in https://github.com/tidalcycles/strudel/pull/429
|
||||
- Themes by @felixroos in https://github.com/tidalcycles/strudel/pull/431
|
||||
- autocomplete preparations by @felixroos in https://github.com/tidalcycles/strudel/pull/427
|
||||
- Fix anchors by @felixroos in https://github.com/tidalcycles/strudel/pull/433
|
||||
- Update code.mdx by @bwagner in https://github.com/tidalcycles/strudel/pull/436
|
||||
- Update mini-notation.mdx by @bwagner in https://github.com/tidalcycles/strudel/pull/437
|
||||
- Update synths.mdx by @bwagner in https://github.com/tidalcycles/strudel/pull/438
|
||||
- FIXES: Warning about jsxBracketSameLine deprecation by @bwagner in https://github.com/tidalcycles/strudel/pull/461
|
||||
- Composable functions by @yaxu in https://github.com/tidalcycles/strudel/pull/390
|
||||
- weave and weaveWith by @yaxu in https://github.com/tidalcycles/strudel/pull/465
|
||||
- slice and splice by @yaxu in https://github.com/tidalcycles/strudel/pull/466
|
||||
- fix: osc should not return a promise by @felixroos in https://github.com/tidalcycles/strudel/pull/472
|
||||
- FIXES: freqs instead of pitches by @bwagner in https://github.com/tidalcycles/strudel/pull/464
|
||||
- Update input-output.mdx by @bwagner in https://github.com/tidalcycles/strudel/pull/471
|
||||
- settings tab with vim / emacs modes + additional themes and fonts by @felixroos in https://github.com/tidalcycles/strudel/pull/467
|
||||
- fix: hash links by @felixroos in https://github.com/tidalcycles/strudel/pull/473
|
||||
- midi cc support by @felixroos in https://github.com/tidalcycles/strudel/pull/478
|
||||
- Fix array args by @felixroos in https://github.com/tidalcycles/strudel/pull/480
|
||||
- docs: packages + offline by @felixroos in https://github.com/tidalcycles/strudel/pull/482
|
||||
- Update mini-notation.mdx by @yaxu in https://github.com/tidalcycles/strudel/pull/365
|
||||
- Revert "Another attempt at composable functions - WIP (#390)" by @felixroos in https://github.com/tidalcycles/strudel/pull/484
|
||||
- fix app height by @felixroos in https://github.com/tidalcycles/strudel/pull/485
|
||||
- add algolia creds + optimize sidebar for crawling by @felixroos in https://github.com/tidalcycles/strudel/pull/488
|
||||
- refactor react package by @felixroos in https://github.com/tidalcycles/strudel/pull/490
|
||||
- react style fixes by @felixroos in https://github.com/tidalcycles/strudel/pull/491
|
||||
- implement cps in scheduler by @felixroos in https://github.com/tidalcycles/strudel/pull/493
|
||||
- Add control aliases by @yaxu in https://github.com/tidalcycles/strudel/pull/497
|
||||
- fix: nano-repl highlighting by @felixroos in https://github.com/tidalcycles/strudel/pull/501
|
||||
- Reinstate slice and splice by @yaxu in https://github.com/tidalcycles/strudel/pull/500
|
||||
- can now use : as a replacement for space in scales by @felixroos in https://github.com/tidalcycles/strudel/pull/502
|
||||
- Support list syntax in mininotation by @yaxu in https://github.com/tidalcycles/strudel/pull/512
|
||||
- update react to 18 by @felixroos in https://github.com/tidalcycles/strudel/pull/514
|
||||
- add arrange function by @felixroos in https://github.com/tidalcycles/strudel/pull/508
|
||||
- Update README.md by @bwagner in https://github.com/tidalcycles/strudel/pull/474
|
||||
- add 2 illegible fonts by @felixroos in https://github.com/tidalcycles/strudel/pull/518
|
||||
- registerSound API + improved sounds tab + regroup soundfonts by @felixroos in https://github.com/tidalcycles/strudel/pull/516
|
||||
- fix: envelopes in chrome by @felixroos in https://github.com/tidalcycles/strudel/pull/521
|
||||
- Update samples.mdx by @bwagner in https://github.com/tidalcycles/strudel/pull/524
|
||||
- Update intro.mdx by @bwagner in https://github.com/tidalcycles/strudel/pull/525
|
||||
- fix(footer): fix link to tidalcycles by @revolunet in https://github.com/tidalcycles/strudel/pull/529
|
||||
- FIXES: alias pm for polymeter by @bwagner in https://github.com/tidalcycles/strudel/pull/527
|
||||
- Maintain random seed state in parser, not globally by @ijc8 in https://github.com/tidalcycles/strudel/pull/531
|
||||
- feat: add freq support to gm soundfonts by @felixroos in https://github.com/tidalcycles/strudel/pull/534
|
||||
- Update lerna by @felixroos in https://github.com/tidalcycles/strudel/pull/535
|
||||
|
||||
## New Contributors
|
||||
|
||||
- @revolunet made their first contribution in https://github.com/tidalcycles/strudel/pull/529
|
||||
- @ijc8 made their first contribution in https://github.com/tidalcycles/strudel/pull/531
|
||||
|
||||
**Full Changelog**: https://github.com/tidalcycles/strudel/compare/v0.6.0...v0.7.0
|
||||
130
website/src/content/blog/release-0.8.0-himbeermuffin.mdx
Normal file
130
website/src/content/blog/release-0.8.0-himbeermuffin.mdx
Normal file
@ -0,0 +1,130 @@
|
||||
---
|
||||
title: 'Release Notes v0.8.0 Himbeermuffin'
|
||||
description: ''
|
||||
date: '2023-06-30'
|
||||
tags: ['meta']
|
||||
author: froos
|
||||
---
|
||||
|
||||
import BlogVideo from '../../components/BlogVideo.astro';
|
||||
|
||||
These are the release notes for Strudel 0.8.0 aka "Himbeermuffin"!
|
||||
|
||||
[Go to Tidal Club Forum for this Release](https://club.tidalcycles.org/t/strudel-0-8-0-released/4769)
|
||||
|
||||
Let me write up some of the highlights:
|
||||
|
||||
## Desktop App
|
||||
|
||||
Besides the REPL (https://strudel.tidalcycles.org/), Strudel is now also distributed as a Desktop App via https://tauri.app/! Thanks to [vasilymilovidov](https://github.com/vasilymilovidov)!
|
||||
|
||||
- [Linux: Debian based](https://github.com/tidalcycles/strudel/releases/download/v0.8.0/strudel_0.1.0_amd64.deb)
|
||||
- [Linux: AppImage](https://github.com/tidalcycles/strudel/releases/download/v0.8.0/strudel_0.1.0_amd64.AppImage)
|
||||
- [MacOS](https://github.com/tidalcycles/strudel/releases/download/v0.8.0/Strudel_0.1.0_x64.dmg)
|
||||
- [Windows .exe](https://github.com/tidalcycles/strudel/releases/download/v0.8.0/Strudel_0.1.0_x64-setup.exe)
|
||||
- [Windows .msi](https://github.com/tidalcycles/strudel/releases/download/v0.8.0/Strudel_0.1.0_x64_en-US.msi)
|
||||
|
||||
edit: the desktop app performance on linux is currently not that great.. the web REPL runs much smoother (using firefox or chromium)
|
||||
|
||||
The desktop App has the same features as the webapp, with the additional ability to load samples from disk. It is currently not documented yet, but you can do something like
|
||||
|
||||
```js
|
||||
await samples('~/music/xxx');
|
||||
|
||||
s('my_sound');
|
||||
```
|
||||
|
||||
You have to start with `~/music/`, followed by an arbitrary folder path that is expected to be present in the systems [audio directory](https://tauri.app/v1/api/js/path/#audiodir).
|
||||
When you first run it, the app will create a strudel.json file in that directory to map out the available samples.
|
||||
|
||||
I would be very happy to collect some feedback on how it works across different platforms & systems!
|
||||
|
||||
## Spiral Visualization
|
||||
|
||||
Also still undocumented, but you can now visualize patterns as a spiral via `.spiral()`:
|
||||
|
||||
<BlogVideo src="https://github.com/tidalcycles/strudel/assets/12023032/05bc2dba-b304-4298-9465-a1a6fafe5ded" />
|
||||
|
||||
This is especially nice because strudel is not only the name of a dessert but also the german word for vortex! The spiral is very fitting to visualize cycles because you can align cycles vertically, while surfing along an infinite twisted timeline.
|
||||
|
||||
## More settings
|
||||
|
||||
In the settings tab, you can now toggle:
|
||||
|
||||
- line numbers
|
||||
- auto-complete
|
||||
- line wrapping
|
||||
|
||||
Thanks to [roipoussiere](https://github.com/roipoussiere)!
|
||||
|
||||
## More
|
||||
|
||||
Scroll down to see the full list of Changes!
|
||||
|
||||
A big thanks to all the contributors!
|
||||
|
||||
## Package Versions
|
||||
|
||||
- @strudel.cycles/core: 0.8.2
|
||||
- @strudel.cycles/mini: 0.8.2
|
||||
- @strudel.cycles/transpiler: 0.8.2
|
||||
- @strudel.cycles/webaudio: 0.8.2
|
||||
- @strudel.cycles/soundfonts: 0.8.2
|
||||
- @strudel.cycles/react: 0.8.0
|
||||
- @strudel.cycles/midi: 0.8.0
|
||||
- @strudel.cycles/osc: 0.8.0
|
||||
- @strudel.cycles/csound: 0.8.0
|
||||
- @strudel.cycles/serial: 0.8.0
|
||||
- @strudel.cycles/tonal: 0.8.2
|
||||
- @strudel.cycles/xen: 0.8.0
|
||||
- @strudel/codemirror: 0.8.4
|
||||
- @strudel/web: 0.8.3
|
||||
|
||||
## What's Changed
|
||||
|
||||
- fix period key for dvorak + remove duplicated code by @felixroos in https://github.com/tidalcycles/strudel/pull/537
|
||||
- improve initial loading + wait before eval by @felixroos in https://github.com/tidalcycles/strudel/pull/538
|
||||
- do not reset cps before eval #517 by @felixroos in https://github.com/tidalcycles/strudel/pull/539
|
||||
- feat: add loader bar to animate loading state by @felixroos in https://github.com/tidalcycles/strudel/pull/542
|
||||
- add firacode font by @felixroos in https://github.com/tidalcycles/strudel/pull/544
|
||||
- fix: allow whitespace at the end of a mini pattern by @felixroos in https://github.com/tidalcycles/strudel/pull/547
|
||||
- fix: reset time on stop by @felixroos in https://github.com/tidalcycles/strudel/pull/548
|
||||
- fix: load soundfonts in prebake by @felixroos in https://github.com/tidalcycles/strudel/pull/550
|
||||
- fix: colorable highlighting by @felixroos in https://github.com/tidalcycles/strudel/pull/553
|
||||
- fix: make soundfonts import dynamic by @felixroos in https://github.com/tidalcycles/strudel/pull/556
|
||||
- add basic triads and guidetone voicings by @felixroos in https://github.com/tidalcycles/strudel/pull/557
|
||||
- Patchday by @felixroos in https://github.com/tidalcycles/strudel/pull/559
|
||||
- Vanilla JS Refactoring by @felixroos in https://github.com/tidalcycles/strudel/pull/563
|
||||
- repl: add option to display line numbers by @roipoussiere in https://github.com/tidalcycles/strudel/pull/582
|
||||
- learn/tonal: fix typo in "scaleTran[s]pose" by @srenatus in https://github.com/tidalcycles/strudel/pull/585
|
||||
- Music metadata by @roipoussiere in https://github.com/tidalcycles/strudel/pull/580
|
||||
- New Workshop by @felixroos in https://github.com/tidalcycles/strudel/pull/587
|
||||
- Fix option dot by @felixroos in https://github.com/tidalcycles/strudel/pull/596
|
||||
- fix: allow f for flat notes like tidal by @felixroos in https://github.com/tidalcycles/strudel/pull/593
|
||||
- fix: division by zero by @felixroos in https://github.com/tidalcycles/strudel/pull/591
|
||||
- Solmization added by @dariacotocu in https://github.com/tidalcycles/strudel/pull/570
|
||||
- improve cursor by @felixroos in https://github.com/tidalcycles/strudel/pull/597
|
||||
- enable auto-completion by @roipoussiere in https://github.com/tidalcycles/strudel/pull/588
|
||||
- add ratio function by @felixroos in https://github.com/tidalcycles/strudel/pull/602
|
||||
- editor: enable line wrapping by @roipoussiere in https://github.com/tidalcycles/strudel/pull/581
|
||||
- tonal fixes by @felixroos in https://github.com/tidalcycles/strudel/pull/607
|
||||
- fix: flatten scale lists by @felixroos in https://github.com/tidalcycles/strudel/pull/605
|
||||
- clip now works like legato in tidal by @felixroos in https://github.com/tidalcycles/strudel/pull/598
|
||||
- fix: doc links by @felixroos in https://github.com/tidalcycles/strudel/pull/612
|
||||
- tauri desktop app by @vasilymilovidov in https://github.com/tidalcycles/strudel/pull/613
|
||||
- add spiral viz by @felixroos in https://github.com/tidalcycles/strudel/pull/614
|
||||
- patterning ui settings by @felixroos in https://github.com/tidalcycles/strudel/pull/606
|
||||
- Fix typo on packages.mdx by @paikwiki in https://github.com/tidalcycles/strudel/pull/520
|
||||
- cps dependent functions by @felixroos in https://github.com/tidalcycles/strudel/pull/620
|
||||
- desktop: play samples from disk by @felixroos in https://github.com/tidalcycles/strudel/pull/621
|
||||
- fix: midi clock drift by @felixroos in https://github.com/tidalcycles/strudel/pull/627
|
||||
|
||||
## New Contributors
|
||||
|
||||
- @roipoussiere made their first contribution in https://github.com/tidalcycles/strudel/pull/582
|
||||
- @srenatus made their first contribution in https://github.com/tidalcycles/strudel/pull/585
|
||||
- @dariacotocu made their first contribution in https://github.com/tidalcycles/strudel/pull/570
|
||||
- @vasilymilovidov made their first contribution in https://github.com/tidalcycles/strudel/pull/613
|
||||
- @paikwiki made their first contribution in https://github.com/tidalcycles/strudel/pull/520
|
||||
|
||||
**Full Changelog**: https://github.com/tidalcycles/strudel/compare/v0.7.0...v0.8.0
|
||||
114
website/src/content/blog/release-0.9.0-bananenbrot.mdx
Normal file
114
website/src/content/blog/release-0.9.0-bananenbrot.mdx
Normal file
@ -0,0 +1,114 @@
|
||||
---
|
||||
title: 'Release Notes v0.9.0 Bananenbrot'
|
||||
description: ''
|
||||
date: '2023-09-17'
|
||||
tags: ['meta']
|
||||
author: froos
|
||||
---
|
||||
|
||||
import BlogVideo from '../../components/BlogVideo.astro';
|
||||
|
||||
These are the release notes for Strudel 0.9.0 aka "Bananenbrot"!
|
||||
|
||||
The last release was over 11 weeks ago, so a lot of things have happened!
|
||||
|
||||
Let me write up some of the highlights:
|
||||
|
||||
## Improved Synth Engine
|
||||
|
||||
The synth engine has gotten a lot of love + a name: [superdough](https://www.npmjs.com/package/superdough) encapsulates the web audio based synth / sampler / fx engine into a reusable package, which is already used by [Topos](https://topos.raphaelforment.fr/).
|
||||
Main new features include:
|
||||
|
||||
- [filter envelopes](https://strudel.tidalcycles.org/learn/effects#filter-envelope)
|
||||
- [FM Synthesis](https://strudel.tidalcycles.org/learn/synths#fm-synthesis)
|
||||
- [looping samples](https://strudel.tidalcycles.org/learn/samples#loop), allowing [wavetable synthesis](https://strudel.tidalcycles.org/?I9myTNQoKKaP)
|
||||
- [vibrato](https://strudel.tidalcycles.org/learn/synths#vibrato)
|
||||
- an integration of [ZZFX](https://strudel.tidalcycles.org/learn/synths#zzfx)
|
||||
|
||||
<BlogVideo src="https://github.com/tidalcycles/strudel/assets/12023032/652e7042-f296-496b-95cd-b2a4987fe238" />
|
||||
|
||||
Related PRs:
|
||||
|
||||
- superdough: encapsulates web audio output by @felixroos in https://github.com/tidalcycles/strudel/pull/664
|
||||
- basic fm by @felixroos in https://github.com/tidalcycles/strudel/pull/669
|
||||
- Wave Selection and Global Envelope on the FM Synth Modulator by @Bubobubobubobubo in https://github.com/tidalcycles/strudel/pull/683
|
||||
- control osc partial count with n by @felixroos in https://github.com/tidalcycles/strudel/pull/674
|
||||
- ZZFX Synth support by @Bubobubobubobubo in https://github.com/tidalcycles/strudel/pull/684
|
||||
- Adding filter envelopes and filter order selection by @Bubobubobubobubo in https://github.com/tidalcycles/strudel/pull/692
|
||||
- Adding loop points and thus wavetable synthesis by @Bubobubobubobubo in https://github.com/tidalcycles/strudel/pull/698
|
||||
- Adding vibrato to base oscillators by @Bubobubobubobubo in https://github.com/tidalcycles/strudel/pull/693
|
||||
|
||||
## Desktop App Improvements
|
||||
|
||||
Thanks to @daslyfe and @vasilymilovidov , the desktop app now has its own rust based MIDI and OSC integrations,
|
||||
which do not depend on browser APIs!
|
||||
|
||||
You can see superdough, superdirt via OSC + hardware synths via MIDI all together playing in harmony in this [awesome video](https://www.youtube.com/watch?v=lxQgBeLQBgk). These are the related PRs:
|
||||
|
||||
- Create Midi Integration for Tauri Desktop app by @daslyfe in https://github.com/tidalcycles/strudel/pull/685
|
||||
- add sleep timer + improve message iterating by @daslyfe in https://github.com/tidalcycles/strudel/pull/688
|
||||
- fix MIDI CC messages by @vasilymilovidov in https://github.com/tidalcycles/strudel/pull/690
|
||||
- Direct OSC Support in Tauri by @daslyfe in https://github.com/tidalcycles/strudel/pull/694
|
||||
- Add logging from tauri by @daslyfe in https://github.com/tidalcycles/strudel/pull/697
|
||||
- fix osc bundle timestamp glitches caused by drifting clock by @daslyfe in https://github.com/tidalcycles/strudel/pull/666
|
||||
- Midi time fixes by @daslyfe in https://github.com/tidalcycles/strudel/pull/668
|
||||
- [Bug Fix] Account for numeral notation when converting to midi by @daslyfe in https://github.com/tidalcycles/strudel/pull/656
|
||||
- [Bug Fix] Midi: Don't treat note 0 as false by @daslyfe in https://github.com/tidalcycles/strudel/pull/657
|
||||
|
||||
## Visuals
|
||||
|
||||
- 2 new FFT based vizualisations have now landed: [scope and fscope](https://github.com/tidalcycles/strudel/pull/677) (featured in the video at the top).
|
||||
- pianoroll has new options, see [PR](https://github.com/tidalcycles/strudel/pull/679)
|
||||
|
||||
Related PRs:
|
||||
|
||||
- Scope by @felixroos in https://github.com/tidalcycles/strudel/pull/677 ([demo](https://strudel.tidalcycles.org/?hXVQF-KxMI8p))
|
||||
- Pianoroll improvements by @felixroos in https://github.com/tidalcycles/strudel/pull/679 ([demo](https://strudel.tidalcycles.org/?aPMKqXGVMgSM))
|
||||
|
||||
## Voicings
|
||||
|
||||
There is now a new way to play chord voicings + a huge selection of chord voicings available. Find out more in these PRs:
|
||||
|
||||
- stateless voicings + tonleiter lib by @felixroos in https://github.com/tidalcycles/strudel/pull/647 ([demo](https://strudel.tidalcycles.org/?FoILM0Hs9y9f))
|
||||
- ireal voicings by @felixroos in https://github.com/tidalcycles/strudel/pull/653 ([demo](https://strudel.tidalcycles.org/?bv_TjY9hOC28))
|
||||
|
||||
## Adaptive Highlighting
|
||||
|
||||
Thanks to @mindofmatthew , the highlighting will adapt to edits instantly! Related PRs:
|
||||
|
||||
- More work on highlight IDs by @mindofmatthew in https://github.com/tidalcycles/strudel/pull/636
|
||||
- Adaptive Highlighting by @felixroos in https://github.com/tidalcycles/strudel/pull/634
|
||||
|
||||
## UI Changes
|
||||
|
||||
- teletext theme + fonts by @felixroos in https://github.com/tidalcycles/strudel/pull/681 (featured in video at the top)
|
||||
- togglable panel position by @felixroos in https://github.com/tidalcycles/strudel/pull/667
|
||||
|
||||
## Other New Features
|
||||
|
||||
- slice: list mode by @felixroos in https://github.com/tidalcycles/strudel/pull/645 ([demo](https://strudel.tidalcycles.org/?bAYIqz5NLjRr))
|
||||
- add emoji support by @felixroos in https://github.com/tidalcycles/strudel/pull/680 ([demo](https://strudel.tidalcycles.org/?a6FgLz475gN9))
|
||||
|
||||
## Articles
|
||||
|
||||
- Understand pitch by @felixroos in https://github.com/tidalcycles/strudel/pull/652
|
||||
|
||||
## Other Fixes & Enhancements
|
||||
|
||||
- fix: out of range error by @felixroos in https://github.com/tidalcycles/strudel/pull/630
|
||||
- fix: update canvas size on window resize by @felixroos in https://github.com/tidalcycles/strudel/pull/631
|
||||
- FIXES: TODO in rotateChroma by @bwagner in https://github.com/tidalcycles/strudel/pull/650
|
||||
- snapshot tests: sort haps by part by @felixroos in https://github.com/tidalcycles/strudel/pull/637
|
||||
- Delete old packages by @felixroos in https://github.com/tidalcycles/strudel/pull/639
|
||||
- update vitest by @felixroos in https://github.com/tidalcycles/strudel/pull/651
|
||||
- fix: welcome message for latestCode by @felixroos in https://github.com/tidalcycles/strudel/pull/659
|
||||
- fix: always run previous trigger by @felixroos in https://github.com/tidalcycles/strudel/pull/660
|
||||
|
||||
## New Contributors
|
||||
|
||||
- @daslyfe made their first contribution in https://github.com/tidalcycles/strudel/pull/656
|
||||
- @Bubobubobubobubo made their first contribution in https://github.com/tidalcycles/strudel/pull/683
|
||||
|
||||
**Full Changelog**: https://github.com/tidalcycles/strudel/compare/v0.8.0...v0.9.0
|
||||
|
||||
A big thanks to all the contributors!
|
||||
24
website/src/content/config.ts
Normal file
24
website/src/content/config.ts
Normal file
@ -0,0 +1,24 @@
|
||||
import { defineCollection, z } from 'astro:content';
|
||||
|
||||
const blog = defineCollection({
|
||||
// Type-check frontmatter using a schema
|
||||
schema: z.object({
|
||||
title: z.string(),
|
||||
author: z.string(),
|
||||
description: z.string().optional(),
|
||||
// Transform string to Date object
|
||||
date: z
|
||||
.string()
|
||||
.or(z.date())
|
||||
.transform((val) => new Date(val)),
|
||||
updatedDate: z
|
||||
.string()
|
||||
.optional()
|
||||
.transform((str) => (str ? new Date(str) : undefined)),
|
||||
image: z.string().optional(),
|
||||
tags: z.array(z.string()).optional(),
|
||||
draft: z.boolean().optional(),
|
||||
}),
|
||||
});
|
||||
|
||||
export const collections = { blog };
|
||||
2
website/src/env.d.ts
vendored
2
website/src/env.d.ts
vendored
@ -2,3 +2,5 @@
|
||||
/// <reference types="astro/client" />
|
||||
/// <reference types="vite-plugin-pwa/info" />
|
||||
/// <reference types="vite-plugin-pwa/client" />
|
||||
|
||||
declare module 'date-fns';
|
||||
|
||||
50
website/src/pages/blog.astro
Normal file
50
website/src/pages/blog.astro
Normal file
@ -0,0 +1,50 @@
|
||||
---
|
||||
import BlogPost from '../components/BlogPost.astro';
|
||||
import HeadCommon from '../components/HeadCommon.astro';
|
||||
import HeadSEO from '../components/HeadSEO.astro';
|
||||
import Header from '../components/Header/Header.astro';
|
||||
import LeftSidebar from '../components/LeftSidebar/LeftSidebar.astro';
|
||||
import PageContent from '../components/PageContent/PageContent.astro';
|
||||
import RightSidebar from '../components/RightSidebar/RightSidebar.astro';
|
||||
import { getCollection } from 'astro:content';
|
||||
import { compareDesc } from 'date-fns';
|
||||
|
||||
const currentPage = Astro.url.pathname;
|
||||
|
||||
const posts = (await getCollection('blog')).sort((a, b) => compareDesc(a.data.date, b.data.date));
|
||||
---
|
||||
|
||||
<html dir={'ltr'} lang={'en'} class="initial dark">
|
||||
<head>
|
||||
<HeadCommon />
|
||||
<!-- <HeadSEO frontmatter={frontmatter} canonicalUrl={canonicalURL} /> -->
|
||||
<title>🌀 Strudel Blog</title>
|
||||
</head>
|
||||
|
||||
<body class="h-app-height text-gray-50 bg-background">
|
||||
<div class="w-full h-full space-y-4 flex flex-col">
|
||||
<header class="max-w-full fixed top-0 w-full z-[100]">
|
||||
<Header currentPage={currentPage} />
|
||||
</header>
|
||||
<main class="relative pt-16">
|
||||
<div class="h-full top-0 overflow-auto min-w-[300px] flex xl:justify-center pr-4 pl-4 md:pl-[300px] xl:pl-0">
|
||||
<aside title="Site Navigation" class="w-[300px] px-6 left-0 hidden md:block fixed h-full">
|
||||
<LeftSidebar currentPage={currentPage} />
|
||||
</aside>
|
||||
<PageContent>
|
||||
{posts.map((post) => <BlogPost post={post} />)}
|
||||
</PageContent>
|
||||
<aside class="fixed right-0 h-full overflow-auto pr-4 pl-0 pb-16 hidden xl:block" title="Table of Contents">
|
||||
<RightSidebar
|
||||
headings={posts.map((post) => ({
|
||||
depth: 1,
|
||||
slug: post.slug,
|
||||
text: post.data.title,
|
||||
}))}
|
||||
/>
|
||||
</aside>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
Loading…
x
Reference in New Issue
Block a user