Giter Site home page Giter Site logo

jmarsh24 / tangocloud Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 0.0 184.41 MB

This is tango music streaming platform

Home Page: https://tangocloud.app

Dockerfile 0.61% Shell 0.42% Ruby 57.59% HTML 0.94% Slim 1.97% SCSS 1.79% TypeScript 29.72% JavaScript 1.16% Go 2.73% NSIS 2.31% CSS 0.75%
music music-player tango

tangocloud's Introduction

TangoCloud

Table of Contents

This is a music streaming platform for tango.

Release

CD CD CI

Description

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

Clone the repo with this link. https://github.com/jmarsh24/tangocloud.git

Built With

Repository

Make sure the nerdgeschoss development is running correctly (https://github.com/nerdgeschoss/development-environment) and follow the usual setup steps outlined there. This will create a docker server to run the postgres database.

Then install dependencies and prepare the database with:

Make sure you have ruby version 3.2.2 up and running on your local dev environment.

In order to get the project up and running you can use bin/setup. This will create a database and install any missing packages. (This has been written for mac OS, so it may not install some dependencies...)

To start the server you can run bin/dev. This will start the worker and web processes. The server api server will be available at localhost:3000

If you need to add any secrets to the repository you can request the RAILS_MASTER_KEY from the project administrator. Once you have this key all the environment variables can be viewed/edited by running

bin/rails credentials:edit

Asset Management

This project uses Vite to manage assets. This gives us the capability to have live reload in the project.

Development

For debugger this project uses the debug gem. A breakpoint can be added in the ruby code with binding.irb or by using the alias debugger.

For future development, please consult the nerdgeschoss NUTS handbook for current developer guidelines.

Testing

This project using rspec for testing. You can run the test suite using bin/guard

Before running tests, bin/rails assets:precompile should be run, otherwise the javascript and css will not be compiled.

Be default the system tests run without a head. If you would like to enable headful browsing in system tests for debugging you can change HEADLESS=true in the .env file.

Linting

This project uses linting provided by rubocop with customization added by shimmer.

It also uses Shopify LSP to improve the editor experience.

In order to run ruby linting across the code you can run bin/rubocop -A which will try to auto correct any mistakes.

tangocloud's People

Contributors

dependabot[bot] avatar jmarsh24 avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

Forkers

matiasfacio

tangocloud's Issues

Music Recommendations

As a user, I want to receive music recommendations based on my listening history to discover new music.

Responsive Layout

As a developer, I want the app to have a responsive layout so that it provides a consistent experience across different devices.

Social Integration

As a user, I want to share playlists and songs with friends and see what others are listening to enhance the social experience.

User Story: Music Player

As a user, I want to play, pause, and stop music tracks so that I can control my listening experience.

  • The song should not play when you first open the app.
  • there should be stop button which removes it from a queue
  • it should be available across all screens
  • it should link to a modal and open up the song
  • song should be properly formatted

Playlist Management

As a user, I want to create, edit, and delete playlists so that I can organize my favorite music.

Intuitive UI Design

As a user, I want an intuitive and responsive UI so that I can navigate the app easily and enjoyably.

Security Enhancements

As a developer, I want to implement advanced security measures to protect user data and prevent unauthorized access.

Search Functionality

As a user, I want to search for songs, artists, and albums so that I can find my favorite music easily.

Music Library

As a user, I want to view a library of songs and albums so that I can browse through the available music.

  • There should be pagination on the graphql endpoint
  • infinite scroll should work
  • songs should be correctly formatted
  • there should be a playwright test
  • There should be album art for each song

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.