Skip to content

diogo-alves/pet-projects-api

Repository files navigation

Pet Projects API

License tests codecov

An API to aggregate personal projects.

Features

  • CRUD operations
  • Authentication with JWT
  • Layered Architecture
  • Custom exceptions and handlers
  • Database migrations with Alembic
  • Management commands with Typer
  • Dockenized app running PostgreSQL and pgAdmin
  • Tests with Pytest
  • Continuous Integration with Github Actions
  • Continuous Deployment at Heroku

Live Preview

See the live preview deployed at Heroku. pet-projects-api

Getting Started

Prerequisites

Setup

  1. Clone this repository:
git clone git@github.com:diogo-alves/pet-projects-api.git
  1. Go to the project directory:
cd pet-projects-api
  1. Install the project dependencies:
make install
  1. Create an .env¹ file based on .env.example . To generate the SECRET_KEY run:
make secret-key

¹ NOTE: By running the app locally, you can set DATABASE_URL to use SQLite without having to install a database system.

Running

Locally

make local

With Docker

make docker

Tests

make tests

View in Browser

Management Commands

To see all commands type:

make commands

API Documentation

License

This project is under the terms of the MIT license.