Skip to main content

A twitter-clone backend using Python and Redis

Project description

A twitter-clone backend using Python and Redis.

Note that this package requires Python 3.6 and later since it depends on Python 3.6 built-in module secrets.

To get the help information,

$ ./pytwis_clt.py -h
$ ./pytwis_clt.py --help

1. Connect to the twitter clone.

(1) Connect to the local Redis server at the default port 6379 with no password.
$ ./pytwis_clt.py
(2) Connect to a remote Redis server with IP = xxx.xxx.xxx.xxx at port yyyy with password zzzzzz.
$ ./pytwis_clt.py -h xxx.xxx.xxx.xxx -p yyyy -a zzzzzz

2. Online commands after successfully connecting to the twitter clone.

Note that the following commands have to be executed after a successful log-in.

  • logout

  • changepassword

  • follow

  • unfollow

  • followers

  • followings

  • post

Below are the sample usage of all the available online commands.

(1) Register a new user xxxxxx with password yyyyyy.
> register xxxxxx yyyyyy
(2) Log into a user xxxxxxx with password yyyyyy.
> login xxxxxx yyyyyy
(3) Log out.
> logout
(4) Change the password. Assume that the old password is yyyyyy and the new password is zzzzzz.
> changepassword yyyyyy zzzzzz zzzzzz
(5) Follow a user xxxxxx.
> follow xxxxxx
(6) Unfollow a user.
> unfollow xxxxxx
(7) Get the follower list of a user.
> followers
(8) Get the following list of a user.
> followings
(9) Post a tweet
> post tweet
(10) Get the general/user timeline.
> timeline [max-tweet-count]
It will return the user timeline if a user is logged in and will return the general timeline otherwise. Also, it will return all the tweets in the timeline if max-tweet-count is not specified.

(11) Exit the console program.
> exit
or
> quit

3. Unit test.

Since this unit test requires a running local Redis server, it is in fact a small integration test. To run the test,

$ python3 -m unittest -v

or

$ python3 pytwis_test.py

or

$ ./pytwis_test.py

4. README.rst

README.rst is generated from README.md via pandoc.

$ pandoc --from=markdown --to=rst --output=README.rst README.md

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pytwis-0.1.2.tar.gz (16.1 kB view hashes)

Uploaded Source

Built Distribution

pytwis-0.1.2-py3-none-any.whl (15.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page