Flamyngo is a customizable Flask frontend for MongoDB.
Project description
# Flamyngo
Flamyngo is a customizable Flask frontend for MongoDB.
At the most basic level, the aim is to delegate most settings to a YAML
configuration file, which then allows the underlying code to be reused for
any conceivable collection. Querying and display is restricted to a single
collection for now. However, the code can serve as a starting point for more
complex setups to support multiple collections.
# Usage
Clone or download the code. Install it if you wish.
In the root directory, run:
```bash
python scripts/flm --config <path/to/config.yaml>
```
If `--config` is not provided, it defaults to `$HOME/.flamyngo.yaml`.
# Configuration
A sample commented configuration yaml file is given below.
```yaml
# MongoDB settings
db:
host: mongo.host.com
port: 27017
username: user
password: password
database: mydb
collection: mycoll
# These set the special queries as an ordered list of [<key>, <regex string>, <type>].
# If the query string satisfies any of the regex, the Mongo query is set as
# {<key>: type(<search_string>)}. This allows for much more friendly setups for common
# queries that do not require a user to type in verbose Mongo criteria. Each
# regex should be uniquely identifying.
# Supported types include int, float, str, objectid.
# If none of the regex works, the criteria is interpreted as a Mongo-like dict query.
query:
- [last_name, '^[A-Za-z]+$', str]
- [phone_number, '^[0-9]+$', int]
# A default list of projections to display as a table. Only keys in the root of
# the document is supported right now.
summary:
- _id
- first_name
- last_name
- phone_number
# The following defines unique identifiers for each doc. This allows each
# specific doc to be queried and displayed using this key. If this key is
# present in the default list of projections, a link will be created to each
# unique document.
unique_key: _id
unique_key_type: objectid
```
Flamyngo is a customizable Flask frontend for MongoDB.
At the most basic level, the aim is to delegate most settings to a YAML
configuration file, which then allows the underlying code to be reused for
any conceivable collection. Querying and display is restricted to a single
collection for now. However, the code can serve as a starting point for more
complex setups to support multiple collections.
# Usage
Clone or download the code. Install it if you wish.
In the root directory, run:
```bash
python scripts/flm --config <path/to/config.yaml>
```
If `--config` is not provided, it defaults to `$HOME/.flamyngo.yaml`.
# Configuration
A sample commented configuration yaml file is given below.
```yaml
# MongoDB settings
db:
host: mongo.host.com
port: 27017
username: user
password: password
database: mydb
collection: mycoll
# These set the special queries as an ordered list of [<key>, <regex string>, <type>].
# If the query string satisfies any of the regex, the Mongo query is set as
# {<key>: type(<search_string>)}. This allows for much more friendly setups for common
# queries that do not require a user to type in verbose Mongo criteria. Each
# regex should be uniquely identifying.
# Supported types include int, float, str, objectid.
# If none of the regex works, the criteria is interpreted as a Mongo-like dict query.
query:
- [last_name, '^[A-Za-z]+$', str]
- [phone_number, '^[0-9]+$', int]
# A default list of projections to display as a table. Only keys in the root of
# the document is supported right now.
summary:
- _id
- first_name
- last_name
- phone_number
# The following defines unique identifiers for each doc. This allows each
# specific doc to be queried and displayed using this key. If this key is
# present in the default list of projections, a link will be created to each
# unique document.
unique_key: _id
unique_key_type: objectid
```
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
flamyngo-0.0.1.tar.gz
(10.5 kB
view details)
Built Distribution
flamyngo-0.0.1-py27-none-any.whl
(14.0 kB
view details)
File details
Details for the file flamyngo-0.0.1.tar.gz
.
File metadata
- Download URL: flamyngo-0.0.1.tar.gz
- Upload date:
- Size: 10.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8f3c3557ddc9de5e981ae2a6c5d344bb2e9f0822a03d40404f498fdad6ca34e9 |
|
MD5 | 3ac695091ac690e3f25b28d782902ec0 |
|
BLAKE2b-256 | def2e73ea5c616b12a8660615f50992a22683fb5745a4043eaefb3e804efdf1a |
File details
Details for the file flamyngo-0.0.1-py27-none-any.whl
.
File metadata
- Download URL: flamyngo-0.0.1-py27-none-any.whl
- Upload date:
- Size: 14.0 kB
- Tags: Python 2.7
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c4b341758c15f4a84454016d5a5fe3e64b314a685b1a0ea282dc7d7853ff43ee |
|
MD5 | e23b801b2c2e538f9ab71d3cc36c2c80 |
|
BLAKE2b-256 | 5d4d6b9fe36fc8f7b186cabcba4ccb3745d32227999af7d5a566bbe3a6dad85f |