Docker-Container für
* download der activities mit garmindb
* erzeugen einer CSV-Datenbank der Radfahr-Aktivitäten
* Web-Dashboard für die Übersicht

App Generator 300216619b Move Gulp tooling to ROOT 2 роки тому
apps 300216619b Move Gulp tooling to ROOT 2 роки тому
media a353997161 Added media files 5 роки тому
nginx 038b7fc0c0 Update Docker 3 роки тому
.dockerignore 5c64a6db2d Release v1.0.8 3 роки тому
.env e4e8f95643 Added Default ENV file 3 роки тому
.gitignore 4c47edc3df Update .gitignore 2 роки тому
CHANGELOG.md 596c6159f2 Added Video Material 3 роки тому
Dockerfile 2aecd03a93 Docker Script Update 3 роки тому
LICENSE.md 5c64a6db2d Release v1.0.8 3 роки тому
README.md 846d02fa8f Update README.md 2 роки тому
deployer.json a111d562f7 Release v1.0.11 - Added Deployer 3 роки тому
docker-compose.yml 2aecd03a93 Docker Script Update 3 роки тому
env.sample 12b24925bd Update env.sample 3 роки тому
gulpfile.js 300216619b Move Gulp tooling to ROOT 2 роки тому
gunicorn-cfg.py 5c64a6db2d Release v1.0.8 3 роки тому
package.json 300216619b Move Gulp tooling to ROOT 2 роки тому
requirements.txt 116e900dc2 OAuth - Added Dependencies 3 роки тому
run.py 7f5b91af4a Integrate flask_minify (page compression) 3 роки тому

README.md

Black Dashboard Flask

Open-source Flask Dashboard generated by AppSeed op top of a modern Bootstrap design. Designed for those who like bold elements and beautiful websites, Black Dashboard is ready to help you create stunning websites and webapps. Black Dashboard is built with over 50 frontend individual elements, like buttons, inputs, navbars, nav tabs, cards, or alerts, giving you the freedom of choosing and combining.


🚀 Built with App Generator, timestamp: 2022-05-25 09:44

  • Up-to-date dependencies
  • Black Dashboard, Persistent Dark-Mode
  • DB Tools: SQLAlchemy ORM, Flask-Migrate (schema migrations)
  • Persistence: SQLite (dev), MySql (prod)
  • Authentication: Session Based, OAuth via Github
  • Deployment: Docker, Page Compression (Flask-Minify)


Black Dashboard - Seed project provided by AppSeed.


✨ Start the app in Docker

👉 Step 1 - Download the code from the GH repository (using GIT)

$ git clone https://github.com/app-generator/flask-black-dashboard.git
$ cd flask-black-dashboard


👉 Step 2 - Start the APP in Docker

$ docker-compose up --build 

Visit http://localhost:5085 in your browser. The app should be up & running.


✨ Create/Edit .env file

