Skip to content

Commit be6b2fe

Browse files
committed
[panoramix] -> [dashed]
1 parent 8f4f5b1 commit be6b2fe

File tree

143 files changed

+17521
-101
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

143 files changed

+17521
-101
lines changed

.gitignore

+3-3
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,15 @@ babel
44
.coverage
55
_build
66
_static
7-
panoramix/bin/panoramixc
7+
dashed/bin/dashedc
88
build
99
*.db
1010
tmp
11-
panoramix_config.py
11+
dashed_config.py
1212
local_config.py
1313
env
1414
dist
15-
panoramix.egg-info/
15+
dashed.egg-info/
1616
app.db
1717
*.bak
1818

.landscape.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@ pep8:
1515
full: true
1616
ignore-paths:
1717
- docs
18-
- panoramix/migrations/env.py
19-
- panoramix/ascii_art.py
18+
- dashed/migrations/env.py
19+
- dashed/ascii_art.py
2020
ignore-patterns:
2121
- ^example/doc_.*\.py$
2222
- (^|/)docs(/|$)

.travis.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,12 @@ install:
99
- pip wheel -w $HOME/.wheelhouse -f $HOME/.wheelhouse -r requirements.txt
1010
- pip install --find-links=$HOME/.wheelhouse --no-index -rrequirements.txt
1111
- python setup.py install
12-
- cd panoramix/assets
12+
- cd dashed/assets
1313
- npm install
1414
- npm run prod
1515
- cd $TRAVIS_BUILD_DIR
1616
script: bash run_tests.sh
1717
after_success:
1818
- coveralls
19-
- cd panoramix/assets
19+
- cd dashed/assets
2020
- npm run lint

CONTRIBUTING.md

+15-15
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,8 @@ Look through the GitHub issues for features. Anything tagged with
3030

3131
### Documentation
3232

33-
Panoramix could always use better documentation,
34-
whether as part of the official Panoramix docs,
33+
Dashed could always use better documentation,
34+
whether as part of the official Dashed docs,
3535
in docstrings, `docs/*.rst` or even on the web as blog posts or
3636
articles.
3737

@@ -49,14 +49,14 @@ If you are proposing a feature:
4949

5050
## Latest Documentation
5151

