{"id":15154456,"url":"https://github.com/achronus/create-api-app","last_synced_at":"2025-09-30T03:30:32.150Z","repository":{"id":220662518,"uuid":"752231950","full_name":"Achronus/create-api-app","owner":"Achronus","description":"A quickstart tool for creating FastAPI projects with a NextJS frontend.","archived":true,"fork":false,"pushed_at":"2024-09-08T21:16:33.000Z","size":1526,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-11-15T04:58:18.708Z","etag":null,"topics":["api-tool","beanie","fastapi","mongodb","nextjs","python","tailwindcss"],"latest_commit_sha":null,"homepage":"https://create.achronus.dev/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Achronus.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-02-03T12:28:34.000Z","updated_at":"2024-09-08T21:19:49.000Z","dependencies_parsed_at":"2024-02-03T13:31:21.391Z","dependency_job_id":"f6941331-2623-42d7-93f2-b0dfea8e6d83","html_url":"https://github.com/Achronus/create-api-app","commit_stats":{"total_commits":196,"total_committers":1,"mean_commits":196.0,"dds":0.0,"last_synced_commit":"fcfce84d50f83051e4921dde983de8282fc0b244"},"previous_names":["achronus/create-api-app"],"tags_count":15,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Achronus%2Fcreate-api-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Achronus%2Fcreate-api-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Achronus%2Fcreate-api-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Achronus%2Fcreate-api-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Achronus","download_url":"https://codeload.github.com/Achronus/create-api-app/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":234695489,"owners_count":18872991,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api-tool","beanie","fastapi","mongodb","nextjs","python","tailwindcss"],"created_at":"2024-09-26T17:40:20.959Z","updated_at":"2025-09-30T03:30:31.760Z","avatar_url":"https://github.com/Achronus.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"⚠️ DISCONTINUED IN FAVOUR OF [ZENTRA](https://github.com/Achronus/Zentra) ⚠️\n\n# Create API App Quickstart Tool \u003c!-- omit in toc --\u003e\n\n![PyPI - Python Version](https://img.shields.io/pypi/pyversions/create-api-app?style=flat\u0026color=green)\n\nWelcome to the quickstart tool for creating a `FastAPI` project with a `NextJS` frontend.\n\nThis tool creates a predefined template while installing the most recent packages where possible.\n\nFound on:\n\n- [PyPi](https://pypi.org/project/create-api-app/)\n- [GitHub](https://github.com/Achronus/create-api-app/)\n\n## Contents \u003c!-- omit in toc --\u003e\n\n- [Why This Tool?](#why-this-tool)\n- [The Stack](#the-stack)\n- [Installation](#installation)\n- [Running The Backend](#running-the-backend)\n- [Running the Frontend](#running-the-frontend)\n- [Customization](#customization)\n\n## Why This Tool?\n\nCreating a project from scratch can be a tedious process. Not only do you have to create all the files yourself, it typically requires a lot of small minor changes that can easily be automated. So, rather than wasting a lot of time setting up projects, I created a tool that does it all for me!\n\nI use this tool personally for `SaaS` and `ML API` projects and have found it extremely useful for immediately diving into coding without faffing around with setup details (except for configuring API keys). Hopefully, it's useful to you too!\n\n## The Stack\n\nAll projects are created using the same stack, consisting of the following:\n\n1. Backend\n\n   - [FastAPI](https://github.com/tiangolo/fastapi)\n   - [Pydantic](https://docs.pydantic.dev/)\n   - [MongoDB](https://www.mongodb.com/)\n   - [Beanie](https://beanie-odm.dev/)\n   - [Poetry](https://python-poetry.org/)\n   - [Pytest](https://docs.pytest.org/)\n   - [Hypothesis](https://hypothesis.readthedocs.io/)\n\n2. Frontend\n\n   a. Core:\n\n     - [NextJS](https://nextjs.org/)\n     - [TailwindCSS](https://tailwindcss.com/)\n     - [TypeScript](https://www.typescriptlang.org/)\n     - [Lucide React](https://lucide.dev/)\n     - [Shadcn UI](https://ui.shadcn.com/)\n\n   b. Optional:\n     - [Clerk](https://clerk.com/docs/quickstarts/nextjs)\n     - [Uploadthing](https://uploadthing.com/)\n     - [Stripe](https://stripe.com/docs)\n\n_Note: all libraries and packages are automatically installed to their latest versions when running the tool._\n\nWe've also added some extra files too! You can find out more about them in our [documentation](https://create.achronus.dev/file-structure/).\n\n## Installation\n\n1. Firstly, install [Docker](https://docs.docker.com/get-docker/), we use this to create the frontend files dynamically using the [Build NextJS App Tool](https://github.com/Achronus/build-nextjs-app).\n\n2. Install the package through `PIP`:\n\n   ```python\n   pip install create_api_app\n   ```\n\n3. Create a project with a `name` and an `optional` string of `exclusion` characters for the `optional` packages.\n\n   Exclusion options: `c`, `u`, `s`, `cs`, `cu`, `us`, `cus`.\n   _`c` = `Clerk`, `u` = `Uploadthing`, `s` = `Stripe`_\n\n   ```python\n   create-api-app \u003cproject_name\u003e \u003cexclusions\u003e\n   ```\n\nAnd that's it! You'll find two folders in your project, one called `frontend` (for NextJS) and another called `backend` (for FastAPI).\n\n## Running The Backend\n\n1. Open a terminal and navigate to the `backend` directory:\n\n   ```cmd\n   cd backend\n   ```\n\n2. Install a virtual environment for `Poetry`:\n\n   ```cmd\n   python -m venv env\n   ```\n\n3. Access it using one of the following (first -\u003e `Windows`; second -\u003e `Mac/Linux`):\n\n   ```cmd\n   .\\env\\Scripts\\activate\n   ```\n\n   ```cmd\n   source ./env/bin/activate\n   ```\n\n   _Not working? Refer to the [virtual env docs](https://docs.python.org/3/library/venv.html#how-venvs-work)._\n\n4. Run the `uvicorn` server using the `Poetry` script:\n\n   ```cmd\n   app-start\n   ```\n\n## Running the Frontend\n\n1. Open a terminal and navigate to the `frontend` directory:\n\n   ```cmd\n   cd frontend\n   ```\n\n2. Install the packages using [Node.js](https://nodejs.org/en):\n\n   ```cmd\n   npm install\n   ```\n\n3. Run the development server:\n\n   ```cmd\n   npm run dev\n   ```\n\n## Customization\n\nCustomization options are found in our [documentation](https://create.achronus.dev/customization/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fachronus%2Fcreate-api-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fachronus%2Fcreate-api-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fachronus%2Fcreate-api-app/lists"}