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.

```bash
$ ./pytwis_clt.py
```

(2) Connect to a remote Redis server with IP = xxx.xxx.xxx.xxx at port yyyy with password zzzzzz.

```bash
$ ./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

(1) Register a new user xxxxxx with password yyyyyy.

```bash
> register xxxxxx yyyyyy
```

(2) Log into a user xxxxxxx with password yyyyyy.

```bash
> login xxxxxx yyyyyy
```

(3) Log out.

```bash
> logout
```

(4) Change the password. Assume that the old password is yyyyyy and the new password is zzzzzz.

```bash
> changepassword yyyyyy zzzzzz zzzzzz
```

(5) Follow a user xxxxxx.

```bash
> follow xxxxxx
```

(6) Unfollow a user.

```bash
> unfollow xxxxxx
```

(7) Get the follower list of a user.

```bash
> followers
```

(8) Get the following list of a user.

```bash
> followings
```

(9) Post a tweet

```bash
> post tweet
```

(10) Get the general/user timeline.

```bash
> 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.

```bash
> exit
```

or

```bash
> 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.

Files for pytwis, version 0.1.1
Filename, size File type Python version Upload date Hashes
Filename, size pytwis-0.1.1-py3-none-any.whl (15.1 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size pytwis-0.1.1.tar.gz (16.1 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page