Skip to content

A next-generation open-source, free and fully cross-platform twitter client for the desktop!

License

Notifications You must be signed in to change notification settings

cmpt376edits/Lyrebird

Repository files navigation

Promo logo

Last master branch's (version 1.0.4) statistics :

Build Status Sonar bugs Lines of code Known Vulnerabilities

Quality gate status

Reasoning :

There are currently no effective Twitter clients on Windows and Linux. The goal of Lyrebird is to fix this, support macOS, and remain fully open-source.

Hopefully this works out.

How to get it

Build it yourself

Requirements:

  • A Java 10+ development kit with JavaFX components included (i.e. an Oracle JDK or an OpenJDK+OpenJFX combo)
  • Apache Maven (works at least with version 3.5.2)
  • For native images you need either InnoSetup tools on Windows or dpkg-deb/rpmutils on Linux depending on what system you want to target. You can only build native images for the current system type.

Any of the following (execute command in this README's directory):

  • Execute only (no packaging): cd lyrebird && mvn clean spring-boot:run
  • For a native image: cd lyrebird && mvn clean jfx:native -DskipTests
  • For a portable JAR file mvn clean package -DskipTests

What does it look like?

Screenshot of current version

Current state of development:

  • Log in

  • Tweets-based systems

    • Base systems :
      • Timeline
      • Mentions
      • Direct messages
    • Display features :
      • Basic textual display
      • Display username, @screenname and user profile picture
      • Display for chosen list
      • Text highlighting
        • Mentions
          • Color
          • Clickable
        • Hashtags
          • Color
          • Clickable
        • URLs
          • Color
          • Clickable
      • Media embedding
        • Officially supported
          • Twitter image embedding
          • Twitter video embedding
          • Twitter gif images embedding
        • Easy embedding
          • Direct image embedding
          • Direct video embedding
        • Why is it not easy to do ?
          • Youtube video embedding
    • Data loading features :
      • Seeking older tweets by-demand (scroll or button)
      • Seek newer tweets all the time using streaming API
  • Tweeting

    • Support text
    • Support attachments
    • Support geolocation
  • Interraction with tweet

    • Reply
    • Quote
    • Like (formerly favourite)
    • Retweet
  • Searches

Can I contribute?

Please do!

It should be fairly easy to understand the general idea of the back-end model for any seasoned Java developer with some Spring Framework experience.

For the UI/JavaFX model a lot of the work is delegated to a JavaFX framework called EasyFXML which you can read about here.

About

A next-generation open-source, free and fully cross-platform twitter client for the desktop!

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •