ReleaseWatcher is a web and mobile application designed to help users monitor their favorite music artists for new releases and provide a weekly summary of all new releases through a playlist or email.
https://www.releasewatcher.com
The idea behind ReleaseWatcher is to make it easier for users to keep track of new releases from their favorite music artists across multiple streaming services. By offering a unified platform, users can receive a weekly summary of new releases through a playlist or email, ensuring they never miss a new release from the artists they care about.
- User Authentication and Account Management
- Connecting to Multiple Streaming Services
- Artist Management and Search Functionality
- Release Monitoring for Subscribed Artists
- Weekly Summary of New Releases via Playlist or Email
- Bonus Feature (Tentative): Podcast Subscription Transfer
- Frontend: React (Web), React Native (Mobile)
- Backend: Node.js, Express
- Database: MongoDB
- Third-Party APIs: Spotify API, Apple Music API, Amazon Music API, Deezer API, Last.fm API, YouTube API, MusicBrainz API
To set up the project locally, please follow these steps:
- Clone the repository to your local machine.
- Install the required dependencies using
npm install
oryarn install
. - Create a
.env
file and fill in the required API keys and secrets for the third-party services. - Start the development server using
npm run dev
oryarn dev
. - Open the app in your browser at
http://localhost:3000
.
This project is divided into several milestones:
- Milestone 1: Design and develop user authentication, account management, and streaming service connection features.
- Milestone 2: Implement artist search, subscription, and management functionalities, including refined settings for importing artists.
- Milestone 3: Integrate release monitoring and weekly summary features, including refined playlist export options and user choice of export type.
- Milestone 4: Add support for Amazon Music, Deezer, and Last.fm, including research and integration of APIs for data scraping.
- Milestone 5: Research and assess the feasibility of integrating podcast subscription transfer as a bonus feature, either within ReleaseWatcher or as a separate app.
- Milestone 6: Optimize performance, usability, scalability, and security.
- Milestone 7: Test and debug the application on web and mobile platforms, including comprehensive testing of all supported streaming services and export options.
- Milestone 8: Launch the app and provide ongoing support, updates, and potential integration of additional streaming services or features based on user feedback and market demands.
We welcome contributions to the ReleaseWatcher project! If you would like to contribute, please fork the repository and create a pull request with your changes. Be sure to provide a detailed description of your changes and follow the project's coding standards and guidelines.
This project uses a modified version of https://github.com/mpoon/gpt-repository-loader to maintain up to date code context for use with ChatGPT / GPT4.
Example command:
python gpt_repository_loader.py "../ReleaseWatcher" -p "../ReleaseWatcher/.preamble" -o "../ReleaseWatcher/context.txt" -t 2048 -m 10
This project is licensed under the MIT License.