Package: panel-vegafusion
Panel VegaFusionWORK IN PROGRESS. PROOF OF CONCEPT WORKING.ThePanel VegaFusion paneallows you to create interactivebig data appsbased on theAltairplotting library and theVegavisualization specification.VegaFusionprovides serverside acceleration for the
Vega visualization grammar.Panelmakes it easy to create powerful  data apps using the tools you know and ❤️. Member of theHoloVizecosystem.Installpipinstallpanel-vegafusionExampleimportaltairasaltimportpanelaspnfrompanel_vegafusionimportVegaFusionfrompanel_vegafusion.utilsimportget_plot,ALTAIR_BLUE,get_themepn.extension(template="fast")theme=get_theme()alt.themes.enable(theme)plot=get_plot()# Can be replaced any Altair plot or Vega Specificationcomponent=VegaFusion(plot,height=800).servable()pn.state.template.param.update(site="Panel VegaFusion",title="Interactive BIG DATA apps with CROSSFILTERING for Altair and Vega",accent_base_color=ALTAIR_BLUE,header_background=ALTAIR_BLUE,)You can serve the application viapanel serve 'name_of_file.pyorpanel serve 'name_of_notebook.ipynb.TodoThis needs to be done before alpha releaseFix all errors ininvoke test.allMake python package installable (and release it)Implement way to get rid of the user having to serve the assets manually via--static dist=./src-js/dist.[] Get things working on BinderLicense - AGPLv3 - IMPORTANTThis Panel Vegafusion project is AGPLv3 Licensed because VegaFusion is AGPLv3 licensed andrequires the
author to provide this application's source code upon request.SO PLEASE INVESTIGATE THE LEGAL ASPECTS ON YOUR OWN. YOU WILL BE USING THIS PROJECT AT YOUR OWN RISK ANYWAYS! 👍ReferencesVegaFusion Github|VegaFusion documentationPanel Docs|Panel Discourse|Awesome PanelDataShader|hvplot|HoloViewsIssues Identifiedvegafusion/vegafusion #64 - Support Vega-Embed ThemesBokeh Discourse - Cannot bokeh build extension with wasm dependencybokeh/ipywidgets_bokeh #46 - Not working with VegaFusionWidgetholoviz/param #597 - Add edit_readonlyholoviz/panel #3149 - Object of type Chart is not JSON serializablevegafusion/vegafusion #62 - Please support Panelvegafusion/vegafusion #63 - Please provide simple .js buildvegafusion/vegafusion #68 - Provide VegaFusionRunTime from the vegafusion packagevegafusion/vegafusion #66 - Please support eventsvegafusion/vegafusion #67 - Uncaught (in promise) out of memoryDevelopInstall for developmentgitclonehttps://github.com/MarcSkovMadsen/panel-vegafusion.git
condacreate-npanel_vegafusion-cconda-forgepython=3.9nodejs
condaactivatepanel_vegafusion
pipinstall-e.[all]cdsrc-js
npminstall--save-devwebpack-cli
npminstallcd..BuildJavascript packageinvokebuild.jsPython packageinvokebuild.packageTestinvoketest.allServe Dev AppFor now you can serve an example with hot reload viapanelserve'tests/apps/test_dev_app.py'--autoreload--showServe Example AppsFor now you can serve an example with hot reload viapanelserve'examples/*.py'--autoreload--showReferenceYou can also find inspiration in the original Jupyter VegaFusion reference example viajupyterlabtests/reference_example.ipynbRelease Python PackageBefore releasing please make sures you haveupdated all version numbersbuild all packagesrun all tests with succespython-mtwineuploaddist/*<VERSION>*to deploy the package 📦.If you want to upload totestpypifirst you can do so by adding--repository testpypi.