Skip to main content

AI-powered app generation CLI tool

Project description

🚀 AppCannon

AppCannon is a powerful tool that generates full-stack web applications from a simple YAML specification file. It leverages the power of Large Language Models (LLMs) to create a complete application with a frontend, backend, and database, all with just a single command.

Features

  • 💪 Generates a complete web app from a concise YAML spec file
  • 🎨 Supports any frontend
  • 🔧 Generates backend code in any language
  • 📊 Integrates with all databases
  • 📝 Creates a comprehensive README.md file for the generated app
  • 🗂️ Organizes the generated code into a clean project structure
  • ⚙️ Supports multiple models including claude-3-5-sonnet-2024-0620 and gpt-4o

Installation

  1. Install appcannon:
   pip install appcannon
  1. Set up your API key as an environment variable:
    export OPENAI_API_KEY=your_openai_api_key_here
    # or if using Claude
    export ANTHROPIC_API_KEY=your_anthropic_api_key_here
    

Usage

To generate a web app using AppCannon, run the following command:

appcannon spec_file.yaml output_directory [options]
  • spec_file.yaml: The path to the YAML specification file for your app.
  • output_directory: The directory where the generated app files will be saved.

Optional arguments:

  • -f or --frontend: The frontend framework to use (default: "htmx with tailwind.css").
  • -b or --backend: The backend framework to use (default: "flask/python3").
  • -d or --database: The database to use (default: "sqlite").
  • -g or --git: The target Git repository for the generated app.
  • -m or --model: The model name to use for generation.
  • -l or --log: Optional. Specify a log file to record the generation process.

Example

Here's an example of how to use AppCannon:

appcannon examples/todo_app.yaml generated_apps/todo_app -frontend "react" -backend "node/express" -database "mongodb"

This command will generate a todo app using React for the frontend, Node.js with Express for the backend, and MongoDB as the database. The generated app files will be saved in the generated_apps/todo_app directory.

Changelog

  • Nov 9 2024 - Added CLI flags, support for Claude Sonnet 3.5 model
  • May 13 2024 - GPT4o support
  • Apr 27 2024 - Initial release

Contributing

Contributions are welcome! If you find any issues or have suggestions for improvements, please open an issue or submit a pull request.

License

AppCannon is dual-licensed under both the MIT License and a Commercial License.

MIT License

The MIT License is a permissive open-source license that allows you to freely use, modify, and distribute AppCannon for any purpose, subject to the terms and conditions of the license. Under this license, AppCannon is provided "as is" without warranty of any kind.

See the LICENSE-MIT file for the full text of the MIT License.

Commercial License

For users or organizations generating revenue over $10,000 per month or who have raised funding, we request that you purchase a Commercial License to support the ongoing development and maintenance of AppCannon.

The Commercial License provides the following additional benefits:

  • Priority support and assistance from the AppCannon team
  • Custom feature development and integration services
  • Legal assurances and indemnification for the use of AppCannon
  • The ability to influence the project roadmap and prioritization

To inquire about purchasing a Commercial License, please contact us at martyn+sales@255bits.com.

We appreciate your support in keeping AppCannon a sustainable open-source project!

Acknowledgments

This project uses ai-agent-toolbox for robust tool management and XML processing capabilities.

Part of the 255labs.xyz toolkit for AI-first development.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

appcannon-0.1.1.tar.gz (6.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

appcannon-0.1.1-py3-none-any.whl (7.1 kB view details)

Uploaded Python 3

File details

Details for the file appcannon-0.1.1.tar.gz.

File metadata

  • Download URL: appcannon-0.1.1.tar.gz
  • Upload date:
  • Size: 6.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.3

File hashes

Hashes for appcannon-0.1.1.tar.gz
Algorithm Hash digest
SHA256 cf062dcc41ca22ec0064a1bbb1c34a87584503bd76a08c2fc29068580f7a7188
MD5 f1d3804ce33dc9538250025a6b735947
BLAKE2b-256 a81d8a9d49091fbc60692fff8e469f2bbed356bdf623bf775e407ac7349373a6

See more details on using hashes here.

File details

Details for the file appcannon-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: appcannon-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 7.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.3

File hashes

Hashes for appcannon-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f716323ac5f893e03baffb856369fdaa4f6310d7476d7ae98affc4c78bb660d5
MD5 a0643cbd61ffbffe57b4e7c621493a81
BLAKE2b-256 d1c79b3f5652d5985040c62842b6ac57bf92ef4e3350556e85eaa031a3972b9f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page