mirror of https://github.com/01-edu/public.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
alseiitov
574eb356a1
|
3 years ago | |
---|---|---|
.. | ||
README.md | 3 years ago | |
audit.md | 4 years ago |
README.md
typing in progress
Objectives
You must follow the same principles as the first subject.
For this project you must create:
- A Typing in progress engine
Instructions
A typing in progress engine is a way that people can see that a user is typing in real time. Allowing you to see the other user is replying or sending a message.
The typing in progress engine must work in real time! This meaning that if you start typing to a certain user this user will be able to see that you are typing.
This engine must have/display:
- A websocket to stablish the connection with both users
- An animation so that the user can see that you are typing, this animation should be smooth (no interruptions/janks) and just enough to draw attention for the user to see (user friendly)
- The name of the user that is typing
- Whenever the user stops typing or finishes the conversation, it should not display the animation
To help with the display of the typing in progress you can take a look on the js event list, mainly the Keyboard events and the Focus events
Allowed Packages
- All standard go packages are allowed.
- Gorilla websocket
- github.com/mattn/go-sqlite3
- golang.org/x/crypto/bcrypt
- github.com/satori/go.uuid
This project will help you learn about:
- Go routines
- Go channels
- WebSockets:
- Go Websockets
- JS Websockets
- Events