Kittygram is a web application for sharing cat photos and achievements. It allows users to create profiles for their cats, upload photos, and earn achievements. The project is built using Django and Django REST framework for the backend, as well as React for the frontend, all running in Docker containers.
-
Install Docker on your computer if you haven't already.
-
Clone the Kittygram repository:
git clone https://github.com/PIEJIN/kittygram.git cd kittygram
-
Create a
.env
file in the project's root directory and specify the necessary environment variables such asSECRET_KEY
,DEBUG
, and PostgreSQL database credentials. Example.env
file:SECRET_KEY=your_secret_key DEBUG=True POSTGRES_USER=django_user POSTGRES_PASSWORD=django_password POSTGRES_DB=django_db
-
Start Docker Compose to build and run all containers:
docker-compose up -d
This will launch containers for the backend, frontend, PostgreSQL database, and web gateway.
-
After a successful launch, the application will be accessible at http://localhost:9000/.
-
To stop the application, run the following command:
docker-compose down
Examples of API requests to the backend:
-
Get a list of all cats:
GET http://localhost:9000/api/cats/
-
Create a new cat:
POST http://localhost:9000/api/cats/
-
Upload a cat's photo:
POST http://localhost:9000/api/cats/<cat_id>/upload/
-
Get a list of achievements:
GET http://localhost:9000/api/achievements/
- Django
- Django REST framework
- React
- Docker
- PostgreSQL
This project is created and maintained by PIEJIN (Radislav Korolev).