I need help picking the right tech stack for a new web project. My team has 3 people total - myself plus 2 backend developers and 1 frontend designer who works remotely.
Since our frontend person is working from a different location, I want to ensure the frontend and backend can work independently without too much reliance on each other.
Here are our requirements:
- Easy API creation for third-party integrations
- Must handle a large number of users and high traffic
- A rich interactive user interface with strong reporting capabilities
I was considering using Django/Flask for the backend, but I’m unsure how well they scale together. For the frontend, I’m thinking about using React, but I wonder if Vue.js might be more user-friendly.
Additionally, I am exploring D3.js or Chart.js for data visualization.
What frameworks would you suggest for this configuration and why?
honestly django scales pretty well if you set it up right with proper caching and load balancing. ive used it with react before and the separation works great for remote teams. just make sure you design your api endpoints carefully upfront so frontend dev doesnt get blocked waiting for backend changes
FastAPI deserves serious consideration for your backend instead of Django or Flask. I migrated from Django to FastAPI for a similar project last year and the performance gains were substantial. The automatic API documentation generation alone saves countless hours when working with separated teams, and the async capabilities handle high traffic loads exceptionally well without additional complexity. For your frontend stack, React remains the stronger choice over Vue.js when dealing with complex reporting interfaces. The ecosystem around React has better tooling for data-heavy applications. Regarding visualization, Chart.js integrates more seamlessly with React components compared to D3.js, though D3 offers more customization if your reporting requirements become highly specialized. The key advantage of FastAPI is that it naturally enforces clean API design patterns, which prevents the blocking issues that often occur between remote frontend and backend teams.
hmm interesting setup you got there! i’m curious tho - what kind of reporting features are you planning exactly? like real-time dashboards or more static reports? also, have you considered what database you’ll use behind all this? that might influence your backend choice more than you think 