Re: Data entry / data editing tools (more end-user focus).

From: Tony Shelver <tshelver(at)gmail(dot)com>
To: Stefan Keller <sfkeller(at)gmail(dot)com>
Cc: pgsql-general <pgsql-general(at)postgresql(dot)org>
Subject: Re: Data entry / data editing tools (more end-user focus).
Date: 2019-05-23 09:52:17
Message-ID: CAG0dhZBrq85kZGCJQQ9Cv8=FkQqg7hGRcGScnTOrC1LiQ8ishA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

I looked at quite a few options. Some constraints on my side that our
direction is open source, with Linux development and servers.
Radzen is .NET: I could just as well use MS Access to cobble together a
front end.

CUBA and OpenXava are Java based and seem to require writing Java for
logic: I last used nearly 20 years ago and 'fast' development and Java IMHO
is an oxymoron.

Aurelia looks a bit promising, but I am not sure if it gains anything over
the current crop of JS libraries and frameworks, such as Vue, React et al,
and then libraries / frameworks built on top of those such as Nuxt / Vue,
Quasar / Vue or Vuetify / Vue, which seem to have far more activity on
Github.

I managed to set up a quick and dirty front end using LibreOffice Base over
a weekend, next iteration i will probably move over to a Vue framework,
probably using Quasar..

On Sat, 18 May 2019 at 00:26, Stefan Keller <sfkeller(at)gmail(dot)com> wrote:

