MCPcopy Index your code
hub / github.com/Sandakan/Nora

github.com/Sandakan/Nora @v3.1.0-stable

Chat with this repo
repository ↗ · DeepWiki ↗ · release v3.1.0-stable ↗ · + Follow
1,084 symbols 2,883 edges 388 files 1 documented · 0%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

GitHub all releases GitHub release (latest by date) GitHub package.json version GitHub license GitHub issues GitHub Workflow Status

Nora is an elegant music player built using Electron and React.

Inspired from Oto Music (Android) by Piyush Mamidwar.

FeaturesBuild on your systemUser feedbackChangelogDownload

Nora Banner Artwork

With simplicity and design in mind, this app was made to overcome problems when using default music apps on platforms that lack essential features.

How do I download Nora?

Go to Releases page > Assets > and choose the appropriate download or just click here to download the latest version of Nora.

App features

It packs a horizon of features including,

  • [x] Organize your songs, artists, albums, and playlists with ease.
  • [x] Create playlists that meet your needs.
  • [x] Sing along with song lyrics[^1].
  • [x] Support for synced lyrics.
  • [x] Keep your favorite songs and artists close to you.
  • [x] Read your favorite artist's biography.
  • [ ] Personalized music shuffling[^2].(Upcoming)
  • [x] Change between Light and Dark themes with ease.
  • [x] A mini-player to help focus on what matters at the moment.
  • [x] Edit the metadata of your songs easily and conveniently [^3].
  • [x] Search through your library with the help of song filters.

Latest Version Artwork

Visit the release notes to see what's new on the latest release.

Support for Online and Offline Lyrics Artwork

Switch between Dark and Light Modes Artwork

Support for Last.FM Scrobbling

Organize your music library with ease Artwork

See how your favorite artists appear on songs and albums Artwork

Keep your favorites closer to you Artwork

Search through your music library easily and efficiently Artwork

Edit song metadata and organize your library Artwork

Listen with the mini player Artwork

User Feedback

<h3><i>" A sleek music player with a modern design, this solution seeks to provide users with a seamless experience when it comes to listening to their favorite local tunes. "</i></h3>
<a href="https://www.softpedia.com/get/Multimedia/Audio/Audio-Players/Oto-Music-for-Desktop.shtml"><i>Robert Condorache &bull; Softpedia </i></a>

• • •

<h3><i>" The application interface adopts rounded corners in a large area, the fonts and icons are round and cute, and the visual effect is very comfortable. "</i></h3>
<a href="https://sspai.com/post/78669"><i>Apps Worth Watching in the Near Future &bull; SSPAI</i></a>

• • •

<h3><i>" Just found the most beautiful music player for Windows: Nora "</i></h3>
<a href="https://www.reddit.com/r/windowsapps/comments/11xgg99/just_found_the_most_beautiful_music_player_for/"><i>r/windowapps &bull; Reddit</i></a>

Build this project on your system

Clone the project

  git clone https://github.com/Sandakan/Nora

Go to the project's folder

  cd Nora

Install dependencies

  npm install

Run

  npm start

Star History

Star History Chart

Feedback

If you have any feedback about bugs, feature requests, etc. about the app, please let me know through the official Nora Discord server, or my email.

 Made with <span class="heart">&#10084;</span> by Sandakan Nipunajith.



Love, Sri Lanka.
  • Every song, artist, album, and song cover used in this demonstration is not owned by myself but owned by their respective owners. They were used for demonstration purposes only. I value all the copyrights of the owners of the above assets.

[^1]: The song lyrics use the SongLyrics package and an implementation from the MxLRC package under the hood.

[^2]: Personalized shuffles and playlists are generated by analyzing the user's listening patterns and the number of times each song gets played.

[^3]: Currently, the app only supports editing mp3 files due to some limitations of the dependencies.

Extension points exported contracts — how you extend this code

Result (Interface)
(no doc)
src/types/apple_itunes_music_api.d.ts
ErrorPromptProps (Interface)
(no doc)
src/renderer/src/components/ErrorPrompt.tsx
LogOptions (Interface)
(no doc)
src/main/logger.ts
AppleITunesMusicAPI (Interface)
(no doc)
src/types/apple_itunes_music_api.d.ts
ButtonProps (Interface)
(no doc)
src/renderer/src/components/Button.tsx
LrclibTrackInfoStructure (Interface)
(no doc)
src/main/utils/fetchLyricsFromLrclib.ts
Window (Interface)
(no doc)
src/types/app.d.ts
HyperlinkProp (Interface)
(no doc)
src/renderer/src/components/Hyperlink.tsx

Core symbols most depended-on inside this repo

sendMessageToRenderer
called by 73
src/main/main.ts
dispatch
called by 67
src/renderer/src/store.ts
dataUpdateEvent
called by 67
src/main/main.ts
getUserData
called by 35
src/main/filesystem.ts
getSongsData
called by 29
src/main/filesystem.ts
useSelectAllHandler
called by 27
src/renderer/src/hooks/useSelectAllHandler.tsx
isLatestVersion
called by 23
src/renderer/src/utils/isLatestVersion.ts
hasDataChanged
called by 16
src/renderer/src/utils/hasDataChanged.ts

Shape

Function 756
Interface 291
Method 19
Enum 12
Class 6

Languages

TypeScript100%

Modules by API surface

src/types/app.d.ts84 symbols
src/main/main.ts40 symbols
src/types/genius_lyrics_api.d.ts39 symbols
src/types/musixmatch_lyrics_api.d.ts37 symbols
src/renderer/src/utils/localStorage.ts33 symbols
src/main/filesystem.ts28 symbols
src/common/parseLyrics.ts25 symbols
src/renderer/src/App.tsx24 symbols
src/main/updateSongId3Tags.ts15 symbols
src/renderer/src/other/player.ts14 symbols
src/types/last_fm_album_info_api.d.ts12 symbols
src/main/core/getSongLyrics.ts12 symbols

For agents

$ claude mcp add Nora \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page