Giter VIP home page Giter VIP logo

nyx's Introduction

Nyx

This is a terminal client for Discord, written in Node.js.

NOTE: I have chosen to archive this project as I have no intent in continuing development. The libraries available for TUI's in Node are incredibly limited in regard to functionality, but I may consider rewriting this in another language soon. Anyone is welcome to use this code/repo for whatever they may need it for, i.e making a terminal client for Discord.

Commands

These commands can be ran using the set prefix in config.ini. By default, this is set to t!

  • exit - exits the client.
  • help - prints the help message.
  • clear - clears the message box

Config

The file config.ini contains some of the crucial information for this client. These are the keys and their values to the client:

  • token: (string) your token for Discord, used to log in as you
  • unicode: (boolean) whether or not to attempt rendering unicode symbols in the client
  • prefix: (string) the prefix for commands

Screenshots

Login screen Home screen Example of what actual text channels are rendered like

To-do

- [ ] Rewrite into classes (possibly ts as well) ~~- [ ] Add ability to navigate previously sent messages in the chat - [ ] Add popup on messages when button is pressed (to edit, delete, pin etc, this will require a rewrite of how I log messages) - [ ] Add user role color, unsure if that'll be able to be done well due to different terminals supporting different colors - [ ] Add centered timestamps so that old messages aren't clumped together when a channel is inactive. - [ ] Cache chats to a json file to allow for easy access of loading servers. This will be invalidated on each launch to prevent issues - i.e whenever a server is loaded, its cached in a state object - whenever there are new channels made / channels are rearranged, i can just update the state object - similar concept could be applied to messages, they're queried and then its cached in a state object, then new messages are added to that - means i don't have to query things multiple times, very unoptimized - [ ] Add keybind lines to config file, which would allow for easy access to change them - [ ] Add guild search (could be a keybind, would make a popup) - [ ] Add reply functionality & add replies to log in the messages - [ ] Make pins viewable - [ ] Get notifications to work - [ ] Log channels into categories, possibly even separate servers from channels to another box - [ ] Add message logging (if something gets deleted or edited, change the content visually) - [ ] Add scrollable chat

nyx's People

Contributors

aprilsbloom avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

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.