Skip to content
Snippets Groups Projects
Miniontoby's avatar
Miniontoby authored
- Added profile page
- Added navbar profile dropdown
- Moved themeswitcher to profile dropdown
- Changed the urls to use resolveRoute for supporting running in subfolder...
142c1579
History

PraiseLink

Sheet music, lyrics and more sharing web platform for churches and other live performance groups

Idea/Roadmap

Web app for sharing the lyrics for the services

  • You can then create teams
  • Within team, owner can use the songs
    • Lyrics as main item
    • Add your own music sheets
      • Even 'linking' them to the lyrics
      • If the text is large, it scrolls to it
      • Make recordings of yourself singing/playing it, so that the rest can practice (such as for the drummers, for example)
    • With a practice 'view' (maybe)
  • Add an liveview with a share key, like at Kahoot
    • Allow the leader to control/scroll
    • Add an remote API for external programs
      • Add an integration with my SongTextProjector so that it would sync to the songtext on the screen
  • And if we were to use this, the person controlling the projector would no longer have to ask which songs
    • And no longer ask in which order

Getting started

Cloning this code

git clone https://edugit.org/thedutchprogrammers/praiselink.git
cd praiselink

Installing

npm install

Setup config

Copy the example.env to .env

You can change the DATABASE_URL, make sure it is in the format that can be found on this website

Then fill in the mail server details and save.

Initialize database

npm run db:generate
npm run db:push
npm run db:seed

Developing

Once you've created a project and installed dependencies with npm install (or pnpm install or yarn), start a development server:

npm run dev

# or start the server and open the app in a new browser tab
npm run dev -- --open

Testing

For testing you need to create a few files in order to use authenticated routes.

...

Afterwards, you can run:

npm run test

Building

To create a production version of your app:

npm run build

You can preview the production build with npm run preview.

And you can run the production build using npm start or node . or node ./productionServer/

Background information / Story

I, Miniontoby, am a christian and I help out at the Teenager church diensten by controlling the computer for projecting the lyrics.

It all started when I got a connection with the other person who used to control the computer for the beamer for the lyrics. He always complained about the program we use for the lyrics presentation, that it is bad and slow. So to help him out, I actually made my own software, called SongTextProjector.

When working on improving it, I was thinking about using Speech to Text to automatically go to the next lines, when they got there/finished the previous.

But it was more difficult then I thought, so I decided to turn the tables. Instead of me syncing to the band, I would get the band synced to ME.

Since everyone on the band (like 6+ people) all have their own tablet/ipad with their lyrics + musicchords/sheets. But they all have to scroll on their own tablet/ipad by themselfs meaning they cannot play for 2 seconds.

So that got me thinking: What if I would create a web platform where the leader of the band can submit the songs (with the lyrics) and then the bandmembers can add and align their musicsheets/chords to the lyrics.

And then I would add a liveview with an share key, like at Kahoot, so they can all join. The leader would be able to scroll for everyone then. But I would also add an remote API for external programs to interact.

Then I would integrate that into my SongTextProjector and make the liveview sync when I go to the next lyrics lines. Meaning it would scroll the bandmember's views on their tablet/ipad's.