The meaning of each variable can be found below:

  • DEBUG: if True the app runs in develoment mode
    • For production value False should be used
  • ASSETS_ROOT: used in assets management
    • default value: /static/assets
  • OAuth via Github
    • GITHUB_ID=
    • GITHUB_SECRET=


    ✨ Manual Build

    Download the code

    $ git clone https://github.com/app-generator/flask-black-dashboard.git
    $ cd flask-black-dashboard
    


    👉 Set Up for Unix, MacOS

    Install modules via VENV

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


    Set Up Flask Environment

    $ export FLASK_APP=run.py
    $ export FLASK_ENV=development
    


    Start the app

    $ flask run
    // OR
    $ flask run --cert=adhoc # For HTTPS server
    

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


    👉 Set Up for Windows

    Install modules via VENV (windows)

    $ virtualenv env
    $ .\env\Scripts\activate
    $ pip3 install -r requirements.txt
    


    Set Up Flask Environment

    $ # CMD 
    $ set FLASK_APP=run.py
    $ set FLASK_ENV=development
    $
    $ # Powershell
    $ $env:FLASK_APP = ".\run.py"
    $ $env:FLASK_ENV = "development"
    


    Start the app

    $ flask run
    // OR
    $ flask run --cert=adhoc # For HTTPS server
    

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


    Deploy on Render

    The product can be easily deployed on Render using Python Deployer (open-source tool).


    👉 Step 1: Set UP a Render account

    • Create account
    • Create an API_KEY
    • Attach a credit card to the account
      • Note: Each Python service deployed on Render requires a monthly payment


    👉 Step 2: Download Python Deployer

    $ git clone https://github.com/app-generator/deploy-automation-render.git   
    $ cd deploy-automation-render
    $ pip install -r requirements.txt
    


    👉 Step 3: Set up the ENV as suggested in the deployer help

    $ export RENDER_API_KEY=<RENDER_API_KEY>   # mandatory
    $ export RENDER_OWNER_ID=<RENDER_OWNER_ID> # needs to have a CC attached, used for Billing
    


    👉 Step 4: Deploy the repo

    $ python.exe deployer.py flask https://github.com/app-generator/flask-star-admin "run:app"
    

    The new service should be visible on your Render Dashboard and soon be LIVE.


    https://user-images.githubusercontent.com/51070104/202263931-80ae9178-f92d-421a-9c83-3c5f5d6404c8.mp4


    👉 Create Users

    By default, the app redirects guest users to authenticate. In order to access the private pages, follow this set up:

    • Start the app via flask run
    • Access the registration page and create a new user:
      • http://127.0.0.1:5000/register
    • Access the sign in page and authenticate
      • http://127.0.0.1:5000/login


    Recompile CSS

    To recompile SCSS files, follow this setup:


    👉 Step #1 - Install tools

    • NodeJS 12.x or higher
    • Gulp - globally
      • npm install -g gulp-cli
    • Yarn (optional)


    👉 Step #2 - Change the working directory to assets folder

    $ cd apps/static/assets
    


    👉 Step #3 - Install modules (this will create a classic node_modules directory)

    $ npm install
    // OR
    $ yarn
    


    👉 Step #4 - Edit & Recompile SCSS files

    $ gulp
    

    The generated file is saved in static/assets/css directory.


    ✨ Code-base structure

    The project is coded using blueprints, app factory pattern, dual configuration profile (development and production) and an intuitive structure presented bellow:

    < PROJECT ROOT >
       |
       |-- apps/
       |    |
       |    |-- home/                           # A simple app that serve HTML files
       |    |    |-- routes.py                  # Define app routes
       |    |
       |    |-- authentication/                 # Handles auth routes (login and register)
       |    |    |-- routes.py                  # Define authentication routes  
       |    |    |-- models.py                  # Defines models  
       |    |    |-- forms.py                   # Define auth forms (login and register) 
       |    |
       |    |-- static/
       |    |    |-- <css, JS, images>          # CSS files, Javascripts files
       |    |
       |    |-- templates/                      # Templates used to render pages
       |    |    |-- includes/                  # HTML chunks and components
       |    |    |    |-- navigation.html       # Top menu component
       |    |    |    |-- sidebar.html          # Sidebar component
       |    |    |    |-- footer.html           # App Footer
       |    |    |    |-- scripts.html          # Scripts common to all pages
       |    |    |
       |    |    |-- layouts/                   # Master pages
       |    |    |    |-- base-fullscreen.html  # Used by Authentication pages
       |    |    |    |-- base.html             # Used by common pages
       |    |    |
       |    |    |-- accounts/                  # Authentication pages
       |    |    |    |-- login.html            # Login page
       |    |    |    |-- register.html         # Register page
       |    |    |
       |    |    |-- home/                      # UI Kit Pages
       |    |         |-- index.html            # Index page
       |    |         |-- 404-page.html         # 404 page
       |    |         |-- *.html                # All other pages
       |    |    
       |  config.py                             # Set up the app
       |    __init__.py                         # Initialize the app
       |
       |-- requirements.txt                     # App Dependencies
       |
       |-- .env                                 # Inject Configuration via Environment
       |-- run.py                               # Start the app - WSGI gateway
       |
       |-- ************************************************************************
    


    PRO Version

    For more components, pages and priority on support, feel free to take a look at this amazing starter:

    Black Dashboard is a premium Bootstrap Design now available for download in Django. Made of hundred of elements, designed blocks, and fully coded pages, Black Dashboard PRO is ready to help you create stunning websites and web apps.


    Black Dashboard PRO - Full-Stack Starter generated by AppSeed.



    Black Dashboard Flask - Open-source starter generated by App Generator.