Mirror of geniURL's source code https://github.com/Sv443/geniURL

Sv443 baaac1bcb9 docs: stuff há 2 meses atrás
.github c9f9e252a8 ci: remove environment deployment há 4 meses atrás
.vscode ad7b96e40b ref: vsc settings; disable deno há 2 meses atrás
src dfc1e151e3 ref: load api version through env var há 2 meses atrás
test dfc1e151e3 ref: load api version through env var há 2 meses atrás
www ec9e1992fd chore: update deps há 2 meses atrás
.env.template 3e6048167e feat: gen-token script há 2 meses atrás
.gitignore a92d455ced feat: add latency test report files & refactor latency test again há 4 meses atrás
CHANGELOG.md 8cc61a18e2 docs: update changelog há 4 meses atrás
LICENSE.txt e798a686e4 readme stuff há 3 anos atrás
README.md baaac1bcb9 docs: stuff há 2 meses atrás
eslint.config.mjs 95ea2a0e01 feat: AUTH_REQUIRED env var há 2 meses atrás
jest.config.mjs 94841ccaee fix: test stuff há 2 meses atrás
package.json 3e6048167e feat: gen-token script há 2 meses atrás
pnpm-lock.yaml ec9e1992fd chore: update deps há 2 meses atrás
tsconfig.json 63b5114f57 fix: path aliases há 2 meses atrás

README.md

geniURL

Simple JSON and XML REST API to search for song metadata, the lyrics URL and lyrics translations on genius.com
Authorization is not required. Obtaining actual lyrics sadly isn't possible.

Disclaimer: this project is not affiliated with or endorsed by Genius.

[!NOTE]
Like using geniURL for free?
It's entirely reliant on donations so please consider supporting the development ❤️


Table of contents:



Documentation:

The full documentation is available on this page: https://api.sv443.net/geniurl/v2/docs/
It will explain everything you need to know about using the REST API.



Try it:

For trying out geniURL yourself, you can use this Postman workspace.
To download it and test locally, hover over the collection, click the three-dot-menu, then click "Export".



Local setup:

To set up geniURL locally, follow these steps:

  1. Install Node.js (current or LTS) and make sure npm is installed by running npm -v
  2. Install pnpm (can be done by running npm i -g pnpm)
  3. Clone or download and extract this repository
  4. Run pnpm i in the project directory to install dependencies
  5. Copy .env.template to .env and fill in the required values
    The genius.com API key can be obtained by creating an API client here
  6. Run pnpm start to start the REST server
    Alternatively, run pnpm dev to start the server and automatically recompile and restart when the code is changed.
    If you want to start the documentation as well, make sure HOST_HOMEPAGE is set to true in .env, then run pnpm dev-all.
  7. Check out the scripts in package.json for a list of all commands

I recommend using a process manager like PM2 to keep the server running in the background, make it automatically restart on crashes and start on system boot.

Minor modifications to the server's behavior can be made in the file src/constants.ts



Legal stuff:

This project is licensed under the MIT License

The genius.com API is used to get the search results and song metadata. No actual lyrics are obtained.
This project is not affiliated with, sponsored or endorsed by genius.com.




Made with ❤️ by [Sv443](https://sv443.net/) If you like geniURL, please consider [supporting the development ❤️](https://github.com/sponsors/Sv443)