Skip to content

Commit 3c5531c

Browse files
committed
New design
Signed-off-by: Yvan Volochine <[email protected]>
1 parent 10b5f3d commit 3c5531c

File tree

95 files changed

+1502
-1477
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

95 files changed

+1502
-1477
lines changed

.gitignore

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,3 @@
1-
_site/
21
Gemfile.lock
3-
*.gem
4-
*.swp
5-
*~
6-
.bundle/
7-
.DS_Store
2+
_site/
83
vendor/

404.html

Lines changed: 0 additions & 1 deletion
This file was deleted.

404.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
---
2+
layout: page
3+
title: Page Not Found
4+
hasWave: true
5+
---
6+
7+
<div class="wave">
8+
<svg xmlns="http://www.w3.org/2000/svg" width="90px" height="60px">
9+
<path id="long-wave" fill="none" stroke="#262626" stroke-width="4">
10+
</path>
11+
</svg>
12+
</div>
13+
14+
#### Ooops
15+
16+
Sorry this page does not exist =(

Gemfile

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
source 'https://rubygems.org'
22

3-
gem "type-on-strap"
4-
# If you want to use GitHub Pages, remove the "gem "jekyll"" above and
5-
# uncomment the line below. To upgrade, run `bundle update github-pages`.
63
gem "github-pages", group: :jekyll_plugins
4+
# gem "type-on-strap"
5+
gem "jekyll-remote-theme"
76

87
# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
98
# and associated library.

README.md

Lines changed: 12 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,33 @@
1-
supercollider.github.io
2-
=======================
1+
# supercollider.github.io
32

4-
Front pages for supercollider
5-
6-
Usage
7-
--------
3+
## Local Usage
84

95
Clone this repository:
106

117
git clone git://github.com/supercollider/supercollider.github.io.git
128
cd supercollider.github.io
139

1410
To view these pages locally, you must install `jekyll` using the Ruby Gem package manager.
15-
You will need Ruby Gems of course.
11+
You will also need Ruby and Gems.
1612

17-
First, install the standard `bundler` gem which reads Gemfiles and installs isolated gems for a project:
13+
First, install the standard `bundler` gem:
1814

1915
gem install bundler
20-
16+
2117
and then from the supercollider.github.io directory run:
2218

2319
bundle install
24-
25-
which will use the Gemfile found in that directory and will install an isolated copy of github-pages in that directory.
2620

2721

2822
Now run `Jekyll`:
2923

30-
jekyll serve --watch
24+
bundle exec jekyll serve
25+
26+
And then, in your browser:
3127

32-
or:
28+
http://127.0.0.1:4000
3329

34-
jekyll help
35-
36-
Then, in your browser:
30+
## Update This Website
3731

38-
http://localhost:4000
32+
This should be straightforward.
33+
For code snippets, download links and/or gallery/projects updates, check the `_data` folder.

_config-dev.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
baseurl: ""
2+
url: "http://127.0.0.1:4000"

_config.yml

Lines changed: 33 additions & 86 deletions
Original file line numberDiff line numberDiff line change
@@ -1,87 +1,34 @@
1-
# This is the default format.
2-
# For more see: https://github.com/mojombo/jekyll/wiki/Permalinks
3-
permalink: /:categories/:year/:month/:day/:title
4-
5-
exclude: ["README.md", "Rakefile", "vendor"]
6-
highlighter: rouge
7-
8-
#
1+
# Site settings
92
title: SuperCollider
10-
tagline: An environment and programming language for real time audio synthesis and algorithmic composition
11-
author :
12-
name: SuperCollider
13-
14-
github: supercollider
15-
twitter:
16-
feedburner:
17-
18-
# The production_url is only used when full-domain names are needed
19-
# such as sitemap.txt
20-
# Most places will/should use BASE_PATH to make the urls
21-
#
22-
# If you have set a CNAME (pages.github.com) set your custom domain here.
23-
# Else if you are pushing to username.github.com, replace with your username.
24-
# Finally if you are pushing to a GitHub project page, include the project name at the end.
25-
#
26-
production_url : https://supercollider.github.io
27-
28-
JB:
29-
# These paths are to the main pages Jekyll-Bootstrap ships with.
30-
# Some JB helpers refer to these paths; change them here if needed.
31-
#
32-
archive_path: /archive.html
33-
categories_path : /categories.html
34-
tags_path : /tags.html
35-
atom_path : /atom.xml
36-
rss_path : /rss.xml
37-
38-
# Settings for comments helper
39-
# Set 'provider' to the comment provider you want to use.
40-
# Set 'provider' to false to turn commenting off globally.
41-
#
42-
comments :
43-
provider : false
44-
disqus :
45-
short_name : supercollider
46-
livefyre :
47-
site_id : 123
48-
intensedebate :
49-
account : 123abc
50-
facebook :
51-
appid : 123
52-
num_posts: 5
53-
width: 580
54-
colorscheme: light
55-
56-
# Settings for analytics helper
57-
# Set 'provider' to the analytics provider you want to use.
58-
# Set 'provider' to false to turn analytics off globally.
59-
#
60-
analytics :
61-
provider : false
62-
google :
63-
tracking_id : 'UA-123-12'
64-
getclicky :
65-
site_id :
66-
mixpanel :
67-
token : '_MIXPANEL_TOKEN_'
68-
69-
# Settings for sharing helper.
70-
# Sharing is for things like tweet, plusone, like, reddit buttons etc.
71-
# Set 'provider' to the sharing provider you want to use.
72-
# Set 'provider' to false to turn sharing off globally.
73-
#
74-
sharing :
75-
provider : false
76-
77-
# Settings for all other include helpers can be defined by creating
78-
# a hash with key named for the given helper. ex:
79-
#
80-
# pages_list :
81-
# provider : "custom"
82-
#
83-
# Setting any helper's provider to 'custom' will bypass the helper code
84-
# and include your custom code. Your custom file must be defined at:
85-
# ./_includes/custom/[HELPER]
86-
# where [HELPER] is the name of the helper you are overriding.
87-
3+
description: >- # this means to ignore newlines in the following paragraph
4+
An environment and programming language for real time audio synthesis and
5+
algorithmic composition.
6+
favicon: assets/img/favicon.png
7+
# Change this before merging
8+
baseurl: /supercollider.github.io
9+
url: "https://supercollider.github.io"
10+
11+
# Website version
12+
site_version: 0.1.1
13+
14+
# Build settings
15+
sass:
16+
load_paths:
17+
- _sass
18+
- assets/css
19+
20+
# Plugins:
21+
whitelist: []
22+
plugins:
23+
- jekyll-feed
24+
- jekyll-remote-theme
25+
26+
remote_theme: sylhare/type-on-strap
27+
28+
# Theme settings
29+
color_theme: auto
30+
bootstrap: true
31+
32+
# SC Version
33+
github_url: "https://github.com/supercollider/supercollider"
34+
current_version: 3.12.12

_data/code_snippets.yml

Lines changed: 120 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,120 @@
1+
- name: Simple FM
2+
code: |
3+
{ SinOsc.ar(SinOsc.kr([1, 3]).exprange(100, 2e3), 0, 0.2) }.play
4+
audio: fm.mp3
5+
loop: true
6+
7+
- name: Drummer
8+
author: 'Thor Magnusson, 2006'
9+
code: |
10+
{
11+
var snare, bdrum, hihat;
12+
var tempo = 4;
13+
14+
tempo = Impulse.ar(tempo); // for a drunk drummer replace Impulse with Dust !!!
15+
snare = WhiteNoise.ar(Decay2.ar(PulseDivider.ar(tempo, 4, 2), 0.005, 0.5));
16+
bdrum = SinOsc.ar(Line.ar(120,60, 1), 0, Decay2.ar(PulseDivider.ar(tempo, 4, 0), 0.005, 0.5));
17+
hihat = HPF.ar(WhiteNoise.ar(1), 10000) * Decay2.ar(tempo, 0.005, 0.5);
18+
19+
Out.ar(0, (snare + bdrum + hihat) * 0.4 ! 2)
20+
}.play
21+
audio: drummer.mp3
22+
loop: true
23+
24+
- name: Chainsaw
25+
author: 'Julian Rohrhuber, 2007'
26+
code: |
27+
(
28+
var f, g;
29+
30+
f = { | saw |
31+
var freq, u, amp, rate;
32+
33+
rate = ExpRand(0.1, 2);
34+
freq = if (0.6.coin) {
35+
LFNoise1.kr(rate.dup).exprange(0.01, 10)
36+
} {
37+
LFNoise1.kr(rate.dup).exprange(10, 50)
38+
};
39+
u = LFSaw.kr(LinExp.kr(saw, -1, 1, freq, freq * LFNoise1.kr(rate.dup).exprange(2, 10)));
40+
u = if (0.5.coin) {
41+
u * [1 - saw, saw.reverse].choose
42+
} {
43+
u * LFSaw.kr(freq * 0.1, 0, 0.1, 1)
44+
};
45+
46+
u.clip2(1.0)
47+
48+
};
49+
50+
g = { | func, n = 5 |
51+
n.do { func = func <> func };
52+
func
53+
};
54+
55+
{
56+
var freq;
57+
freq = g.(f, 4).value(LFSaw.kr(0.2 * [1, 1.1])).exprange(6, 11000);
58+
BPF.ar(Saw.ar(freq).product, [70, 800, 9000, 5242], 0.2).sum.dup * 0.3
59+
}.play
60+
)
61+
audio: chainsaw.mp3
62+
loop: false
63+
64+
- name: Gabber Rave
65+
code: |
66+
// 60Hz Gabber Rave 1995
67+
(
68+
SynthDef(\gabberkick, {
69+
var snd, freq, high, lfo;
70+
freq = \freq.kr(440) * (Env.perc(0.001, 0.08, curve: -1).ar * 48 * \bend.kr(1)).midiratio;
71+
snd = Saw.ar(freq);
72+
snd = (snd * 100).tanh + ((snd.sign - snd) * -8.dbamp);
73+
high = HPF.ar(snd, 300);
74+
lfo = SinOsc.ar(8, [0, 0.5pi]).range(0, 0.01);
75+
high = high.dup(2) + (DelayC.ar(high, 0.01, lfo) * -2.dbamp);
76+
snd = LPF.ar(snd, 100).dup(2) + high;
77+
snd = RLPF.ar(snd, 7000, 2);
78+
snd = BPeakEQ.ar(snd, \ffreq.kr(3000) * XLine.kr(1, 0.8, 0.3), 0.5, 15);
79+
snd = snd * Env.asr(0.001, 1, 0.05).ar(2, \gate.kr(1));
80+
Out.ar(\out.kr(0), snd * \amp.kr(0.1));
81+
}).add;
82+
83+
SynthDef(\hoover, {
84+
var snd, freq, bw, delay, decay;
85+
freq = \freq.kr(440);
86+
freq = freq * Env([-5, 6, 0], [0.1, 1.7], [\lin, -4]).kr.midiratio;
87+
bw = 1.035;
88+
snd = { DelayN.ar(Saw.ar(freq * ExpRand(bw, 1 / bw)) + Saw.ar(freq * 0.5 * ExpRand(bw, 1 / bw)), 0.01, Rand(0, 0.01)) }.dup(20);
89+
snd = (Splay.ar(snd) * 3).atan;
90+
snd = snd * Env.asr(0.01, 1.0, 1.0).kr(0, \gate.kr(1));
91+
snd = FreeVerb2.ar(snd[0], snd[1], 0.3, 0.9);
92+
snd = snd * Env.asr(0, 1.0, 4, 6).kr(2, \gate.kr(1));
93+
Out.ar(\out.kr(0), snd * \amp.kr(0.1));
94+
}).add;
95+
)
96+
97+
(
98+
var durations;
99+
durations = [1, 1, 1, 1, 3/4, 1/4, 1/2, 3/4, 1/4, 1/2];
100+
Ppar([
101+
Pbind(*[
102+
instrument: \gabberkick,
103+
amp: -23.dbamp,
104+
freq: 60,
105+
legato: 0.8,
106+
ffreq: Pseq((0..(durations.size * 4 - 1)).normalize, inf).linexp(0, 1, 100, 4000),
107+
dur: Pseq(durations, inf),
108+
bend: Pfuncn({ |x| if(x < (1/2), 0.4, 1) }, inf) <> Pkey(\dur),
109+
]),
110+
Pbind(*[
111+
instrument: \hoover,
112+
amp: -20.dbamp,
113+
midinote: 74,
114+
dur: durations.sum * 2,
115+
sustain: 7,
116+
])
117+
]).play(TempoClock(210 / 60));
118+
)
119+
audio: gabber.mp3
120+
loop: true

_data/downloads.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
- os: macOS
2+
icon: fa fa-apple
3+
version: 3.12.12 for macOS 10.13 and later
4+
link: https://github.com/supercollider/supercollider/releases/download/Version-3.12.2/SuperCollider-3.12.2-macOS.dmg
5+
- os: Linux
6+
icon: fa fa-linux
7+
version: 3.12.12 source tarball for linux
8+
link: https://github.com/supercollider/supercollider/releases/download/Version-3.12.2/SuperCollider-3.12.2-Source.tar.bz2
9+
- os: Windows
10+
icon: fa fa-windows
11+
version: 3.12.12 for Windows 64-bit
12+
link: https://github.com/supercollider/supercollider/releases/download/Version-3.12.2/SuperCollider-3.12.2_Release-x64-VS-7c4c983.exe

_data/features.yml

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
- name: "Language - sclang"
2+
features:
3+
- Single inheritance object-oriented and functional language
4+
- Similar to Smalltalk or Ruby with syntax similar to C or Javascript
5+
- Dynamically typed
6+
- Constant time message lookup and real-time garbage collection
7+
- Functions as first-class objects
8+
- Closures are lexical, and scope is both lexical and dynamic
9+
- Coroutines
10+
- List comprehensions
11+
- Partial application (explicit currying)
12+
- Tail call optimization
13+
- Class extensions
14+
- Embedded subsystems for composing patterns and signal graphs
15+
- Quarks package manager for code sharing
16+
- Interactive programming and Live Coding
17+
- name: "Server - scsynth"
18+
features:
19+
- High quality accurate and efficient audio engine
20+
- Fully adjustable sample rate (192k+) and block size
21+
- 32-bit float signal chain
22+
- Sampling buffers use 64-bit float
23+
- Fast and fluid control rate modulation
24+
- "[Communicates via Open Sound Control](http://doc.sccode.org/Reference/Server-Command-Reference) - TCP/UDP network communication"
25+
- "[Hundreds of UGens (unit generators)](http://doc.sccode.org/Browse.html#UGens)"
26+
- Simple ANSI C plugin API
27+
- Hundreds more community contributed UGens
28+
- Supports any number of input and output channels, ideal for [large multichannel setups](http://www.beast.bham.ac.uk/)
29+
- Multi-processor support using the Supernova server implementation
30+
- name: "IDE / Application"
31+
features:
32+
- Qt-based cross-platform Integrated Development Environment
33+
- REPL for "select and call" interactive programming
34+
- Qt powered GUI framework for building rich interfaces

0 commit comments

Comments
 (0)