52-
[API Documentation](http://pythonhosted.com/panoramix)
52+
[API Documentation](http://pythonhosted.com/dashed)
5353

5454
## Setting up a Python development environment
5555

5656
# fork the repo on github and then clone it
5757
# alternatively you may want to clone the main repo but that won't work
5858
# so well if you are planning on sending PRs
59-
# git clone [email protected]:mistercrunch/panoramix.git
59+
# git clone [email protected]:mistercrunch/dashed.git
6060

6161
# [optional] setup a virtual env and activate it
6262
virtualenv env
@@ -66,24 +66,24 @@ If you are proposing a feature:
6666
python setup.py develop
6767

6868
# Create an admin user
69-
fabmanager create-admin --app panoramix
69+
fabmanager create-admin --app dashed
7070

7171
# Initialize the database
72-
panoramix db upgrade
72+
dashed db upgrade
7373

7474
# Create default roles and permissions
75-
panoramix init
75+
dashed init
7676

7777
# Load some data to play with
78-
panoramix load_examples
78+
dashed load_examples
7979

8080
# start a dev web server
81-
panoramix runserver -d
81+
dashed runserver -d
8282

8383

8484
## Setting up the node / npm javascript environment
8585

86-
`panoramix/assets` contains all npm-managed, front end assets.
86+
`dashed/assets` contains all npm-managed, front end assets.
8787
Flask-Appbuilder itself comes bundled with jQuery and bootstrap.
8888
While these may be phased out over time, these packages are currently not
8989
managed with npm.
@@ -116,7 +116,7 @@ new `node_modules/` folder within `assets/`.
116116
npm install
117117
```
118118

119-
To parse and generate bundled files for panoramix, run either of the
119+
To parse and generate bundled files for dashed, run either of the
120120
following commands. The `dev` flag will keep the npm script running and
121121
re-run it upon any changes within the assets directory.
122122

@@ -132,7 +132,7 @@ For every development session you will have to start a flask dev server
132132
as well as an npm watcher
133133

134134
```
135-
panoramix runserver -d -p 8081
135+
dashed runserver -d -p 8081
136136
npm run dev
137137
```
138138

@@ -157,12 +157,12 @@ Generate the documentation with:
157157
cd docs && ./build.sh
158158

159159
## CSS Themes
160-
As part of the npm build process, CSS for Panoramix is compiled from ```Less```, a dynamic stylesheet language.
160+
As part of the npm build process, CSS for Dashed is compiled from ```Less```, a dynamic stylesheet language.
161161

162-
It's possible to customize or add your own theme to Panoramix, either by overriding CSS rules or preferably
162+
It's possible to customize or add your own theme to Dashed, either by overriding CSS rules or preferably
163163
by modifying the Less variables or files in ```assets/stylesheets/less/```.
164164

165-
The ```variables.less``` and ```bootswatch.less``` files that ship with Panoramix are derived from
165+
The ```variables.less``` and ```bootswatch.less``` files that ship with Dashed are derived from
166166
[Bootswatch](https://bootswatch.com) and thus extend Bootstrap. Modify variables in these files directly, or
167167
swap them out entirely with the equivalent files from other Bootswatch (themes)[https://github.com/thomaspark/bootswatch.git]
168168

MANIFEST.in

+7-7
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
recursive-include panoramix/templates *
2-
recursive-include panoramix/static *
3-
recursive-exclude panoramix/static/assets/node_modules *
4-
recursive-include panoramix/static/assets/node_modules/font-awesome *
5-
recursive-exclude panoramix/static/docs *
1+
recursive-include dashed/templates *
2+
recursive-include dashed/static *
3+
recursive-exclude dashed/static/assets/node_modules *
4+
recursive-include dashed/static/assets/node_modules/font-awesome *
5+
recursive-exclude dashed/static/docs *
66
recursive-exclude tests *
7-
recursive-include panoramix/data *
8-
recursive-include panoramix/migrations *
7+
recursive-include dashed/data *
8+
recursive-include dashed/migrations *

README.md

+33-33
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,30 @@
1-
Panoramix
1+
Dashed
22
=========
33

4-
[![Join the chat at https://gitter.im/mistercrunch/panoramix](https://badges.gitter.im/mistercrunch/panoramix.svg)](https://gitter.im/mistercrunch/panoramix?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
5-
![img](https://travis-ci.org/mistercrunch/panoramix.svg?branch=master)
6-
[![Coverage Status](https://coveralls.io/repos/mistercrunch/panoramix/badge.svg?branch=master&service=github)](https://coveralls.io/github/mistercrunch/panoramix?branch=master)
7-
[![Code Health](https://landscape.io/github/mistercrunch/panoramix/immune_to_filter/landscape.svg?style=flat)](https://landscape.io/github/mistercrunch/panoramix/master)
4+
[![Join the chat at https://gitter.im/mistercrunch/dashed](https://badges.gitter.im/mistercrunch/dashed.svg)](https://gitter.im/mistercrunch/dashed?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
5+
![img](https://travis-ci.org/mistercrunch/dashed.svg?branch=master)
6+
[![Coverage Status](https://coveralls.io/repos/mistercrunch/dashed/badge.svg?branch=master&service=github)](https://coveralls.io/github/mistercrunch/dashed?branch=master)
7+
[![Code Health](https://landscape.io/github/mistercrunch/dashed/immune_to_filter/landscape.svg?style=flat)](https://landscape.io/github/mistercrunch/dashed/master)
88

9-
Panoramix is a data exploration platform designed to be visual, intuitive
9+
Dashed is a data exploration platform designed to be visual, intuitive
1010
and interactive.
1111

1212

13-
Video - Introduction to Panoramix
13+
Video - Introduction to Dashed
1414
---------------------------------
15-
[![Panoramix - ](http://img.youtube.com/vi/3Txm_nj_R7M/0.jpg)](http://www.youtube.com/watch?v=3Txm_nj_R7M)
15+
[![Dashed - ](http://img.youtube.com/vi/3Txm_nj_R7M/0.jpg)](http://www.youtube.com/watch?v=3Txm_nj_R7M)
1616

1717
Screenshots
1818
------------
1919
![img](http://i.imgur.com/bi09J9X.png)
2020
![img](http://i.imgur.com/aOaH0ty.png)
2121

22-
Panoramix
22+
Dashed
2323
---------
24-
Panoramix's main goal is to make it easy to slice, dice and visualize data.
24+
Dashed's main goal is to make it easy to slice, dice and visualize data.
2525
It empowers its user to perform **analytics at the speed of thought**.
2626

27-
Panoramix provides:
27+
Dashed provides:
2828
* A quick way to intuitively visualize datasets
2929
* Create and share interactive dashboards
3030
* A rich set of visualizations to analyze your data, as well as a flexible
@@ -37,7 +37,7 @@ Panoramix provides:
3737
displayed in the UI,
3838
by defining which fields should show up in which dropdown and which
3939
aggregation and function (metrics) are made available to the user
40-
* Deep integration with Druid allows for Panoramix to stay blazing fast while
40+
* Deep integration with Druid allows for Dashed to stay blazing fast while
4141
slicing and dicing large, realtime datasets
4242

4343

@@ -52,7 +52,7 @@ Buzz Phrases
5252
Database Support
5353
----------------
5454

55-
Panoramix was originally designed on to of Druid.io, but quickly broadened
55+
Dashed was originally designed on to of Druid.io, but quickly broadened
5656
its scope to support other databases through the use of SqlAlchemy, a Python
5757
ORM that is compatible with
5858
[most common databases](http://docs.sqlalchemy.org/en/rel_1_0/core/engines.html).
@@ -73,53 +73,53 @@ power analytic dashboards and applications.*
7373
Installation
7474
------------
7575

76-
Panoramix is currently only tested using Python 2.7.*. Python 3 support is
76+
Dashed is currently only tested using Python 2.7.*. Python 3 support is
7777
on the roadmap, Python 2.6 won't be supported.
7878

79-
Follow these few simple steps to install Panoramix.
79+
Follow these few simple steps to install Dashed.
8080

8181
```
82-
# Install panoramix
83-
pip install panoramix
82+
# Install dashed
83+
pip install dashed
8484
8585
# Create an admin user
86-
fabmanager create-admin --app panoramix
86+
fabmanager create-admin --app dashed
8787
8888
# Initialize the database
89-
panoramix db upgrade
89+
dashed db upgrade
9090
9191
# Create default roles and permissions
92-
panoramix init
92+
dashed init
9393
9494
# Load some data to play with
95-
panoramix load_examples
95+
dashed load_examples
9696
9797
# Start the development web server
98-
panoramix runserver -d
98+
dashed runserver -d
9999
```
100100

101101
After installation, you should be able to point your browser to the right
102102
hostname:port [http://localhost:8088](http://localhost:8088), login using
103103
the credential you entered while creating the admin account, and navigate to
104104
`Menu -> Admin -> Refresh Metadata`. This action should bring in all of
105-
your datasources for Panoramix to be aware of, and they should show up in
105+
your datasources for Dashed to be aware of, and they should show up in
106106
`Menu -> Datasources`, from where you can start playing with your data!
107107

108108
Configuration
109109
-------------
110110

111111
To configure your application, you need to create a file (module)
112-
`panoramix_config.py` and make sure it is in your PYTHONPATH. Here are some
112+
`dashed_config.py` and make sure it is in your PYTHONPATH. Here are some
113113
of the parameters you can copy / paste in that configuration module:
114114

115115
```
116116
#---------------------------------------------------------
117-
# Panoramix specifix config
117+
# Dashed specifix config
118118
#---------------------------------------------------------
119119
ROW_LIMIT = 5000
120120
WEBSERVER_THREADS = 8
121121
122-
PANORAMIX_WEBSERVER_PORT = 8088
122+
DASHED_WEBSERVER_PORT = 8088
123123
#---------------------------------------------------------
124124
125125
#---------------------------------------------------------
@@ -129,7 +129,7 @@ PANORAMIX_WEBSERVER_PORT = 8088
129129
SECRET_KEY = '\2\1thisismyscretkey\1\2\e\y\y\h'
130130
131131
# The SQLAlchemy connection string.
132-
SQLALCHEMY_DATABASE_URI = 'sqlite:////tmp/panoramix.db'
132+
SQLALCHEMY_DATABASE_URI = 'sqlite:////tmp/dashed.db'
133133
134134
# Flask-WTF flag for CSRF
135135
CSRF_ENABLED = True
@@ -139,8 +139,8 @@ DEBUG = True
139139
```
140140

141141
This file also allows you to define configuration parameters used by
142-
Flask App Builder, the web framework used by Panoramix. Please consult
143-
the [Flask App Builder Documentation](http://flask-appbuilder.readthedocs.org/en/latest/config.html) for more information on how to configure Panoramix.
142+
Flask App Builder, the web framework used by Dashed. Please consult
143+
the [Flask App Builder Documentation](http://flask-appbuilder.readthedocs.org/en/latest/config.html) for more information on how to configure Dashed.
144144

145145

146146
* From the UI, enter the information about your clusters in the
@@ -161,14 +161,14 @@ More screenshots
161161

162162
Related Links
163163
-------------
164-
* [Panoramix Google Group] (https://groups.google.com/forum/#!forum/airbnb_panoramix)
165-
* [Gitter (live chat) Channel](https://gitter.im/mistercrunch/panoramix)
164+
* [Dashed Google Group] (https://groups.google.com/forum/#!forum/airbnb_dashed)
165+
* [Gitter (live chat) Channel](https://gitter.im/mistercrunch/dashed)
166166

167167

168168
Tip of the Hat
169169
--------------
170170

171-
Panoramix would not be possible without these great frameworks / libs
171+
Dashed would not be possible without these great frameworks / libs
172172

173173
* Flask App Builder - Allowing us to focus on building the app quickly while
174174
getting the foundation for free
@@ -180,4 +180,4 @@ getting the foundation for free
180180
Contributing
181181
------------
182182

183-
Interested in contributing? Casual hacking? Check out [Contributing.MD](https://github.com/mistercrunch/panoramix/blob/master/CONTRIBUTING.md)
183+
Interested in contributing? Casual hacking? Check out [Contributing.MD](https://github.com/mistercrunch/dashed/blob/master/CONTRIBUTING.md)

TODO.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# TODO
2-
List of TODO items for Panoramix
2+
List of TODO items for Dashed
33

44
## Important
55
* **Caching:** integrate with flask-cache
@@ -8,7 +8,7 @@ List of TODO items for Panoramix
88
testing all the ajax-type calls
99
* **Viz Plugins:** Allow people to define and share visualization plugins.
1010
ideally one would only need to drop in a set of files in a folder and
11-
Panoramix would discover and expose the plugins
11+
Dashed would discover and expose the plugins
1212

1313
## Features
1414
* **Stars:** set dashboards, slices and datasets as favorites

alembic.ini

+1-1
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ script_location = migrations
2929
# are written from script.py.mako
3030
# output_encoding = utf-8
3131

32-
sqlalchemy.url = scheme://localhost/panoramix
32+
sqlalchemy.url = scheme://localhost/dashed
3333

3434
# Logging configuration
3535
[loggers]

dashed/__init__.py

+38
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
"""Package's main module!"""
2+
3+
import logging
4+
import os
5+
from flask import Flask, redirect
6+
from flask.ext.appbuilder import SQLA, AppBuilder, IndexView
7+
from flask.ext.appbuilder.baseviews import expose
8+
from flask.ext.migrate import Migrate
9+
10+
11+
APP_DIR = os.path.dirname(__file__)
12+
CONFIG_MODULE = os.environ.get('DASHED_CONFIG', 'dashed.config')
13+
14+
# Logging configuration
15+
logging.basicConfig(format='%(asctime)s:%(levelname)s:%(name)s:%(message)s')
16+
logging.getLogger().setLevel(logging.DEBUG)
17+
18+
app = Flask(__name__)
19+
app.config.from_object(CONFIG_MODULE)
20+
db = SQLA(app)
21+
migrate = Migrate(app, db, directory=APP_DIR + "/migrations")
22+
23+
24+
class MyIndexView(IndexView):
25+
@expose('/')
26+
def index(self):
27+
return redirect('/dashed/featured')
28+
29+
appbuilder = AppBuilder(
30+
app, db.session,
31+
base_template='dashed/base.html',
32+
indexview=MyIndexView,
33+
security_manager_class=app.config.get("CUSTOM_SECURITY_MANAGER"))
34+
35+
sm = appbuilder.sm
36+
37+
get_session = appbuilder.get_session
38+
from dashed import config, views # noqa

0 commit comments

Comments
 (0)