startfast


Namestartfast JSON
Version 0.2.0 PyPI version JSON
download
home_pageNone
SummaryA comprehensive FastAPI project generator
upload_time2025-08-27 00:27:32
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseMIT
keywords fastapi generator template project scaffolding
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <div align="center">

# โšก StartFast

**The production-ready FastAPI project structure that senior developers spend 4+ hours building from scratch.**

*Skip the boilerplate. Ship the features.*

[![PyPI version](https://badge.fury.io/py/startfast.svg)](https://badge.fury.io/py/startfast)
[![Python 3.8+](https://img.shields.io/badge/python-3.8+-blue.svg)](https://www.python.org/downloads/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

```bash
pip install startfast
startfast my-api
# โœ… Production FastAPI project ready in 30 seconds
```

</div>

---

## ๐ŸŽฏ Why StartFast?

Every FastAPI project starts the same way: authentication, database setup, Docker configuration, testing framework, project structure. **You've built this 10 times already.**

StartFast gives you the **professional project structure** instantly, so you can focus on your actual business logic.

```bash
# Instead of 4 hours of setup...
startfast my-api

# You get production-ready:
โœ… Async FastAPI with proper structure
โœ… PostgreSQL + SQLAlchemy (async)  
โœ… JWT authentication + user management
โœ… Docker + docker-compose
โœ… pytest + coverage
โœ… API documentation
```

---

## โšก Quick Start

### Get Started in 30 Seconds

```bash
# Install
pip install startfast

# Create project
startfast my-api

# Start developing
cd my-api
uvicorn app.main:app --reload
```

That's it. Your API is live at `http://localhost:8000/docs`

### Customize When Needed

```bash
# SQLite for quick prototyping
startfast my-app --db sqlite

```

---

## ๐Ÿ—๏ธ What You Get

**Professional project structure** following FastAPI best practices:

```plaintext
my-api/
โ”œโ”€โ”€ app/
โ”‚   โ”œโ”€โ”€ main.py              # FastAPI application
โ”‚   โ”œโ”€โ”€ core/
โ”‚   โ”‚   โ”œโ”€โ”€ config.py        # Environment configuration
โ”‚   โ”‚   โ””โ”€โ”€ security.py      # JWT auth + password hashing
โ”‚   โ”œโ”€โ”€ api/v1/              # API routes
โ”‚   โ”œโ”€โ”€ models/              # Database models  
โ”‚   โ”œโ”€โ”€ schemas/             # Pydantic schemas
โ”‚   โ””โ”€โ”€ services/            # Business logic
โ”œโ”€โ”€ tests/                   # pytest test suite
โ”œโ”€โ”€ Dockerfile               # Production container
โ”œโ”€โ”€ docker-compose.yml       # Local development
โ””โ”€โ”€ requirements.txt         # Dependencies
```

**Everything configured correctly:**

- Async database connections
- Password hashing with bcrypt
- JWT token authentication
- Request/response validation
- Error handling middleware
- Health check endpoints
- CORS configuration
- Environment-based config

---

## ๐Ÿš€ Core Commands

```bash
# Standard full-featured API
startfast my-api

# Quick prototype (SQLite + minimal features)
startfast my-app --minimal

```

### Database Options

```bash
--db postgres    # Production (default)
--db sqlite      # Development/prototyping  
--db mysql       # Enterprise compatibility
--db mongo       # Document store
```

### Authentication Options

```bash
--auth jwt       # JWT tokens (default)
--auth oauth2    # OAuth2 with scopes
--auth api-key   # Simple API keys
--auth none      # No authentication
```

---

## ๐Ÿ’ก Perfect For

- **๐Ÿš€ Startups**: Get your MVP API running in minutes
- **๐Ÿข Enterprise**: Consistent, scalable project structure
- **๐Ÿงช Prototyping**: Quick experiments with production-ready foundation
- **๐Ÿ“š Learning**: Study well-structured FastAPI projects
- **โšก Hackathons**: Skip setup, focus on features

---

## ๐Ÿ› ๏ธ Installation

```bash
pip install startfast
```

**Requirements:** Python 3.8+

---

## ๐Ÿค Contributing

StartFast is built by developers who got tired of recreating the same project structure.

```bash
git clone https://github.com/Incognitol07/startfast.git
cd startfast
pip install -e ".[dev]"
```

Found a better way to structure something? **PRs welcome!**

---

## ๐Ÿ“„ License

MIT License - use it however you want.

---

<div align="center">

**Stop rebuilding. Start shipping.**

[![Star on GitHub](https://img.shields.io/github/stars/Incognitol07/startfast?style=social)](https://github.com/Incognitol07/startfast)

Made by developers who value their time โšก

</div>

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "startfast",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "fastapi, generator, template, project, scaffolding",
    "author": null,
    "author_email": "StartFast Team <ab.adelodun@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/95/f5/dff08f4e57b7c45f87d924ac6c8dd9450f0c1d03ad15d5dc63615e811807/startfast-0.2.0.tar.gz",
    "platform": null,
    "description": "<div align=\"center\">\r\n\r\n# \u26a1 StartFast\r\n\r\n**The production-ready FastAPI project structure that senior developers spend 4+ hours building from scratch.**\r\n\r\n*Skip the boilerplate. Ship the features.*\r\n\r\n[![PyPI version](https://badge.fury.io/py/startfast.svg)](https://badge.fury.io/py/startfast)\r\n[![Python 3.8+](https://img.shields.io/badge/python-3.8+-blue.svg)](https://www.python.org/downloads/)\r\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\r\n\r\n```bash\r\npip install startfast\r\nstartfast my-api\r\n# \u2705 Production FastAPI project ready in 30 seconds\r\n```\r\n\r\n</div>\r\n\r\n---\r\n\r\n## \ud83c\udfaf Why StartFast?\r\n\r\nEvery FastAPI project starts the same way: authentication, database setup, Docker configuration, testing framework, project structure. **You've built this 10 times already.**\r\n\r\nStartFast gives you the **professional project structure** instantly, so you can focus on your actual business logic.\r\n\r\n```bash\r\n# Instead of 4 hours of setup...\r\nstartfast my-api\r\n\r\n# You get production-ready:\r\n\u2705 Async FastAPI with proper structure\r\n\u2705 PostgreSQL + SQLAlchemy (async)  \r\n\u2705 JWT authentication + user management\r\n\u2705 Docker + docker-compose\r\n\u2705 pytest + coverage\r\n\u2705 API documentation\r\n```\r\n\r\n---\r\n\r\n## \u26a1 Quick Start\r\n\r\n### Get Started in 30 Seconds\r\n\r\n```bash\r\n# Install\r\npip install startfast\r\n\r\n# Create project\r\nstartfast my-api\r\n\r\n# Start developing\r\ncd my-api\r\nuvicorn app.main:app --reload\r\n```\r\n\r\nThat's it. Your API is live at `http://localhost:8000/docs`\r\n\r\n### Customize When Needed\r\n\r\n```bash\r\n# SQLite for quick prototyping\r\nstartfast my-app --db sqlite\r\n\r\n```\r\n\r\n---\r\n\r\n## \ud83c\udfd7\ufe0f What You Get\r\n\r\n**Professional project structure** following FastAPI best practices:\r\n\r\n```plaintext\r\nmy-api/\r\n\u251c\u2500\u2500 app/\r\n\u2502   \u251c\u2500\u2500 main.py              # FastAPI application\r\n\u2502   \u251c\u2500\u2500 core/\r\n\u2502   \u2502   \u251c\u2500\u2500 config.py        # Environment configuration\r\n\u2502   \u2502   \u2514\u2500\u2500 security.py      # JWT auth + password hashing\r\n\u2502   \u251c\u2500\u2500 api/v1/              # API routes\r\n\u2502   \u251c\u2500\u2500 models/              # Database models  \r\n\u2502   \u251c\u2500\u2500 schemas/             # Pydantic schemas\r\n\u2502   \u2514\u2500\u2500 services/            # Business logic\r\n\u251c\u2500\u2500 tests/                   # pytest test suite\r\n\u251c\u2500\u2500 Dockerfile               # Production container\r\n\u251c\u2500\u2500 docker-compose.yml       # Local development\r\n\u2514\u2500\u2500 requirements.txt         # Dependencies\r\n```\r\n\r\n**Everything configured correctly:**\r\n\r\n- Async database connections\r\n- Password hashing with bcrypt\r\n- JWT token authentication\r\n- Request/response validation\r\n- Error handling middleware\r\n- Health check endpoints\r\n- CORS configuration\r\n- Environment-based config\r\n\r\n---\r\n\r\n## \ud83d\ude80 Core Commands\r\n\r\n```bash\r\n# Standard full-featured API\r\nstartfast my-api\r\n\r\n# Quick prototype (SQLite + minimal features)\r\nstartfast my-app --minimal\r\n\r\n```\r\n\r\n### Database Options\r\n\r\n```bash\r\n--db postgres    # Production (default)\r\n--db sqlite      # Development/prototyping  \r\n--db mysql       # Enterprise compatibility\r\n--db mongo       # Document store\r\n```\r\n\r\n### Authentication Options\r\n\r\n```bash\r\n--auth jwt       # JWT tokens (default)\r\n--auth oauth2    # OAuth2 with scopes\r\n--auth api-key   # Simple API keys\r\n--auth none      # No authentication\r\n```\r\n\r\n---\r\n\r\n## \ud83d\udca1 Perfect For\r\n\r\n- **\ud83d\ude80 Startups**: Get your MVP API running in minutes\r\n- **\ud83c\udfe2 Enterprise**: Consistent, scalable project structure\r\n- **\ud83e\uddea Prototyping**: Quick experiments with production-ready foundation\r\n- **\ud83d\udcda Learning**: Study well-structured FastAPI projects\r\n- **\u26a1 Hackathons**: Skip setup, focus on features\r\n\r\n---\r\n\r\n## \ud83d\udee0\ufe0f Installation\r\n\r\n```bash\r\npip install startfast\r\n```\r\n\r\n**Requirements:** Python 3.8+\r\n\r\n---\r\n\r\n## \ud83e\udd1d Contributing\r\n\r\nStartFast is built by developers who got tired of recreating the same project structure.\r\n\r\n```bash\r\ngit clone https://github.com/Incognitol07/startfast.git\r\ncd startfast\r\npip install -e \".[dev]\"\r\n```\r\n\r\nFound a better way to structure something? **PRs welcome!**\r\n\r\n---\r\n\r\n## \ud83d\udcc4 License\r\n\r\nMIT License - use it however you want.\r\n\r\n---\r\n\r\n<div align=\"center\">\r\n\r\n**Stop rebuilding. Start shipping.**\r\n\r\n[![Star on GitHub](https://img.shields.io/github/stars/Incognitol07/startfast?style=social)](https://github.com/Incognitol07/startfast)\r\n\r\nMade by developers who value their time \u26a1\r\n\r\n</div>\r\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A comprehensive FastAPI project generator",
    "version": "0.2.0",
    "project_urls": {
        "Homepage": "https://github.com/Incognitol07/startfast",
        "Issues": "https://github.com/Incognitol07/startfast/issues",
        "Repository": "https://github.com/Incognitol07/startfast"
    },
    "split_keywords": [
        "fastapi",
        " generator",
        " template",
        " project",
        " scaffolding"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "80f19c0a16fc956bf61bbc5e2209800184af477611384ef12c921d36dfaf942d",
                "md5": "0697519b7f7403a3cdeaa7ac83038b68",
                "sha256": "08eb635297eaa370810d6fec6ac1c5f779540ec65aa0b29bd949bf73e29c022d"
            },
            "downloads": -1,
            "filename": "startfast-0.2.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "0697519b7f7403a3cdeaa7ac83038b68",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 41036,
            "upload_time": "2025-08-27T00:27:31",
            "upload_time_iso_8601": "2025-08-27T00:27:31.030070Z",
            "url": "https://files.pythonhosted.org/packages/80/f1/9c0a16fc956bf61bbc5e2209800184af477611384ef12c921d36dfaf942d/startfast-0.2.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "95f5dff08f4e57b7c45f87d924ac6c8dd9450f0c1d03ad15d5dc63615e811807",
                "md5": "cf010c53f3bfc247f9281ded1adc85fe",
                "sha256": "6763a08c895df762095a9b6fd4f3cedf7fd84e062371db968d8012209537d248"
            },
            "downloads": -1,
            "filename": "startfast-0.2.0.tar.gz",
            "has_sig": false,
            "md5_digest": "cf010c53f3bfc247f9281ded1adc85fe",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 35018,
            "upload_time": "2025-08-27T00:27:32",
            "upload_time_iso_8601": "2025-08-27T00:27:32.428882Z",
            "url": "https://files.pythonhosted.org/packages/95/f5/dff08f4e57b7c45f87d924ac6c8dd9450f0c1d03ad15d5dc63615e811807/startfast-0.2.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-27 00:27:32",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "Incognitol07",
    "github_project": "startfast",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "startfast"
}
        
Elapsed time: 0.41612s