Pynavt is a cli tool to create clean architecture app for you including Fastapi, bcrypt and jwt.

Overview

Pynavt

  _____                         _   
 |  __ \                       | |  
 | |__) |   _ _ __   __ ___   _| |_ 
 |  ___/ | | | '_ \ / _` \ \ / / __|
 | |   | |_| | | | | (_| |\ V /| |_ 
 |_|    \__, |_| |_|\__,_| \_/  \__|
         __/ |                      
        |___/                       

Create project with Clean Architecture folder structure


Pynavt is a cli tool to create clean architecture app for you including Fastapi, bcrypt and jwt.

  • Creates Clean Architecture project for you

Features

Installation

Pynavt requires Python 3.6 to run.

Install the dependencies.

pip install pynavt

How to use

In your terminal type to see all avaible commands:

pynavt --help

To create a new Fastapi with clean architecture project(This includes a crud example with the name of Tasks):

pynavt --new yourProjectName

To create a new module with crud:

pynavt --module yourModuleName

To run the project:

uvicorn app:app --relaod

Database service

To create a new db service client with Mysql:

Mysql - to learn more visit (https://www.w3schools.com/python/python_mysql_getstarted.asp)

pynavt --client mysql

This will generate a database connection in infraestructure/databases/client.py

to use import the service in your repository.

Folder Structure:


|-- controller
|        |      
|        |-tasks --> This is and example folder(Create your own folder)
|            |       
|            |-tasks_controller.py --> This is and example controller file(Create your own controllers)
|            
|-- domain
|      |
|      |-useCase
|            |
|            |-tasks --> This is and example folder(Create your own folder)
|                | 
|                |-task_useCase.py --> This is and example useCase file(Create your own useCases)
|
|-- infraestructure
|           |
|           |-databases
|           |      |
|           |      |-client.py
|           |
|           |-entities
|           |      |
|           |      |-tasks --> This is and example folder(Create your own folder)
|           |          |
|           |          |-tasks_entity.py --> This is and example entity file(Create your own entity)
|           |
|           |-respository
|                  |
|                  |-tasks --> This is and example folder(Create your own folder)
|                      | 
|                      |-tasks_repository.py --> This is and example repository file(Create your own repositories)
|                       
|-- utils
        |
        |-errors
        |    |
        |    |-errros.py
        |
        |-services
                |
                |-jwt
                |   |
                |   |-jwt.py
                |
                |-bcrypt
                    |
                    |-bcrypt.py

License

MIT

Pynavt is MIT licensed."# Pynavt" "# pynavt" "# pynavt"

Owner
Alejandro Castillo
I love open source and free software that helps to acomplish all things in mind.
Alejandro Castillo
pypinfo is a simple CLI to access PyPI download statistics via Google's BigQuery.

pypinfo: View PyPI download statistics with ease. pypinfo is a simple CLI to access PyPI download statistics via Google's BigQuery. Installation pypin

Ofek Lev 351 Dec 26, 2022
texel - Command line interface for reading spreadsheets inside terminal

texel - Command line interface for reading spreadsheets inside terminal. Sometimes, you have to deal with spreadsheets. Those are sad times. Fortunate

128 Dec 19, 2022
PyArmor is a command line tool used to obfuscate python scripts

PyArmor is a command line tool used to obfuscate python scripts, bind obfuscated scripts to fixed machine or expire obfuscated scripts.

Dashingsoft 2k Jan 07, 2023
CLI helper to install Github releases on your system.

gh-release-install is a CLI helper to install Github releases on your system. It can be used for pretty much anything, to install a formatter in your CI, deploy some binary using an orcherstration to

Jonas L. 28 Nov 06, 2022
A webmining CLI tool & library for python.

minet is a webmining command line tool & library for python (= 3.6) that can be used to collect and extract data from a large variety of web sources

médialab Sciences Po 165 Dec 17, 2022
Helping you manage your data science projects sanely.

PyDS CLI Helping you manage your data science projects sanely. Requirements Anaconda/Miniconda/Miniforge/Mambaforge (Mambaforge recommended!) git on y

Eric Ma 16 Apr 25, 2022
Custom function scheduler TUI (text-based user interface) in the console

Custom function scheduler TUI (text-based user interface) in the console

Luke 1 Oct 26, 2022
A project designed to make taking notes easier than ever - by doing it all on command line

A project designed to make taking notes easier than ever - by doing it all on command line! Yes, all of your files are easily accessible through one command interface, and can be written to at any ti

1 Dec 10, 2021
nbcommands bring the goodness of Unix commands to Jupyter notebooks.

nbcommands nbcommands bring the goodness of Unix commands to Jupyter notebooks. Installation You can simply use pip to install nbcommands: $ pip insta

Vinayak Mehta 181 Dec 23, 2022
A python CLI app that converts a mp4 file into a gif with ASCII effect added.

Video2ASCIIgif This CLI app takes in a mp4 format video, converts it to a gif with ASCII effect applied. This also includes full control over: backgro

Sriram R 6 Dec 31, 2021
Command line interface for unasync

CLI for unasync Command line interface for unasync Getting started Install Run the following command to install the package with pip: pip install unas

Leynier Gutiérrez González 3 Apr 04, 2022
An anime command-line system information tool written in python.

Animefetch - v0.0.3 An anime command-line system information tool written in python. Description Animefetch is an anime command-line system informatio

Thadeuks 6 Jun 17, 2022
Rich is a Python library for rich text and beautiful formatting in the terminal.

The Rich API makes it easy to add color and style to terminal output. Rich can also render pretty tables, progress bars, markdown, syntax highlighted source code, tracebacks, and more — out of the bo

Will McGugan 41.4k Jan 03, 2023
A simple web-based SSH client.

Kommander A simple web-based SSH client. It supports: entering SSH login details (including private key and custom ports) and connecting user authenti

KingWaffleIII 2 Jan 01, 2022
Customisable pharmacokinetic model accessible via bash CLI allowing for variable dose calculations as well as intravenous and subcutaneous administration calculations

Pharmacokinetic Modelling Group Project A PharmacoKinetic (PK) modelling function for analysis of injected solute dynamics over time, developed by Gro

1 Oct 24, 2021
A CLI/Shell supporting OpenRobot API and more!

A CLI/Shell supporting JeyyAPI, OpenRobot API and RePI API.

OpenRobot Packages 1 Jan 06, 2022
Notion-cli-list-manager - A simple command-line tool for managing Notion databases

A simple command-line tool for managing Notion List databases. ✨

Giacomo Salici 75 Dec 04, 2022
CLI tool to fix linked references for dates.

Fix Logseq dates This is a CLI tool to fix the date references following a change in date format since the current version (0.4.4) of Logseq does not

Isaac Dadzie 5 May 18, 2022
Write Django management command using the click CLI library

Django Click Project information: Automated code metrics: django-click is a library to easily write Django management commands using the click command

Jonathan Stoppani 215 Dec 19, 2022
Command-line search tool for GitHub

cligh is a command-line search tool for GitHub.

1 Oct 02, 2022