Manage FastAPI August-September 2020 Roadmap
ycd opened this issue · 12 comments
🔨 Roadmap August-September 2020 🔨
Goals
- Adding more templates for databases and object relatioınal mappers.
- Instead of creating database with async sql, now the database will be up to user
Example:
manage-fastapi startproject myproject
The command we ran above will ask the user something like this to select a database.
Select a database:
[0] Postgresql, sqlite3, mysql
[1] Tortoise ORM
[2] Peewee
[3] MongoDB, Couchbase
Each selection will have unique database template.
New Features
runserver
Also thinking about showmodels
to show all models also this command will came with option for request method like
showmodels --get
showmodels --post
With (#18 ) 0.1.5, added showmodels, and runserver, i'm looking for new feature ideas:
What i 'll be working on:
- Creating an admin-panel like Django-admin
bro add dependencies install to the project with pip when install manage-fastapi
also when creating a app it dosent work when i hit the endpoint
im working on windows if you wont to know
aiofiles==0.5.0
aiosqlite==0.15.0
aniso8601==7.0.0
async-exit-stack==1.0.1
async-generator==1.10
certifi==2020.4.5.1
chardet==3.0.4
click==7.1.2
databases==0.3.2
dnspython==1.16.0
email-validator==1.1.1
fastapi==0.57.0
graphene==2.1.8
graphql-core==2.3.2
graphql-relay==2.0.1
h11==0.9.0
idna==2.9
itsdangerous==1.1.0
Jinja2==2.11.2
manage-fastapi==0.1.51
MarkupSafe==1.1.1
motor==2.2.0
orjson==3.1.0
promise==2.3
pydantic==1.5.1
pymongo==3.11.0
python-multipart==0.0.5
PyYAML==5.3.1
requests==2.23.0
Rx==1.6.1
six==1.15.0
SQLAlchemy==1.3.19
starlette==0.13.4
typer==0.3.2
typing-extensions==3.7.4.3
ujson==3.0.0
urllib3==1.25.9
uvicorn==0.11.5
websockets==8.1
wincertstore==0.2
add a requierments.txt flie to the project
bro fix the rest of the files then when can integrate fastapi-admin to the proejct fastapi-admin demo
fastapi-admin install
Can you reformat your question?, it's hard to understand right now, wdym by fix the rest of the files then when can integrate fastapi-admin and this fastapi-admin install
Yes ,first thank you for your reply.the main issue is that the cli has some limetations when installing it ,you don't assume the developer or the user of the package have all the dependencies including fastapi it self ,and (sqlalchmy,motor,etc) so this has to be improved ,second if you working on Mac or Linux your to consider windows users in the module imports there is error including relative imports in windows when it comes to python ,also I wasn't managed to hit the endpoint of a created app ,it shows me that the route doesn't exist for example ifollwed the documentation of the v1 app and it didn't work and I had to fix the import issue and still didn't work for me again I'm working on windows, and last it has to check the targeted OS so that the script builds a bolirplate capebale on working on every operating system I will work on it just hit me on my social media accounts so that we can discuss more👌
Then we can see how we can implement the fastapi-admin to the current package
> also when creating a app it dosent work when i hit the endpoint
Did you imported that endpoint from your main.py
, i documented that part in your api.py , first you need the import that like
from v1.api import api_router as v1_router
Then you need to incldue it
app.include_router(v1_router, prefix="v1")
> you don't assume the developer or the user of the package have all the dependencies including fastapi it self
Are you talking about the, dependencies, that exists before or when creating a new project, you want to dependencies come with Manage FastAPI
In first versions it was coming directly with the package, for an example when you run
pip install manage-fastapi
All the dependencies like FastAPI, pydantic ,uvicorn was coming as default, but i changed it because every user has different dependencies, some uses sqlalchemy some uses psycopg2 directly, some uses Tortoise, now it creates a requirements.txt when you start a project.
> Then we can see how we can implement the fastapi-admin to the current package
I don't think it's necessary by default since it's easy to implement, afaik from the documentation of fastapi-admin, and it's only for Tortoise ORM, nothing more.
> it didn't work and I had to fix the import issue and still didn't work for me again
I'm aware of that see:This video it's a bug in Python's importing system for now, i recorded this video for bug report in Encode/Uvicorn, "try setting the path to its parent directory. I believe this is less of a Uvicorn problem and more of a Python path issue",
> I'm working on windows, and last it has to check the targeted OS so that the script builds a bolirplate capebale on working on every operating system
It is, i used Pathlib for Path operations which is known as OS independent library
> I will work on it just hit me on my social media accounts so that we can discuss more
I'm not using social media but you can hit me on Gitter