Skip to content

app-generator/appseed-v2

Repository files navigation

The new version of AppSeed - Generate Digital Products, Update legacy code by chat, Inject new modules, Software Auto-healing, AI, Deployment automation (any provider), Docker, K8s.

👉 LIVE Demo: https://app-generator.dev


Features

  • One-Click Sign IN: GitHub
  • Marketplace: mirrored from AppSeed
  • Generator (CLI & Web Versions)
    • MVC: Django, NodeJS, Flask, FastAPI
    • Full-Stack: React, Vue with any API Backend
    • API [ manage visually the data ]
    • eCommerce
    • Website
  • Deployment options: Render, AppSeed Cloud Digital Ocean, User Provider (AWS, DO, Azure)
  • Developer Tools
    • AI introspection to different data sources
    • CSV processing and data extraction
    • CSV to model
  • Sections:

SPECS


For more input please contact support using the following:


Stack

  • Python/Django
  • React
  • Docker
  • CI/CD - LIVE Deploy on Digital Ocean

Manual Build

Download the code

$ git clone https://github.com/app-generator/appseed-v2.git
$ cd appseed-v2

Install modules via VENV

$ virtualenv env
$ source env/bin/activate
$ pip install -r requirements.txt

Set Up Database

$ python manage.py makemigrations
$ python manage.py migrate

Start the APP

$ python manage.py createsuperuser # create the admin
$ python manage.py runserver       # start the project

At this point, the app runs at http://127.0.0.1:8000/.


CLI Interface

Generate Code

For now, only Django code is supported.

$ python manage.py generator -i # Print HELP 
$ python manage.py generator -f sources/input-template-volt.json

The generated code is saved in generated_code DIR. Open the sources using your favorite editor and start the project. The easier way is to use Docker:

$ cd generated_code/GENERATED_PROJECT/
$ docker-compose up --build

Wait for Docker completion and visit http://localhost:5085 in the browser.


Upload project to GitHub

Note: For having SUCCESS on this operation, a GITHUB_KEY is required - read more.

$ python manage.py github -i # Print HELP 
$ python manage.py github -d generated_code/GENERATED_PROJECT/ -k GITHUB_KEY

Once the operation is finished, the generated project should be saved under the account associated with the GITHUB_KEY.


Compile DOCS

The Documentation being generated by , the compilation requires a linux box

$ cd docs && rm -rf build && make html

The output is saved on


Celery (async tasks)

  • Make sure you have a Redis Server running: redis://localhost:6379
    • $ redis-cli and type ping
  • In the base directory inside tasks_scripts folder you need to write your scripts file.
  • Run the celery command from the CLI.
$ export DJANGO_SETTINGS_MODULE="core.settings"  
$ celery -A core worker -l info -B

Executed Tasks, tasks_scripts DIR as defined in the EXEC Schedule

The output for each task can be found in the LOGS Directory.

Here is a LOG sample generated by a critical task that runs at every 5min:


CLI

Once the VENV is activated, we can use the console to interact with the codebase:

List available commands

$ python manage.py help 
(Truncated Output)
Type 'manage.py help <subcommand>' for help on a specific subcommand.
Available subcommands:
...
[cli]
    build_docs
    cmd_apps
    cmd_models
    cmd_showcfg
...

Generate DOCS

$ python manage.py build_docs

List Registered Apps

$ python manage.py cmd_apps
(Truncated Output)
 APP -> Webpack Loader
 APP -> Administration
 APP -> Authentication and Authorization
 ...

List Registered Models

$ python manage.py cmd_models
(Truncated Output)
 APP -> Administration
         |- (model) -> <class 'django.contrib.admin.models.LogEntry'>
 APP -> Authentication and Authorization
         |- (model) -> <class 'django.contrib.auth.models.Permission'>
         |- (model) -> <class 'django.contrib.auth.models.Group'>
         |- (model) -> <class 'django.contrib.auth.models.User'>

print Configuration

$ python manage.py cmd_showcfg
(Truncated Output)
 Cfg Key: INSTALLED_APPS -> ['webpack_loader', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'cli', 'apps.common', 'apps.pages', 'apps.users', 'apps.blog', 'debug_toolbar', 'allauth', 'allauth.account', 'allauth.socialaccount', 'allauth.socialaccount.providers.github', 'allauth.socialaccount.providers.google', 'django_quill']
 Cfg Key: DEBUG -> True
 Cfg Key: USE_TZ -> True
 Cfg Key: ROOT_URLCONF -> core.urls
 Cfg Key: MEDIA_ROOT -> D:\work\appseed-v2\media
 Cfg Key: APPEND_SLASH -> True
 Cfg Key: STATICFILES_FINDERS -> ['django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder']
 Cfg Key: STATICFILES_DIRS -> D:\work\appseed-v2\static
 Cfg Key: STATIC_ROOT -> D:\work\appseed-v2\staticfiles  

Team

Core

Developers/Contractors


LICENSE

@EULA



Crafted and released under the AppSeed brand by Sm0ke