Our team recognized the communal desire to share and discover music, especially while engaging in focused activities like coding. However, the absence of a dedicated platform to curate and stream community-sourced music inspired us to develop a solution.
Introducing our app, a music-sharing platform integrated with Spotify, designed to foster community engagement and discovery. Each day, a selection of songs from our extensive database is randomly curated and added to a Spotify playlist, accessible via a widget embedded within our app. Users can return daily to explore fresh tracks recommended by fellow community members.
While our app is publicly available, exclusive access to certain features, such as song submissions, is reserved for community members. Authentication is seamlessly facilitated through Slack, leveraging the Sign in with Slack feature. Team members are authenticated based on their membership within the designated Slack workspace. Upon authentication, users gain access to the song submission feature, where they can contribute to expanding our music database by providing song details and URL.
Technologically, our app is built using Vite React and Bootstrap for frontend development, while Node.js and Express.js power the backend. Data management is handled through PostgreSQL, ensuring robust and efficient storage of song information. Deployment is streamlined with Render, facilitating seamless accessibility.
Furthermore, our integration with external APIs enriches user experience
and functionality. The
Slack API
enables secure authentication, verifying users' team membership before
granting access to additional features. Meanwhile, the
Spotify API
facilitates seamless integration, allowing our app to dynamically
generate and update playlists based on community submissions.
Security is paramount in our design. We employ
JSON Web Tokens (JWT)
to facilitate secure transmission of user data between frontend and
backend components. Following industry best practices, JWTs are issued
upon user authentication, enabling subsequent requests without exposing
sensitive tokens.
Our app not only serves as a platform for music sharing but also fosters a sense of community and collaboration among users. By leveraging modern technologies and seamless integrations, we aim to enhance the music-sharing experience and cultivate a vibrant community hub for music enthusiasts.