Skip to content

Instantly share code, notes, and snippets.

@mikaelmello
Last active June 22, 2018 21:40
Show Gist options
  • Save mikaelmello/c41a14a8403726f361c4450904432bab to your computer and use it in GitHub Desktop.
Save mikaelmello/c41a14a8403726f361c4450904432bab to your computer and use it in GitHub Desktop.
Personal roadmap for Rocket.Chat project. First In, First Done.

Difficulty goes from 1 (easy) to 4 (very hard), something like easy, medium, hard, very hard


Month 1

Rocket.Chat Server

  • 1 - General UI of a settings panel, examples to use: integrations, internal-hubot and bot-helpers
  • 2 - Create bot-manager-ui package with an initial skeleton
  • 1 - Check how the server log is shown in the client
  • 2 - Accounts workflow, model of users, how roles work
  • 2 - How do the caches work
  • 3 - How to keep track of user connections

5 - Rocket.Chat SDKs

  • 2 - Read the JS SDK code thoroughly and know of upcoming changes and a general overview of the other SDKs
  • 2 - Discuss with Arthur what changes he plans to make and how they will work (or be adapted) with my project
  • 1 - How will the server deliberately send messages to the clients using the SDK

7 - Storage of data

  • 2 - Understand Mongo better
  • 2 - Understand the process of migrations in RC
  • 3 - Decide how~ to store each kind of static data in the User model.

Helpers and methods to gather data

7 - Static data

  • 2 - Create a new bot-manager package from scratch that will contain the methods and helpers
  • 3 - Add login method specific to bots on both RC and all the SDKs codebases
  • 2 - Expand the method above to receive the following data about the client
    • Framework name and version
    • Bot alias (not the username, alias for config/debug purposes), to be discussed and probably optional
    • IP
    • [to add]

Month 2 and beyond

7 - Dynamic data

UI

9 - Viewing data

  • 2 - Decide which data will be displayed on a summary of each bot listed
  • 3 - List all the bots and their info, online first
  • 4 - Do the UI exhibiting all the collected data.

7 - Management options

  • 3 - Button to create a new bot user, showing then a form to fill only the required fields for a bot user to be created (no need for e-mails for example), then link to some common bot deployment methods
  • 4 - Buttons to resume/pause a bot. This can be framework agnostic, ignoring subscriptions directly in the SDK.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment