Code Monkey home page Code Monkey logo

openblocks-dev / openblocks Goto Github PK

View Code? Open in Web Editor NEW
5.6K 44.0 320.0 133.24 MB

🔥 🔥 🔥 The Open Source Retool Alternative

Home Page: https://cloud.openblocks.dev

License: GNU Affero General Public License v3.0

JavaScript 17.71% TypeScript 55.65% HTML 0.22% Less 0.05% Dockerfile 0.13% Shell 0.10% Java 26.07% CSS 0.01% Smarty 0.06%
admin-dashboard app-builder app-development business-intelligence clickhouse crm crud-application dashboard data-source gui

openblocks's People

Contributors

0xflotus avatar dependabot[bot] avatar esieve avatar ggbond2077 avatar hanshuai avatar jerry-goodman avatar limgit avatar lmx1117 avatar ludomikula avatar lvhuichao avatar mingfang avatar neon-balcony avatar onkee avatar pillowbalcony avatar ravintpillai avatar ronen770 avatar sarike avatar yojayz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

openblocks's Issues

REST API Data Source - Password must not be null

I've just tried the latest docker image and with a REST API Data Source I always get the message

Query execution error: Password must not be null.

I assume it's referring to the Basic Authentication password. I've tried saving the password on the Data Source screen and via the Data Source Edit button on the Query screen but the same occurs for both

Dynamic parameters for query

Is there a way to append a dynamically generated parameter string to a REST query?
Use case:

return mytable.filter.filters.map(f => `filter{${f.columnKey}.${f.operator}}=${f.filterValue}`).join('&')
  • My query has parameters sort[] => {{mytable.sortColumn}}, page => {{mytable.pageNo}}.
  • Now I want to "tack on" &{{mytable_filter}} at the end of the query, such that the final URL is
    http://myendpoint/api/tabledata/?sort[]={{mytable.sortColumn}}&page={{mytable.pageNo}}&{{mytable_filter.value}}
    For example:
    http://myendpoint/api/tabledata/?sort[]=name&page=3&filter{mass.gt}=200

What I tried:

  • setting URL to http://myendpoint/api/tabledata/?{{mytable_filter.value}}, http://myendpoint/api/tabledata/?{{mytable_filter.value}}& and some variations of this -> "Invalid request URL"
  • adding a parameter with no key and value {{mytable_filter.value}} => query works but filter is not active (I guess the parameter is silently discarded)
  • adding a parameter with no value and key {{mytable_filter.value}} => run failed: {"code":"HTTPBAD_REQUEST","message":""}
  • Some variations like putting "&" as key

UX: Expanded Code Editing Window Should Have Clearer Focus

When expanding (or folding/unfolding) the code editor, it's hard to tell when it's open or not because the expanded editor blends in with the rest of the UI.

There are several ways to address it but the one I think would offer the best UX is to blur the background when the code editor is expanded. When people are writing code they generally have their full attention on what they're writing and wouldn't care so much about the rest of the UI.

REST query sending empty body to server

I have a REST service running on localhost:8080. I am able to hit the /query endpoint from Postman, like this

image

When I do this, in the terminal of the webapp, I see that I have recieved the message, as is expected...

2022-11-20 16:47:59.468 DEBUG 11680 --- [nio-8080-exec-1] o.a.coyote.http11.Http11InputBuffer      : Received [GET /query HTTP/1.1
Content-Type: application/json
User-Agent: PostmanRuntime/7.26.8
Postman-Token: 1e7b5fca-e73d-4759-8c7b-4fe91c8cc560
Host: host.docker.internal:8080
Connection: keep-alive
Content-Length: 4

abcd]

However, when I attempt the exact same thing from OpenBlocks, like this...

image

I do not receive the body of the message 😕

2022-11-20 16:48:46.071 DEBUG 11680 --- [nio-8080-exec-2] o.a.coyote.http11.Http11InputBuffer      : Received [GET /query?= HTTP/1.1
user-agent: ReactorNetty/1.0.24
host: host.docker.internal:8080
accept: */*
content-type: application/json
content-length: 0

]

A few notes:

  • Yes, I know that I used application/json and didn't send json 😀 This also fails when I use properly formatted json - I didn't include the json because it has personally identifiable information, however, if you think that it would be useful, I will do a demonstration of it with some redacted information
  • There is a chance, however small, that this is a weird problem with docker, however, I have not been able to confirm either way, because I couldn't get a dev environment set up locally 😟 I tried my best but I couldn't figure it out, lol!

Thanks, I am a huge fan of the project!!

Modal module missing inside Canvas

If you drag and drop a Modal module inside canvas work area then to find it again you have to look at the left sidebar Components section.

It is missing or it does not have any indication that it exists inside canvas work area.

image

It would be great to see where the Modals modules are inside the canvas work area.

Published App only Users

Hey,

Is there currently the ability to restrict access to Workspace Settings, in order to have a group of users who can only access a single published app view? Which also doesn't show the top header.

Enhancements to Table: runtime configuration, additional state info

https://gist.github.com/meowcat/12e22150f8abf8fc364f951b236e46bc

I am working on a "CSV editor" module. Right now this works with a WebDAV enabled server.

  • Module input is server and path

  • GET/PUT reads/writes the CSV from server, Papa Parse goes CSV<->JSON

  • (Right now there is no login etc and only intended for local use)

  • A Table view displays the table

  • An "Edit" column opens a JSON Schema form modal

  • the JSON Schema is generated from the currently selected row

The only thing missing is: I cannot update the columns if the users' format changes. I would need to:

  • either have a way to trigger "regenerate columns" with code
  • or a way to set columns directly.

Switching to GPL instead of AGPL?

I'd love to try this out internally in my organization, but AGPL isn't usually popular in commercial orgs (if not outright banned for internal use). Curious if y'all evaluated AGPL vs more permissive licensing (GPL/MIT/etc)

ENV file missing

Hi

I am trying tutorial from https://docs.openblocks.dev/self-hosting
and after CMD docker-compose up
service openblocks is still restarting

in container logs was loged message

Init configuration
rm: cannot remove '/env/application-selfhost.yml': No such file or directory

perhaps something with ENV files is missing in tutorial ?

Oracle Support?

Hello,

Are there any plans to support the Oracle Database System?

Unable to run REST API Query

I've set up a Data Source which is REST API and a Query in the Query Library.

However, when I run the query from the library I get the message:

{"code":"OK","message":"Oops! Service is busy, please try again later."}

Nothing is written out the output stream of:
docker logs -f openblocks

Looking at the source code this seems to be a general HTTP 500 error. (NetworkMessage.500)

I can't see anything in the documentation that describes a step I've missed so I'm not sure where to go to debug this. Any pointers greatly appreciated!

Auto Refresh widgets

Because setInterval and setTimeout is disabled, would be good to create an auto refresh option to widgets.

For example we have a table that shows data from a sql query and want to continue refresh it so we can have near live statistics updates.

This or enable setInterval and setTimeout functions.

How to integrate an Openblocks app into a website or intranet?

I see a lot of potential for us as app developers to seamlessly integrate Openblocks apps into existing websites or intranets. Or even our own applications, that could intergate parts built with Openblocks. Sharing data between the page hosting the app and the app would be crucial. This is e.g. rather cumbersome when using iframes.

Is there an example how this works with Openblocks?

How to run openblocks behind proxy?

I would like to test this but wondering if I can run openblocks behind a proxy, specifically the REST API query using the Docker image.

Thanks.

How to escape curly bracket?

I cannot find in the documentation how I would go about escaping a single curly bracket.

Usecase: Django Dynamic REST filter string https://github.com/AltSchool/dynamic-rest#filtering

For example, I have cpds_table.filter.filters[0]= '{'columnKey': 'mass', 'operator': 'gt', 'filterValue': 300} .

My query should be http://myendpoint?filter{mass.gt}=300
filter{{{cpds_table.filter.filters[0].columnKey}}.{{cpds_table.filter.filters[0].operator}}} doesn't work.
I tried: \{, '{', "{", {{{}} but I'm running out of ideas :)

Rest API Management Interface

Is it supported to access openblock funcionatilities via a REST API Admin Interface? For example to automate backups (export apps definition) or automate any other actions?

Function Syntaxe to validate/manipulate inputs

Hi guys, i've trying to creata a CRUD for my business, and I need to check if a input was empyt or the value is a validty format.
The pictures is only a test to set field "only run when", i look in to documentation and dont found how sintaxe i need to use to create theses functions and validate the fields?

chrome_QIFOusmRwz

Can't use array value in default value

I am using a cascader select and writing its value on an SQL backend. It gets written to a varchar variable, and it writes the whole array to the variable.

Then I am unable to use the saved array as a default value for the cascader and I think this is because of escaping characters:

TypeError: Type "Array" is required, but find value: "[\"magento\",\"magento-6\"]"

is there an HELM chart available?

Hi, I would like to test openblocks in my company's Kubernetes cluster (OCP to be specific), is there a helm chart available to use?

if not, I would be happy to contribute one.

Ability to pass arguments to queries / js functions at the event handler

Much like the excellent module system, it would be very powerful if you were able to pass args to functions or queries.

This functionality for example, would allow for easy integration with any analytics 3rd party, tracking button or other clicks. I imagine it would open a wide number of other use cases as well.

Is openblocks production ready?

I want to use OpenBlocks as an internal tool for my company. We are currently using AppSmith, but I find openblocks more pleasant and fun to use. My questions are:

  • Is openblocks stable?
  • Is openblocks production ready?

Thank you for such an awesome tool!

REST API query doesn't run on page load

I have configured a REST API query to fetch data from an API server, and using the control component event handler to write response from API server to a text output component. However, the REST API query doesn't get triggered on page load.

on-page-load-issue-openblocks

Invoking the query via a button works.

Query execution error: http:; nested exception is java.net.UnknownHostException: http:.

Hello, I am attempting to connect to a REST service that is running locally on post 8080. (I am using the localhost workaround of using host.docker.internal) When I attempt to connect, I get this error message:

Query execution error: http:; nested exception is java.net.UnknownHostException: http:.

Here's what that looks like in the Query editor...

image

I tried connecting to the REST service through other means, and it worked. Furthermore, I see no indication that the service is being hit by examining the logs. So, I do not think this is an issue with the service.

I tried a couple of different things:

  • tried with https instead of http, no luck
  • tried omitting 8080, no luck

LDAP/AD/SSO support

Is it possible to configure OpenBlocks to have users already defined in a LDAP/AD server? Or use an SSO configuration?

More table controls (e.g. side scrolling)

The tables are nice, but in many cases the data will be many columns wide.

Currently, it tries to squeeze all the columns into the space provided, never allowing for horizontal scroll - which becomes unreadable very quickly.

Can we have horizontal scroll as a toggle on tables? Probably defaulting to true.

"Code editor"?

Hi,

there is currently "text area", "rich text editor" and "json editor".

I would like a code input, basically the json editor without json parsing.

A "text area" in monospace font would be a first approximation, but I can't find a font setting. The line numbers as in the json editor would be cooler. Is this planned, am I maybe only missing a click somewhere? Is there a way to access the raw content of json editor components?

Support SurrealDB

Hello, thanks for this great tool! SurrealDB is one of the hottest and most powerful open-source NewSQL DB ever created. Adding support for it would be amazing!

CI/CD Integration

Browsing through the documentation, I didn't find a way to integrate this platform with CI/CD whenever we do a change in a app (for example). Is it planned to the future or I missing something?

More table controls (e.g. vertical scrolling)

For now you have an option for the Table widget to "Show size changer button".

This increases the table height with the selected values for the rows.

It would be better also to have a fixed height table with scrollable rows depending the amount you choose to show.

Query Google Sheets

Hi!

If I see it correctly you can only Read the entire Google Sheet and not do a search query on it.
Goes fine for small sheets but if you have to retrieve 100.000s of lines, that will slow down the system :)

Would like to see a way such as SQL to do searches based on column, max results etc

Publish a page for a public users?

hy guys.

Theres any way to publish an application for a public (nom logged people)?

This feature was very good in bubble. With this may we create tools for company leads and clientes send or check theyer information from our database.

Possible to not run as root in container?

Firstly, thanks for all your hard work. I just setup openblocks on my local Portainer Raspberry Pi cluster and it seems so far to be working great. My only recommendation is don't run the Docker container as root.

I noticed the Dockerfile is running a lot of processes all in the same container... Redis, MongoDB, Java, NGINX. I assume then using root was the easy solution to get this all working?

Is there anyway to run everything with lower privileges and not root in the container?

Able to access custom columns in the data object.

I love the ability to make custom columns by combining current row values, e.g. {{currentRow.firstName}} {{currentRow.lastName}} as fullName - it works great.

But if in another areas you try to (for example) {{testTable.selectedRow.fullName}} it doesn't find it/show the data.

Field type password.

Hi people.

I testing to build an apkiccation withyou platform, and i dont find the field type where we hidde the cheracters, i think so i need a field type password.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.