15 | N 16 | o 17 | i 18 | s 19 | e 20 | e 21 |
22 |SEE NOISE w/ FRIENDS
23 |start or join a room
27 | 46 | [MOTION WARNING] 47 |├── .svelte-kit ├── generated │ ├── client │ │ ├── matchers.js │ │ ├── nodes │ │ │ ├── 2.js │ │ │ ├── 1.js │ │ │ ├── 0.js │ │ │ └── 3.js │ │ └── app.js │ ├── root.svelte │ └── server │ │ └── internal.js ├── types │ ├── route_meta_data.json │ └── src │ │ └── routes │ │ ├── room │ │ ├── $types.d.ts │ │ └── [slug] │ │ │ └── $types.d.ts │ │ └── $types.d.ts ├── non-ambient.d.ts ├── tsconfig.json └── ambient.d.ts ├── static ├── favicon.png ├── noisee.png └── theme.css ├── src ├── routes │ ├── room │ │ └── [slug] │ │ │ ├── +page.js │ │ │ └── +page.svelte │ └── +page.svelte ├── icons │ ├── Previous.svelte │ ├── User.svelte │ ├── Settings.svelte │ ├── Power.svelte │ └── Close.svelte ├── lib │ ├── store.ts │ ├── device-media.ts │ ├── effects.ts │ └── partykit.ts ├── app.d.ts ├── components │ ├── DeviceList.svelte │ └── Settings.svelte └── app.html ├── partykit ├── public │ ├── favicon.ico │ ├── index.html │ └── normalize.css ├── partykit.json ├── package.json ├── src │ ├── styles.css │ ├── client.ts │ └── server.ts ├── README.md ├── .gitignore ├── tsconfig.json └── package-lock.json ├── vite.config.ts ├── .gitignore ├── svelte.config.js ├── tsconfig.json ├── README.md └── package.json /.svelte-kit/generated/client/matchers.js: -------------------------------------------------------------------------------- 1 | export const matchers = {}; -------------------------------------------------------------------------------- /static/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/learnwithjason/noisee/HEAD/static/favicon.png -------------------------------------------------------------------------------- /static/noisee.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/learnwithjason/noisee/HEAD/static/noisee.png -------------------------------------------------------------------------------- /src/routes/room/[slug]/+page.js: -------------------------------------------------------------------------------- 1 | export async function load({ params }) { 2 | return params 3 | } -------------------------------------------------------------------------------- /partykit/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/learnwithjason/noisee/HEAD/partykit/public/favicon.ico -------------------------------------------------------------------------------- /.svelte-kit/generated/client/nodes/2.js: -------------------------------------------------------------------------------- 1 | export { default as component } from "../../../../src/routes/+page.svelte"; -------------------------------------------------------------------------------- /.svelte-kit/types/route_meta_data.json: -------------------------------------------------------------------------------- 1 | { 2 | "/": [], 3 | "/room/[slug]": [ 4 | "src/routes/room/[slug]/+page.js" 5 | ] 6 | } -------------------------------------------------------------------------------- /.svelte-kit/generated/client/nodes/1.js: -------------------------------------------------------------------------------- 1 | export { default as component } from "../../../../node_modules/@sveltejs/kit/src/runtime/components/error.svelte"; -------------------------------------------------------------------------------- /.svelte-kit/generated/client/nodes/0.js: -------------------------------------------------------------------------------- 1 | export { default as component } from "../../../../node_modules/@sveltejs/kit/src/runtime/components/layout.svelte"; -------------------------------------------------------------------------------- /src/icons/Previous.svelte: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /vite.config.ts: -------------------------------------------------------------------------------- 1 | import { sveltekit } from '@sveltejs/kit/vite'; 2 | import { defineConfig } from 'vite'; 3 | 4 | export default defineConfig({ 5 | plugins: [sveltekit()] 6 | }); 7 | -------------------------------------------------------------------------------- /.svelte-kit/generated/client/nodes/3.js: -------------------------------------------------------------------------------- 1 | import * as universal from "../../../../src/routes/room/[slug]/+page.js"; 2 | export { universal }; 3 | export { default as component } from "../../../../src/routes/room/[slug]/+page.svelte"; -------------------------------------------------------------------------------- /src/lib/store.ts: -------------------------------------------------------------------------------- 1 | import { writable } from 'svelte/store' 2 | 3 | export const deviceID = writable('default') 4 | export const gradient = writable('radial') 5 | 6 | export const connections = writable(0) 7 | export const partyers = writable([]) 8 | -------------------------------------------------------------------------------- /partykit/partykit.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://www.partykit.io/schema.json", 3 | "name": "partykit", 4 | "main": "src/server.ts", 5 | "compatibilityDate": "2024-01-15", 6 | "serve": { 7 | "path": "public", 8 | "build": "src/client.ts" 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # build output 2 | dist/ 3 | 4 | # generated types 5 | .astro/ 6 | 7 | # dependencies 8 | node_modules/ 9 | 10 | # logs 11 | npm-debug.log* 12 | yarn-debug.log* 13 | yarn-error.log* 14 | pnpm-debug.log* 15 | 16 | # environment variables 17 | .env 18 | .env.production 19 | 20 | # macOS-specific files 21 | .DS_Store 22 | -------------------------------------------------------------------------------- /src/app.d.ts: -------------------------------------------------------------------------------- 1 | // See https://kit.svelte.dev/docs/types#app 2 | // for information about these interfaces 3 | declare global { 4 | namespace App { 5 | // interface Error {} 6 | // interface Locals {} 7 | // interface PageData {} 8 | // interface PageState {} 9 | // interface Platform {} 10 | } 11 | } 12 | 13 | export {}; 14 | -------------------------------------------------------------------------------- /src/icons/User.svelte: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /partykit/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "partykit", 3 | "version": "0.0.0", 4 | "private": true, 5 | "scripts": { 6 | "dev": "partykit dev", 7 | "deploy": "partykit deploy" 8 | }, 9 | "dependencies": { 10 | "partysocket": "0.0.20" 11 | }, 12 | "devDependencies": { 13 | "partykit": "0.0.72", 14 | "typescript": "^5.3.3" 15 | } 16 | } -------------------------------------------------------------------------------- /src/icons/Settings.svelte: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/lib/device-media.ts: -------------------------------------------------------------------------------- 1 | export async function listAudioDevices() { 2 | const devices = await navigator.mediaDevices.enumerateDevices() 3 | 4 | return devices 5 | .filter(device => device.kind === 'audioinput') 6 | .map(device => { 7 | return { 8 | id: device.deviceId, 9 | name: device.label.slice(0, device.label.indexOf(' (')) , 10 | } 11 | }) 12 | } -------------------------------------------------------------------------------- /src/icons/Power.svelte: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /svelte.config.js: -------------------------------------------------------------------------------- 1 | import adapter from '@sveltejs/adapter-auto'; 2 | import { vitePreprocess } from '@sveltejs/vite-plugin-svelte'; 3 | 4 | /** @type {import('@sveltejs/kit').Config} */ 5 | const config = { 6 | preprocess: vitePreprocess(), 7 | 8 | kit: { 9 | adapter: adapter(), 10 | alias: { 11 | '$components': 'src/components', 12 | '$icons': 'src/icons', 13 | } 14 | } 15 | }; 16 | 17 | export default config; 18 | -------------------------------------------------------------------------------- /.svelte-kit/generated/client/app.js: -------------------------------------------------------------------------------- 1 | export { matchers } from './matchers.js'; 2 | 3 | export const nodes = [ 4 | () => import('./nodes/0'), 5 | () => import('./nodes/1'), 6 | () => import('./nodes/2'), 7 | () => import('./nodes/3') 8 | ]; 9 | 10 | export const server_loads = []; 11 | 12 | export const dictionary = { 13 | "/": [2], 14 | "/room/[slug]": [3] 15 | }; 16 | 17 | export const hooks = { 18 | handleError: (({ error }) => { console.error(error) }), 19 | 20 | reroute: (() => {}) 21 | }; 22 | 23 | export { default as root } from '../root.svelte'; -------------------------------------------------------------------------------- /partykit/src/styles.css: -------------------------------------------------------------------------------- 1 | /* 2 | We've already included normalize.css. 3 | 4 | But we'd like a modern looking boilerplate. 5 | Clean type, sans-serif, and a nice color palette. 6 | 7 | */ 8 | 9 | body { 10 | font-family: sans-serif; 11 | font-size: 16px; 12 | line-height: 1.5; 13 | color: #333; 14 | } 15 | 16 | h1, 17 | h2, 18 | h3, 19 | h4, 20 | h5, 21 | h6 { 22 | font-family: sans-serif; 23 | font-weight: 600; 24 | line-height: 1.25; 25 | margin-top: 0; 26 | margin-bottom: 0.5rem; 27 | } 28 | 29 | #app { 30 | padding: 1rem; 31 | } 32 | -------------------------------------------------------------------------------- /src/components/DeviceList.svelte: -------------------------------------------------------------------------------- 1 | 7 | 8 | {#if devices.length} 9 | 14 | {/if} 15 | {#if !devices.length} 16 |
No device connected.
17 |👉 JAM!
18 | {/if} 19 | 20 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "./.svelte-kit/tsconfig.json", 3 | "compilerOptions": { 4 | "allowJs": true, 5 | "checkJs": true, 6 | "esModuleInterop": true, 7 | "forceConsistentCasingInFileNames": true, 8 | "resolveJsonModule": true, 9 | "skipLibCheck": true, 10 | "sourceMap": true, 11 | "strict": true, 12 | "moduleResolution": "bundler" 13 | } 14 | // Path aliases are handled by https://kit.svelte.dev/docs/configuration#alias 15 | // 16 | // If you want to overwrite includes/excludes, make sure to copy over the relevant includes/excludes 17 | // from the referenced tsconfig.json - TypeScript does not merge them in 18 | } 19 | -------------------------------------------------------------------------------- /src/icons/Close.svelte: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /static/theme.css: -------------------------------------------------------------------------------- 1 | :root { 2 | --text-1: black; 3 | --text-2: var(--gray-10); 4 | --surface-1: white; 5 | --link: deeppink; 6 | --visited: deeppink; 7 | --scrollthumb-color: white; 8 | scrollbar-color: white black; 9 | 10 | @media (prefers-color-scheme: dark) { 11 | --text-1: white; 12 | --text-2: var(--gray-3); 13 | --surface-1: black; 14 | --link: hotpink; 15 | --scrollthumb-color: black; 16 | scrollbar-color: black white; 17 | } 18 | } 19 | 20 | button { 21 | background: var(--text-1); 22 | color: var(--surface-1); 23 | font-size: var(--font-size-4); 24 | padding-inline: var(--size-7); 25 | padding-block: var(--size-5); 26 | } 27 | 28 | select { 29 | background: var(--text-1); 30 | color: var(--surface-1); 31 | } -------------------------------------------------------------------------------- /.svelte-kit/non-ambient.d.ts: -------------------------------------------------------------------------------- 1 | 2 | // this file is generated — do not edit it 3 | 4 | 5 | declare module "svelte/elements" { 6 | export interface HTMLAttributesSEE NOISE w/ FRIENDS
23 |start or join a room
27 | 46 | [MOTION WARNING] 47 |