zentra_sdk 0.1.0
An open-source Python SDK for building FastAPI and Next.js apps faster.
License: MIT
Requires Python: <4.0,>=3.12

![Logo](/docs/assets/imgs/zentra-logo.jpg)

[![codecov](https://codecov.io/github/Achronus/zentra/graph/badge.svg?token=Y2G1RM4WFO)](https://codecov.io/github/Achronus/zentra)
![Python Version](https://img.shields.io/pypi/pyversions/zentra_sdk)
![License](https://img.shields.io/github/license/Achronus/zentra)
![Issues](https://img.shields.io/github/issues/Achronus/zentra)
![Last Commit](https://img.shields.io/github/last-commit/Achronus/zentra)

Zentra, your all in one Python SDK for building [FastAPI](https://fastapi.tiangolo.com/) and [Next.js](https://nextjs.org/) applications.

# Zentra

Every new software project brings a familiar set of repetitive tasks: configuring API routes, setting up authentication, and crafting frontend components from scratch. These repetitive steps not only drain your time but also divert your focus from building the unique features that set your application apart.

What if you have 10 projects to build, or 100, or 1000? Imagine having to set up everything from scratch every single time. The constant cycle of boilerplate coding can be frustrating and counterproductive, leaving you bogged down in setup rather than innovating.

Introducing __Zentra__ — an open-source, free to use, SDK for rapidly creating [FastAPI](https://fastapi.tiangolo.com/) and [Next.js](https://nextjs.org/) applications.

Packed with an intuitive suite of CLI commands, documentation, and development kit, this tool simplifies your development process, allowing you to effortlessly build applications in weeks, not months.

## What's Included?

Zentra is divided into two packages. These include:

- [API](https://github.com/Achronus/zentra-api) - a CLI tool for building [FastAPI](https://fastapi.tiangolo.com/) applications
- [Models](https://github.com/Achronus/zentra-models) - a Python based component library, turning [Pydantic](https://docs.pydantic.dev/latest/) models into React components

Each package works independently so you can maximise their benefits with ease.

Perhaps you only want to build a FastAPI project, or simply want to build React components using Python - you choose what is right for you.

## Getting Started 

1. Firstly, install the [Docker Engine](https://docs.docker.com/engine/install/) to build the frontend files. 

2. Next, install the `zentra_sdk` package with [Poetry](https://python-poetry.org/) through `PIP`:

```cmd
pip install zentra_sdk poetry
```

3. Run the `init` command to bootstrap a new project with a [FastAPI](https://fastapi.tiangolo.com/) backend and [Next.js](https://nextjs.org/) frontend in seconds!

```cmd
zentra init
```

4. Start programming! Read more about `Zentra` in our [documentation](#). _🔜 Coming soon! 🔜_


## Active Development

Zentra is a tool that is continuously being developed. There's a lot still to do to make it a fully functioning SDK, such as a working CLI, detailed API documentation, and components for various libraries.

Our goal is to provide a quality open-source product that works 'out-of-the-box' that everyone can experiment with, and then gradually fix unexpected bugs and introduce more component libraries on the road to a `v1.0.0` release.

## Support

We'll need help from developers like YOU :punch: to make this tool a delight to use, and a product worthy of the `Python`, `NextJS`, `React` and `Software/Web Development` community.

Feedback and criticism will always be welcomed, and is encouraged to help make this tool worthwhile.