Skip to main content

Nexuni Co Ltd. Famcy management console framework

Project description

FAMCY

famcy_logo

Famcy is an All-round Management Console for You (FAMCY). It is designed for Nexuni Co. Management Console app development. The goal of this framework is to provide a lightweighted, python-based frontend development platform for web applications. It is built on top of the Flask framework and contains various useful plugins for backend management and user dashboard actions. As we work on a lot of robotics and automation related applications, FAMCY natively supports ROS2 integration.

Prerequisites

For now, we only support ubuntu development with python3.7. If you have other environment settings, please use our docker!

  1. Make sure your home directory start with /home/{USER}/....
  2. Make sure python3.7 exist in your CLI environment.

Installation

The installation requires the install of additional package FamcyTools.

  1. Install FamcyTools
pip3 install FamcyTools
  1. Initialize famcy environment
famcy init {PROJECT_NAME} (e.g. famcy init template)

Wait until it finishes initialization and ignore warnings for now. It will generate the environment in ~/.local/share/famcy/{PROJECT_NAME} with initial template console, logs, and venv. 3. You can start developing your famcy software or import your existing code to the console folder.

Usage

After you finish all the development, you would need to run the following command to deploy your code.

famcy deploy {PROJECT_NAME}

Development

When you are running this in a debugging mode. We have provided a basic run and test method that link the web to your local port. Please run the following command to achieve this.

famcy run {PROJECT_NAME}

Deploy

When it comes to deploying to the production instance, you should follow the steps:

  1. Make sure you have run famcy deploy {PROJECT_NAME} and you should get an output similar to the following:
== Copy the following part and setup system service == (Need to change path if necessary)

[Unit]
Description=uWSGI instance to serve famcy
After=network.target

[Service]
User=user
Group=www-data
WorkingDirectory=/home/user/.local/share/famcy/template/venv/lib/python3.7/site-packages/Famcy
Environment="PATH=/home/user/.local/share/famcy/template/venv/bin"
ExecStart=/home/user/.local/share/famcy/template/venv/bin/uwsgi --ini famcy.ini --lazy

[Install]
WantedBy=multi-user.target


== Copy the following part to nginx configurations == (Need to change alias path if necessary)

location / {
	include uwsgi_params;
	uwsgi_pass unix:/tmp/template.sock;
}

location /static  {
    alias /home/user/.local/share/famcy/template/venv/lib/python3.7/site-packages/Famcy/static;
}

Deployed to wsgi
  1. Create a system file and copy the consequent info into the system configuration. Please double check the system path is correct.
  2. Create a nginx configuration file with the info above.
  3. Modify /etc/nginx/nginx.conf file and set the user to the username of your instance.
  4. Restart the system service you have created.

Features

We provided default services with some default pages in Famcy.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

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

FamcyDev-0.3.24-py3-none-any.whl (6.0 MB view details)

Uploaded Python 3

File details

Details for the file FamcyDev-0.3.24-py3-none-any.whl.

File metadata

  • Download URL: FamcyDev-0.3.24-py3-none-any.whl
  • Upload date:
  • Size: 6.0 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.7.12

File hashes

Hashes for FamcyDev-0.3.24-py3-none-any.whl
Algorithm Hash digest
SHA256 e73dcca0bbdd12dbc24e37142c0625cdb938e48433baaf88686f859f349720ac
MD5 0d8b8a82db000554dd11f3606eea8e8f
BLAKE2b-256 77f9c6647aa37efb67745af33c4c15a8cf63fbd9144ea81d6534d0da7e3fb573

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