fastapi / full-stack-fastapi-template

Full stack, modern web application template. Using FastAPI, React, SQLModel, PostgreSQL, Docker, GitHub Actions, automatic HTTPS and more.
MIT License
27.43k stars 4.9k forks source link

Is this project dead? #469

Open BSpendlove opened 2 years ago

BSpendlove commented 2 years ago

Is it dead? not in a valid state/doesn't work when you run the project

27Bslash6 commented 2 years ago

As this is linked directly from the FastAPI SQLAlchemy documentation, and labelled 'official', it would be great to see this project get some love.

ebarkhordar commented 2 years ago

Any news?

mbnoimi commented 2 years ago

+1

As this is linked directly from the FastAPI SQLAlchemy documentation, and labelled 'official', it would be great to see this project get some love.

+1

simonzen commented 2 years ago

Is it dead? not in a valid state/doesn't work when you run the project

Hope not, but pull requests still opent since 2020. This projects is great, but still having a lot of bugs. May be anybody has created another project as working version of this one.

Kfelts commented 2 years ago

Is it dead? not in a valid state/doesn't work when you run the project

Hope not, but pull requests still opent since 2020. This projects is great, but still having a lot of bugs. May be anybody has created another project as working version of this one.

I've been searching around for a forked project that has been updated more recently.

mbnoimi commented 2 years ago

I've been searching around for a forked project that has been updated more recently.

May you please share it here in case you find it?

rafsaf commented 2 years ago

Unfortunately yup, I suppose it's kinda dead and tiangolo is obviously a busy man now.

@mbnoimi There was the discussion about alternatives/templates based on this one in this issue https://github.com/tiangolo/full-stack-fastapi-postgresql/issues/422 some few months ago, one of them is mine by the way, but at least it is a start for one that is looking for favorite one.

There are probably much more by now, people are facing this very same issue for a long time.

Kfelts commented 2 years ago

I've been searching around for a forked project that has been updated more recently.

May you please share it here in case you find it?

Sure- but it's mostly me manually updating it for my personal project use and then Frankensteining together various projects with recent updates. I haven't found one that is a build-ready mirror of this yet.

andreweolson commented 2 years ago

Would love the location of a working build...

antonpirker commented 2 years ago

To everyone: It is an open source project. Everyone can just fix something and then submit a pull request of the fix. This way life gets better for everybody.

Bobspadger commented 2 years ago

I'd like to start using this for an internal project, but the fact it has gone un-loved for nearly 2 years worries me.

If it is not being updated here, is it worth those of us who would like to continue using it - forking it to another project and implementing the pull requests there? Many hands make light work etc?

Bobspadger commented 2 years ago

To everyone: It is an open source project. Everyone can just fix something and then submit a pull request of the fix. This way life gets better for everybody.