> Dear all
>
> What about following „Rapid App Development Tools"?
> * OpenXava (Java): https://www.openxava.org/ate/visual-studio-lightswitch
> * Radzen (.NET):
> https://www.radzen.com/visual-studio-lightswitch-alternative/
> * Other: https://aurelia.io/ (JS) or CUBA https://www.cuba-platform.com/
> (Java)
>
> :Stefan
>
> Am Do., 28. März 2019 um 15:39 Uhr schrieb Adrian Klaver
> <adrian(dot)klaver(at)aklaver(dot)com>:
> >
> > On 3/27/19 11:49 PM, Tony Shelver wrote:
> >
> > Please reply to list also, more eyes on the the problem.
> > Ccing list
> >
> > My take on below is since you are feeding a Website why not use Web
> > technologies for your data entry. My language of choice is Python. I
> > have done something similar to this(on small scale) using the Django
> > framework. For something lighter weight there is Flask. Then your client
> > becomes a browser and you do not have to distribute forms around. You
> > could integrate with the existing Web apps you are using e.g. SnipCart.
> >
> >
> > > Actually I found a possibility. LibreOffice Base on top of PG lets me
> > > paste photos into a Postgresql bytea field no problem. MS Access
> should
> > > work well also, but I am not going to buy it, and running Ubuntu most
> of
> > > the time.
> > > Possibly will distribute the Base forms to select users to enter data.
> > > We are a startup company, so this is an affordable temporary fix, until
> > > the product I have been looking at matures, or we can roll our own.
> > >
> > > We are building a company website, including an eStore, and have a few
> > > hundred products to load and maintain. Our product data currently isn't
> > > suitable for a sales catalog.
> > > (Brands, categories, products, pricing and deal info, specials, images,
> > > product comparisons and so on).
> > >
> > > Right now I input / maintain this via CSV files maintained through a
> > > spreadsheet (LibreOffice Calc) which our site generator (Jekyll) uses
> > > to build out the static HTML product [pages automatically.
> > > This is really quick to enter basic data, but I have to manually
> > > maintain image uploads, image names and so on manually in the
> > > spreadsheet and through individual file uploads. We have at least one,
> > > preferably 3 and up to 6 photos per product to maintain. Call it a
> 1000
> > > images right now, and that will only go up.
> > > Invalid text / characters in product descriptions and so on can break
> > > the CSV as well.
> > >
> > > There are headless CMS solutions out on the market targeting this same
> > > area, but for various reasons the suitable ones are still maturing and
> > > shaking out in the marketplace, so I am not in a hurry to make a
> choice.
> > >
> > > So the goal is to replace CSV with JSON file input. This will also
> make
> > > my life easier for more complex structures such as multiple categories
> > > and specs per product.
> > > I also want to migrate text that can change from the HTML pages into
> the
> > > database for easier changes by end users. For this the users could use
> > > a WYSIWIG MarkDown editor, and just cut and past the MarkDown into Base
> > > forms when finished. This will be converted to HTML at build time by
> > > Jekyll static site generator or a script.
> > >
> > > So the proposed solution:
> > > 1. Create the database in Postgresql.
> > > 2. Link Base or other tool to it and design input forms where necessary
> > >
> > > 3. Enter the data through Base into PG including images, MarkDown /
> HTML
> > > text, long descriptions and so on.
> > > 3a. If I don't get a suitable CMS going, I could spend some time
> > > developing a Vue/Quasar/Nuxt whatever front end to handle this, in
> > > several months time.
> > >
> > > 4. Pull the data from Postgres using Python (Psycopg2 will handle
> > > images). Or a node.js app once my JS skills improve.
> > > 4A: optionally use PostgREST, Postgraphile, Pytone Graphene or other to
> > > create an externally accessible API, and then use Python or javascript
> > > module to pull the data out.
> > >
> > > 5. This program will then write the JSON product file to the website
> > > data source directory with image tags, and upload the files to the
> image
> > > store. Also create product item HTML page templates or or modify HTML
> > > content where necessary.
> > > 6. At this stage the Jekyll static site generator will detect the new
> > > JSON data and any changed pages, and regenerate all changed pages, move
> > > images and so on.
> > >
> > > 7. Git commit will push the generated site to Github, and Git will then
> > > send everything to our CDN.
> > >
> > > There is no traditional web server / app server / db server setup as
> you
> > > would find for most websites using, for example, Wordpress, Magento
> > > commerce or other tools. Just the CDN.
> > >
> > > Everything is static HTML and some javascript. Because there is no
> > > backend system, database or anything else at run time,just when
> > > generating the site, I am not concerned about performance except at
> > > site build time, which will not happen that often. All the SEO data
> > > (w3schema / Google, OG / Facebook and Twitter cards) is automatically
> > > built into the templates and fleshed out by our build process, so it
> > > exists as searchable static content on our page.
> > >
> > > Further down the road we will slowly migrate to a front-end javascript
> > > framework like Vue / Nuxt or React / Next, where our site will remain
> > > mostly static, with JS in the browser talking to back end hosted
> > > services. We already interact directly from the browser with SnipCart
> > > for shopping card, order management and payment gateway services.
> > >
> > > Not sure if that helps explain the problem space a bit better.
> > >
> > >
> > >
> > > On Wed, 27 Mar 2019 at 16:15, Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com
> > > <mailto:adrian(dot)klaver(at)aklaver(dot)com>> wrote:
> > >
> > > On 3/27/19 3:48 AM, Tony Shelver wrote:
> > > > Looking for a good tool that I can give to users to enter data
> (for
> > > > example, products, categories, brands, price tables and so on).
> > > > Preferably it should also allow images to be copied into a bytea
> > > field
> > > > but I know I can't have everything.
> > > >
> > > > Been battling with a few open source 'headless' content
> management
> > > > systems the last few weeks. All they really are is a data
> schema
> > > > designer, an API interface (for the API / database based ones
> like
> > > > Strapi and Directus), and a content entry front end, along with
> some
> > > > access management added in.
> > > > And they don't necessarily play well with the DB, or the
> technology
> > > > stack is something I don't want to deal with.
> > > >
> > > > I figure using PostgREST or Postgraphile or Python Graphene or
> > > any of
> > > > the dedicated 3rd party REST / GraphQL APIs will probably give
> as
> > > good
> > > > an API as most of the new content managers,
> > > >
> > > > pgModeler.io is a way better schema design tool than what I have
> > > found
> > > > in the CMS systems I have used so far as well.
> > > >
> > > > Data that I would like to store (and edit) is the usual, but
> also
> > > > images, HTML sections, and markdown.
> > > >
> > > > Any ideas?
> > >
> > > I am not really sure from above what you want, so some questions:
> > >
> > > 1) GUI form interface?
> > > GUI form builder?
> > >
> > > 2) Enter records one at time or in bulk?
> > >
> > > 3) Cross platform?
> > > If so what platforms?
> > >
> > >
> > >
> > > --
> > > Adrian Klaver
> > > adrian(dot)klaver(at)aklaver(dot)com <mailto:adrian(dot)klaver(at)aklaver(dot)com>
> > >
> >
> >
> > --
> > Adrian Klaver
> > adrian(dot)klaver(at)aklaver(dot)com
> >
> >
>

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Achilleas Mantzios 2019-05-23 10:34:33 Re: Table inheritance over schema boundaries possible
Previous Message Thiemo Kellner 2019-05-23 05:46:39 Table inheritance over schema boundaries possible