Skip to content

Commit

Permalink
Merge branch 'v0.8.0'
Browse files Browse the repository at this point in the history
  • Loading branch information
bhj committed Jul 4, 2020
2 parents 1510773 + 6319d7a commit 39cdf44
Show file tree
Hide file tree
Showing 32 changed files with 1,091 additions and 1,191 deletions.
54 changes: 31 additions & 23 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,34 +1,42 @@
## TBD (not yet released)
## v0.8.0 (2020-07-03)

### New:
### [Black Lives Matter.](https://blacklivesmatter.com)

- [ReplayGain](https://en.wikipedia.org/wiki/ReplayGain) support. No more scrambling for the volume when a new song starts! With properly tagged media, each song's loudness can now be normalized automatically.
- Rooms can now be password-protected
- CD+Graphics can now be resized in the player
- Added Changelog/Sponsor viewer and GitHub links to the About panel
### Sponsors

### Changed:
Massive thanks to this release's sponsors: [fulldecent](https://github.com/fulldecent), [vze22jjw](https://github.com/vze22jjw)

- (app) Reduced motion and improved accessibility of modals
- (app) Fixed status not respected when creating a new room
- (player) Web Audio API support is now required (only for browsers running the player)
- (player) Fixed media possibly not (pre)loading in Firefox
- (player) Visualizer sensitivity can now be set up to 200%
- (server) Added minimum password length (8) requirement and removed length limit
- (server) Fixed incorrect queue potentially emitted after setting preferred media
- (server) Improved filename parser and renamed config option `separator` to `delimiter`
- (server) Improved logging and made `3 (info)` the default log file level
If you have fun with it, consider [sponsoring](https://github.com/sponsors/bhj) as we roll down [the road to v1.0](https://github.com/bhj/karaoke-forever/issues/13).

### New

- **(app)** [ReplayGain support](http://www.karaoke-forever.com/docs/#preferences-admin-only). No more scrambling for the volume when a new song starts! With properly tagged media, the player can automatically minimize volume differences between songs.
- **(app)** Rooms can now be password-protected
- **(player)** CD+Graphics now have shadows, can be resized, and use less CPU
- **(player)** **(breaking)** Web Audio API support is now required (only for browsers running the player)
- **(server)** **(breaking)** Database will be migrated and no longer compatible with v0.7.x

### Changed

- **(app)** Reduced motion and improved accessibility of modals
- **(app)** Fixed status not respected when creating a new room
- **(player)** Visualizer sensitivity can now be set up to 200%
- **(player)** Fixed media possibly not (pre)loading in Firefox
- **(server)** Added minimum password length requirement (6) and removed limit
- **(server)** Fixed incorrect queue potentially emitted after setting preferred media
- **(server)** Improved filename parser and renamed config option `separator` to `delimiter`
- **(server)** Improved logging and made `3 (info)` the default log file level

## v0.7.4 (2019-12-30)

- Initial release on [npm](https://www.npmjs.com/package/karaoke-forever)
- (app) Improved sign in/first run form
- (app) Added About panel with version and licenses
- (app) General style improvements
- (server) Improved field validation and error messages
- (server) Songs/artists without known media are no longer removed automatically after scan
- (server) Media in nonexistent paths are now removed after scan
- (server) Replace dep `squel` with `sqlate`
- **(app)** Improved sign in/first run form
- **(app)** Added About panel with version and licenses
- **(app)** General style improvements
- **(server)** Improved field validation and error messages
- **(server)** Songs/artists without known media are no longer removed automatically after scan
- **(server)** Media in nonexistent paths are now removed after scan
- **(server)** Replace dep `squel` with `sqlate`

## v0.7.3 (2019-09-13)

Expand Down
42 changes: 18 additions & 24 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,47 +1,41 @@
# Karaoke Forever

Host awesome karaoke parties where everyone can easily find and queue songs from their phone's web browser. The player is also browser-based with support for [MP3+G](https://en.wikipedia.org/wiki/MP3%2BG) and MP4 video files. The server runs on your local network (see [Karaoke Forever Server](https://www.karaoke-forever.com/docs/#karaoke-forever-server)) with no internet connection required.
Host awesome karaoke parties where everyone can easily find and queue songs from their phone's web browser. The player is also browser-based with support for MP3+G, MP4 video and WebGL visualizations. The server runs locally, no internet connection required.

Karaoke Forever basically has 3 parts:

- **[Server:](https://www.karaoke-forever.com/docs/#karaoke-forever-server)** Runs on Mac/Windows/Linux/etc. to serve the app and media files on your local network.

- **[Mobile browser app:](https://www.karaoke-forever.com/docs/#karaoke-forever)** Everyone can quickly join and queue songs without having to install anything.

- **[Player:](https://www.karaoke-forever.com/docs/#player-admin-only)** Just another part of the browser app, but designed to run in fullscreen mode on the system handling audio and video for a [room](https://www.karaoke-forever.com/docs/#rooms-admin-only).

[![Karaoke Forever Demo Video](https://www.karaoke-forever.com/static/karaoke-forever-demo1-540p.jpg)](https://www.karaoke-forever.com/static/karaoke-forever-demo1-540p.mp4)
[![Karaoke Forever](/docs/assets/images/README.jpg?raw=true)](/docs/assets/images/README.jpg?raw=true)

<p align="center">
<i>App running in Mobile Safari (left) and Firefox/Chrome/Edge (right)</i><br>
Watch demo video in
<a href="https://www.karaoke-forever.com/static/karaoke-forever-demo1-540p.mp4">540p</a> |
<a href="https://www.karaoke-forever.com/static/karaoke-forever-demo1-720p.mp4">720p</a> |
<a href="https://www.karaoke-forever.com/static/karaoke-forever-demo1-1080p.mp4">1080p</a>
<i>App in mobile browser (top) controlling player in Firefox/Chrome (bottom)</i>
</p>

Karaoke Forever basically has 3 parts:

- **[Server:](https://www.karaoke-forever.com/docs/#karaoke-forever-server)** Runs on almost any OS to serve the app and your media files
- **[App:](https://www.karaoke-forever.com/docs/#karaoke-forever-the-web-app)** Fast, modern browser app designed for "karaoke conditions"
- **[Player:](https://www.karaoke-forever.com/docs/#player)** Just another part of the app, designed to run fullscreen on the system handling audio/video for a [room](https://www.karaoke-forever.com/docs/#rooms-admin-only)

## Features

- Modern browser-based app and player with dark UI designed for "karaoke conditions"
- [MP3+G](https://en.wikipedia.org/wiki/MP3%2BG) and MP4 video file support
- Milkdrop visualizations via [Butterchurn](https://github.com/jberg/butterchurn) (requires [WebGL 2](https://caniuse.com/#feat=webgl2))
- Prioritizes singers based on the amount of time since each last sang
- Multiple simultaneous rooms/queues/players
- [MP3+G](https://en.wikipedia.org/wiki/MP3%2BG) and MP4 video support
- [MilkDrop](https://en.wikipedia.org/wiki/MilkDrop)-style visualizations via [Butterchurn](https://github.com/jberg/butterchurn) (requires WebGL 2)
- [ReplayGain](https://en.wikipedia.org/wiki/ReplayGain) volume normalization support
- Singers prioritized by time since each last sang
- Multiple simultaneous rooms/queues (optionally password-protected)
- No telemetry; all data stored locally

Karaoke Forever assumes its player will be mixed with any microphones (either in software or an outboard mixer). See the [F.A.Q.](https://www.karaoke-forever.com/faq/#whats-the-recommended-microphone-audio-setup) for more information.
Karaoke Forever assumes its player will be mixed with any microphones (either in software or an outboard mixer). See the [F.A.Q.](https://www.karaoke-forever.com/faq#whats-the-recommended-audio-setup) for more information.

## Documentation
## Getting Started

Please see [Quick Start](https://www.karaoke-forever.com/docs#quick-start) to get started, or jump to the documentation for [Karaoke Forever](https://www.karaoke-forever.com/docs/#karaoke-forever) (the "web" app) or [Karaoke Forever Server](https://www.karaoke-forever.com/docs/#karaoke-forever-server).
The [Karaoke Forever website](https://www.karaoke-forever.com/) has a [Quick Start ](https://www.karaoke-forever.com/docs/#quick-start) section as well as the documentation for [Karaoke Forever](https://www.karaoke-forever.com/docs/#karaoke-forever-the-web-app) (the "web" app) and [Karaoke Forever Server](https://www.karaoke-forever.com/docs/#karaoke-forever-server).

## Discord / Support

Join the [Karaoke Forever Discord Server](https://discord.gg/PgqVtFq) for general support and development chat, or just to say hi!

## Contributing & Development

Contributions are most welcome! Make sure you have [Node.js 12](https://nodejs.org/en/), then:
Contributions are most welcome! Make sure you have [Node.js](https://nodejs.org/en/) 12 or later, then:

1. Fork and clone the repo
2. `npm i`
Expand Down
44 changes: 22 additions & 22 deletions docs/assets/css/poole.scss
Original file line number Diff line number Diff line change
Expand Up @@ -80,28 +80,28 @@ a:focus {
}

/* Headings */
h1, h2, h3, h4, h5, h6 {
margin-bottom: .5rem;
font-weight: bold;
line-height: 1.25;
color: #313131;
text-rendering: optimizeLegibility;
}
h1 {
font-size: 2rem;
}
h2 {
margin-top: 1rem;
font-size: 1.5rem;
}
h3 {
margin-top: 1.5rem;
font-size: 1.25rem;
}
h4, h5, h6 {
margin-top: 1rem;
font-size: 1rem;
}
// h1, h2, h3, h4, h5, h6 {
// margin-bottom: .5rem;
// font-weight: bold;
// line-height: 1.25;
// color: #313131;
// text-rendering: optimizeLegibility;
// }
// h1 {
// font-size: 2rem;
// }
// h2 {
// margin-top: 1rem;
// font-size: 1.5rem;
// }
// h3 {
// margin-top: 1.5rem;
// font-size: 1.25rem;
// }
// h4, h5, h6 {
// margin-top: 1rem;
// font-size: 1rem;
// }

/* Body text */
p {
Expand Down
Loading

0 comments on commit 39cdf44

Please sign in to comment.