I fully agree with this, however, thats what has been happening and no pull requests have been merged :(

rlziii commented 2 years ago

For those stumbling upon this GitHub issue hoping to find something along the lines of "what do I need to make this project work in September 2022?" I was able to get this project running on a macOS 12.5.1 machine by doing the following:

Of course the standard your milage may vary notice applies and I'm far from an expert on FastAPI or Python web servers. But this is what worked for me so hopefully this will save someone a couple hours of work/debugging.

simonzen commented 2 years ago

For those stumbling upon this GitHub issue hoping to find something along the lines of "what do I need to make this project work in September 2022?" I was able to get this project running on a macOS 12.5.1 machine by doing the following:

  • Install Python

    • brew install python3

    • Add aliases to .zshrc

    • alias python='$(brew --prefix)/opt/python/libexec/bin/python'

    • alias pip='$(brew --prefix)/opt/python/libexec/bin/pip'

  • Install Docker

    • brew install --cask docker
    • Run Docker.app
    • Preferences > Use Docker Compose V2 (since I'm running an Apple Silicon Mac)
  • Create App

    • pip install cookiecutter
    • cookiecutter https://github.com/tiangolo/full-stack-fastapi-postgresql
    • Follow instructions here
  • Fix Install (👈 These are the important things if you've made it to this GitHub issue probably)

  • Run Docker

    • docker-compose up -d
  • Launch App 🎉

Of course the standard your milage may vary notice applies and I'm far from an expert on FastAPI or Python web servers. But this is what worked for me so hopefully this will save someone a couple hours of work/debugging.

thanks for advice! compose started successfully...but there are log in with first_superuser creds problems

rlziii commented 2 years ago

@simonzen I was able to login to http://localhost/login via the username and password provided with pgadmin_default_user/pgadmin_default_user_password during the cookiecutter setup. By default I believe these should match the username and password for first_superuser/first_superuser_password (unless they were changed). When logging into the app itself (via the REST API) you will need to use first_superuser/first_superuser_password though (or another created user).

simonzen commented 2 years ago

@simonzen I was able to login to http://localhost/login via the username and password provided with pgadmin_default_user/pgadmin_default_user_password during the cookiecutter setup. By default I believe these should match the username and password for first_superuser/first_superuser_password (unless they were changed). When logging into the app itself (via the REST API) you will need to use first_superuser/first_superuser_password though (or another created user).

Thanks for advice! I tried different login/passwords, but it didn't work. I think problem should be in flower or celery on my side (I added a lot of changes from prs from this project).

UPDATE: it was dumb problem - needed to remove old docker postgres volume

pyb4430 commented 2 years ago

If anyone is looking for an updated version of this project, I've got a working fork here that I intend to maintain. I've updated the frontend and backend dependencies as much as possible, mainly focused on getting this template working without rewriting too much. In my fork I've:

A couple notes based on the PR activity in this repo:

rlziii commented 2 years ago

Thanks for the work to put that together, @pyb4430! That seems like a promising fork. 🎉

BSpendlove commented 2 years ago

Yeah, proper cracking job @pyb4430 !

BSpendlove commented 2 years ago

One last thing I had to do to get your project running @pyb4430 , the backend keep crashing on me due to an error on this project, specifically:

backend_1       |   File "/app/app/models/item.py", line 17, in Item
backend_1       |     owner: User = relationship("User", back_populates="items")
backend_1       | NameError: name 'User' is not defined

within both the item.py and user.py models on the backend, noqa: F401 is attempting to provide us with autocompletion but breaks the whole backend, I had to change the following to get the backend running properly:

backend/app/app/models/item.py, line 17

owner: User = relationship("User", back_populates="items")
to
owner: relationship("User", back_populates="items")

and

backend/app/app/models/user.py, line 179

items: List[Item] = relationship("Item", back_populates="owner")
to
items = relationship("Item", back_populates="owner")

I can log in now and everything seems to work so far after changing those 2 files

Edit: Ignore this as I'm so stupid

pyb4430 commented 2 years ago

Ah yep, just pushed a fix for that that'll keep mypy happy

MendyLanda commented 2 years ago

For those stumbling upon this GitHub issue hoping to find something along the lines of "what do I need to make this project work in September 2022?" I was able to get this project running on a macOS 12.5.1 machine by doing the following:

  • Install Python

    • brew install python3

    • Add aliases to .zshrc

    • alias python='$(brew --prefix)/opt/python/libexec/bin/python'

    • alias pip='$(brew --prefix)/opt/python/libexec/bin/pip'

  • Install Docker

    • brew install --cask docker
    • Run Docker.app
    • Preferences > Use Docker Compose V2 (since I'm running an Apple Silicon Mac)
  • Create App

    • pip install cookiecutter
    • cookiecutter https://github.com/tiangolo/full-stack-fastapi-postgresql
    • Follow instructions here
  • Fix Install (👈 These are the important things if you've made it to this GitHub issue probably)

  • Run Docker

    • docker-compose up -d
  • Launch App 🎉

Of course the standard your milage may vary notice applies and I'm far from an expert on FastAPI or Python web servers. But this is what worked for me so hopefully this will save someone a couple hours of work/debugging.

Legend! Thank you

guidomperosino commented 2 years ago

Ah yep, just pushed a fix for that that'll keep mypy happy

thanks :)

tiangolo commented 2 years ago

Hello all! Nope, the project is not dead, in fact, I've been building stuff for it.

I created SQLModel precisely to use it in this project, to simplify a lot of the code here.

I also want to migrate Celery to ARQ, Vue to React with TypeScript and hooks, and the GitLab CI to GitHub Actions, and Docker Swarm to Kubernetes... Lots to do.

But first, I need to finish and polish things in SQLModel, that's what's kept me from doing more stuff here, and it's what will have the biggest impact too.

PhilippWu commented 2 years ago

Hello all! Nope, the project is not dead, in fact, I've been building stuff for it.

I created SQLModel precisely to use it in this project, to simplify a lot of the code here.

I also want to migrate Celery to ARQ, Vue to React with TypeScript and hooks, and the GitLab CI to GitHub Actions, and Docker Swarm to Kubernetes... Lots to do.

But first, I need to finish and polish things in SQLModel, that's what's kept me from doing more stuff here, and it's what will have the biggest impact too.

Omg - Thats sounds sooooo great. Thank you soooo much!

MadsFrost commented 1 year ago

Hello all! Nope, the project is not dead, in fact, I've been building stuff for it.

I created SQLModel precisely to use it in this project, to simplify a lot of the code here.

I also want to migrate Celery to ARQ, Vue to React with TypeScript and hooks, and the GitLab CI to GitHub Actions, and Docker Swarm to Kubernetes... Lots to do.

But first, I need to finish and polish things in SQLModel, that's what's kept me from doing more stuff here, and it's what will have the biggest impact too.

Amazing! Thanks for all the open source you have done!

link89 commented 1 year ago

Hello all! Nope, the project is not dead, in fact, I've been building stuff for it.

I created SQLModel precisely to use it in this project, to simplify a lot of the code here.

I also want to migrate Celery to ARQ, Vue to React with TypeScript and hooks, and the GitLab CI to GitHub Actions, and Docker Swarm to Kubernetes... Lots to do.

But first, I need to finish and polish things in SQLModel, that's what's kept me from doing more stuff here, and it's what will have the biggest impact too.

Sounds really awesome! If it could also have next-auth for authentication and file storage (local storage, s3, etc) support, then it will become a full functional BaaS solution (and a good alternative for Supabase).

Gr3Kidd3r commented 1 year ago

Hello all! Nope, the project is not dead, in fact, I've been building stuff for it.

I created SQLModel precisely to use it in this project, to simplify a lot of the code here.

I also want to migrate Celery to ARQ, Vue to React with TypeScript and hooks, and the GitLab CI to GitHub Actions, and Docker Swarm to Kubernetes... Lots to do.

But first, I need to finish and polish things in SQLModel, that's what's kept me from doing more stuff here, and it's what will have the biggest impact too.

I'm just pinging to see how far it has gone until now

Keep up the good work :+1:

zakkg3 commented 1 year ago

Hello all! Nope, the project is not dead, in fact, I've been building stuff for it.

I created SQLModel precisely to use it in this project, to simplify a lot of the code here.

I also want to migrate Celery to ARQ, Vue to React with TypeScript and hooks, and the GitLab CI to GitHub Actions, and Docker Swarm to Kubernetes... Lots to do.

But first, I need to finish and polish things in SQLModel, that's what's kept me from doing more stuff here, and it's what will have the biggest impact too.

Cool!

GitlabCi to GH actions and docker sw to k8s its kinda obvious of me, but Celery to arq, and Vue to react + Typescript its not, what are the reasons behind? Dramatiq seems to be srong option atm isnt it? ty

lukasz-madon commented 1 year ago

Any progress?

brunolnetto commented 1 year ago

@tiangolo There are too many issues and pull requests, which some may bring bug fixes already on the issue itself. I can help pointing those out, but it would require also some effort to the community to make some prior considerations, like organization, or even permission to join the collaborator staff.

PS.: I was trying to perform something like yours here.