All Projects → buckyroberts → Vataxia

buckyroberts / Vataxia

Open source social network built with Django and Django REST framework

Programming Languages

python
139335 projects - #7 most used programming language

Overview

Vataxia is an open source social network built with Django and Django REST framework. This project is the backend REST API only. The frontend is written in React and can be found here:

Vataxia Frontend

Project Setup

Install required packages:

pip3 install -r requirements/local.txt

Initialize database:

python3 manage.py makemigrations
python3 manage.py migrate

Fixtures

To load in sample data for all tables at once:

bash scripts/load_sample_data.sh

For Windows users:

python manage.py loaddata v1\accounts\fixtures\user.json

This will create an initial superuser account with the following credentials:

[email protected]
pass1234

Authentication

To login, send a POST request to /login with the data:

  • email
  • password

On success, user information and API token will be returned:

{
  "id": 1,
  "email": "[email protected]",
  "first_name": "Bucky",
  "last_name": "Roberts",
  "profile": {
    "id": 2,
    "image": "/media/bucky_256.png",
    "user": 1
  },
  "role": "administrator",
  "token": "cb810da7d03b85335ea18babf3536fbf2a31ccdf"
}

All subsequent API requests must include this token in the HTTP header for user identification. Header key will be Authorization with value of 'Token' followed by a single space and then token string:

Authorization: Token 753da61b4c39bd195782710c82fe3c3b1e7f7428

API Documentation

To view API documentation, run development server and visit http://127.0.0.1:8000/docs/

Links

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].