Foxwall is a basic social media API service written with python/django. It's completely open source. Feel free to fork. Also pull requests are welcome.
I used drf-spectacular for Open API 3.0
Currently python and any virtual environment package must be in your system. I'm saying currently because this project will have docker option.
- Clone this repository.
- Create virtual environment and install packages from requirements.txt file.
for example: for creating virtual env
pipenv shell
for installing the dependencies within pipenv virtual envpipenv insall -r requirements.txt
- Execute
python manage.py migrate
for migrating models to database. - Execute
python manage.py runserver
. And that's it! Now you are able to use Foxwall API. For that just go to localhost:8000 - If you want to execute the tests, run
pytest
I Used pytest for unit and e2e testing.
Execute pytest
for testing the app.
For the test coverage please execute pytest --cov
or pytest --cov --cov-report=html
if you want html report.
Before all, I created a database diagram with dbdiagram.io for how should database look like. That helped me a lot on code process. I suggest to create diagram whenever you start to any project. Not only db diagram, it can be logic diagram, code process diagram, roadmap, etc...
Obviously, there is things to do.
- Docker configurations.
- Leave a post as comment to the post.
- Currently there are fields that i did not use such as last_edited field on post model. Should make meaningful these fields.
- Fix bio issue after registiration
- Password reset request