An attempt to create a twitter clone website (for learning purpose)
This is an experimental project that I choose to learn more about frontend and backend development and how they interact.
Django Rest Framework | Vue JS | Docker |
---|---|---|
- Authentication
- User Profile (tweets, media, replies, liked tweets)
- Create Tweet
- Delete Tweet
- Like, Unlike Tweet
- Reply Tweet
$ git clone https://github.com/jirenmaa/twitter-clone.git
change and configure .django.example
to .django
and .postgres.example
to .postgres
in .envs
folder, then running the docker compose
$ docker-compose build && docker-compose up
The site will be hosted on http://localhost:8080
NOTE: if email settings in .django
env is not configure, you will recive email for user activation (register) from console when you running docker-compose up
.
Assume you have 'python', 'node', 'docker' (optional), and'redis' (for email queue) installed to run the project.
$ git clone https://github.com/jirenmaa/twitter-clone.git
installing django & vue depedencies
$ pip install -r requirements.txt
$ cd website && yarn install
After installing both dependencies, you must configure the '.env' file in order to run the project. After you've set up '.env,' you can now start redis and celery.
NOTE: You must leave the redis server running by not close the terminal.
$ redis-server
$ celery -A celeryapp.tasks worker -l info
Before you can run Django, you must first create a database in Postgresql. Or you can do this by running the following command:
$ createdb -U postgres twitter-clone
running the rest of the project
$ yarn website
$ python3 manage.py runserver
Distributed under the MIT License. See LICENSE for more information.
- Ahmad alwi - jirenmaa