Git Product home page Git Product logo

chordly's Introduction

Screenshot 2022-10-23 at 14 38 29

GitHub license GitHub release (latest by date) GitHub commit activity

Chordly is a free, open-source, online chord sheet creator.

All features

  • ๐ŸŽถ Transpose all chords at once
  • โœ๏ธ Edit chord sheet inline
  • ๐ŸŽค Arrange chord sheets into set lists
  • ๐Ÿ“„ Export chord sheets PDF
  • ๐Ÿ“– Store chord sheets in searchable/sortable library

Contributing

Have a look at the contributing documentation if you are interested in writing some code for Chordly. There's instructions in there on how to setup a development environment.

  • If you find a bug or have an idea for features, raise an issue.
  • For info on further developments which are currently planned, see TODO.md.

License

Chordly by Stuart Frost - Released under the GNU General Public License v3.0

chordly's People

Contributors

dependabot[bot] avatar stufro avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

chordly's Issues

Documentation for building, configuring and deploying/running

Hi I really like the application but I cannot get it running by myself.

Could you please provide documentation about how to correctly build, configure and deploy chordly?

I was able to build a docker image from the Dockerfile (with docker build) and run it (with docker run) but I don't find the ports and where to configure them? How do I start up the application? What do I need to setup first? How to access the web frontend?

In the next step I want to deploy it on a Raspberry Pi with linux/arm64 so I might need to setup multiarch docker building โ€“ but that's too far away at the moment and I would really appreciate help.

Barline characters not supported

If you have a line of chords separated by barlines e.g.

|: G    Em    |   D        |  G      Em  :|

The parser will not recognise it as a line of chords.

(thanks @roovo for reporting)

Improve loading of media on home page

On the home page there are two bits of media: the GIF showing chord sheet features and the screenshot of PDF export. The GIF doesn't work on iOS using Safari so it also has a poster attribute which displays a still image in the case the GIF doesn't load. This means there is quite a lot of bytes over the network. Potential idea is to load the media in a turbo frame so that the first contentful paint happens faster and the media is fetched asynchronously.

Screenshot 2023-03-04 at 09 58 24

Enharmonic chords cause exception to be raised

If you enter an enharmonic chord (e.g. E#) into a chord sheet and attempt to transpose it, the following exception is raised:

NoMethodError (undefined method `-' for nil:NilClass

        (index2 - index1) + ((octave2.to_i - octave1.to_i) * NOTES.size)
                ^):
  
app/models/chord.rb:30:in `new'
app/models/chord.rb:30:in `transpose_note'
app/models/chord.rb:21:in `transpose'
app/models/sheet_line.rb:16:in `block in transpose'
app/models/sheet_line.rb:14:in `each'
app/models/sheet_line.rb:14:in `transpose'
app/models/chord_sheet.rb:12:in `block in transpose'
app/models/chord_sheet.rb:8:in `map!'
app/models/chord_sheet.rb:8:in `transpose'
app/controllers/chord_sheets_controller.rb:36:in `transpose'

The root of this error appears to be un the music gem here: https://github.com/cheerfulstoic/music/blob/master/lib/music/note.rb#L279

Upgrade to Turbo 8

  • Look at page morphing and other new features
  • Ensure existing functionality is still correct

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.