Dashboard

Profile level : Anon

0%
  • First name
  • Last name
  • Job title
  • Work experience
  • Tags
  • Avatar
  • Cover
  • Description

Filling out more of your profile gets you higher rankings in the directory and increases community trust.

Announcements

Your points

Total Points

0

Contribution

0

Visit

0

Recent comments

Keith Walker public View keithwalker's profile
Tue, 02/04/2025 - 04:10

Great Work! Thanks for sharing.

Joseph Petty Verified userVerified user staff View joseph_appsmith's profile
Fri, 01/17/2025 - 06:46

Awesome work Sangita! Thanks for sharing!

johndyer public View johndyer's profile
Wed, 01/15/2025 - 18:16

Thank you - this is super helpful. 

One update: the password now seems to require a number, so just add a 1 to the example: "MSSQL_SA_PASSWORD=MyPass@word1

Joseph Petty Verified userVerified user staff View joseph_appsmith's profile
Wed, 01/15/2025 - 08:36

Here's a video tutorial on resizing and compressing image. This also involves a lot of JavaScript and working with file and dataUrls. 
https://youtu.be/sq2e6nuhb2M

Joseph Petty Verified userVerified user staff View joseph_appsmith's profile
Mon, 01/06/2025 - 06:22

UPDATE: Here's one more method, using Python in Google Colab,

https://blog.greenflux.us/extracting-all-images-from-a-google-doc-using…

markwoollen public View markwoollen's profile
Sat, 01/04/2025 - 22:34

This is a great exploration of how we can embed a OpenAI Chat Assistant directly into appsmith experience to feed live data directy into  a multitude of echarts.  I was able to pretty quickly connect to Jira REST API.  

Assistant Instructions (note... I adjusted the results to return JUST the logic within the generateCode function.):

You are a wizard at Javascript, and charts, and echarts.apache.org.   Your job is to help Appsmith users write javascript to transform their JSON data into an option object to feed a chart using apache echarts. The user will provide a few sample rows of data, and ask for a specific type of echart. Reply with a json object containing the javascript to generate the chart.
Given this data:
[
{ day: 'Mon', value: 150 },
{ day: 'Tue', value: 230 },
{ day: 'Wed', value: 224 },
{ day: 'Thu', value: 218 },
{ day: 'Fri', value: 135 },
{ day: 'Sat', value: 147 },
{ day: 'Sun', value: 260 }
]
___
If the user asks for a line graph then the option object should be:
{
xAxis: {
type: 'category',
data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
},
yAxis: {
type: 'value'
},
series: [
{
data: [150, 230, 224, 218, 135, 147, 260],
type: 'line'
}
]
}
___
So you would return a function to help them generate that dynamically when the data changes, like this:
generateOption(dataArray) {
const xAxisData = dataArray.map(item => item.day);
const seriesData = dataArray.map(item => item.value);
return {
xAxis: {
type: 'category',
data: xAxisData
},
yAxis: {
type: 'value'
},
series: [
{
data: seriesData,
type: 'line'
}
]
};
}
___
leave out the function keyword because the code will be stored in an object. Reply with only Javascript code that will generate the appropriate response:
```
const dataArray=JiraAPI_Issues_GET.data.issues;
// Group the data by nationality
const natGroups = dataArray.reduce((acc, user) => {
if (!acc[user.nat]) {
acc[user.nat] = [];
}
acc[user.nat].push(user.location.country);
return acc;
}, {});
// Prepare nodes and links for the Sankey diagram
const nodes = [];
const links = [];
const addedNodes = new Set();
// Add nationality nodes and country nodes with corresponding links
for (const [nat, countries] of Object.entries(natGroups)) {
if (!addedNodes.has(nat)) {
nodes.push({ name: nat });
addedNodes.add(nat);
}
countries.forEach(country => {
const countryNat = `${country} (${nat})`;
if (!addedNodes.has(countryNat)) {
nodes.push({ name: countryNat });
addedNodes.add(countryNat);
}
links.push({ source: nat, target: countryNat, value: 1 });
});
}
return {
series: [
{
type: 'sankey',
data: nodes,
links: links,
}
]
};
```
___
always include dataArray=JiraAPI_Issues_GET.data.issues as the default param unless another query name is requested by the user.

 

The resulting code can then be evaluated and run as a dynamic function)

export default {

	extractJavaScriptCode(codeSample) {
		// Define the start and end delimiters for JavaScript code
		const jsStart = "```javascript";
		const jsEnd = "```";

		// Find the start and end positions of the JavaScript code
		const start = codeSample.indexOf(jsStart) + jsStart.length;
		const end = codeSample.indexOf(jsEnd, start);

		// Extract and trim the JavaScript code
		if (start >= jsStart.length && end > start) {
			return codeSample.substring(start, end).trim();
		}
		return null; // Return null if JavaScript code block is not found
	},
	
	async checkMessages() {
    	setInterval(async () => {
        	await OpenAI_4_GetMessages_GET.run();

        	if (OpenAI_4_GetMessages_GET.data.data[0].role === 'assistant' && OpenAI_4_GetMessages_GET.data.data[0].content[0].text.value) {
				this.run_code(Text11.text);  // *** This will RUN the resulting code from AI assist
            	clearInterval('msg_checker');
            	return;
        	}
    	}, 3000, 'msg_checker');
	},
	
	stop_interval(strInterval = 'msg_checker') {
		clearInterval(strInterval);
	},
	
	run_code(strInstructions = Text11.text) {
		var theInstructions = this.extractJavaScriptCode(Text11.text);
		var F=new Function (theInstructions);

		return(F());
	},
};
Ed Parsadanyan Verified userVerified user public View ed's profile
Fri, 12/27/2024 - 21:24

The idea of using emojis as array elements is great!

berengersalmon public View berengersalmon's profile
Sun, 12/15/2024 - 09:13

Its a very interesting articles and show all the crud around it.
But when the file exceed 5mb it stoping to work like this. How to do it?

Myla Williams public View lucalinadreemur's profile
Thu, 12/12/2024 - 20:05

Looks good, thanks

Lucky Anders public View luckyanders's profile
Thu, 12/12/2024 - 19:52

This is exactly what I need.Straight to the point with no filler to waste my time. A+

dandascalescu public View dandascalescu's profile
Mon, 12/02/2024 - 04:03

Thanks for the tutorial!

"you can also us git diff" -> use

Plus what Thomas said.

Slava Dobromyslov public View dobromyslov's profile
Mon, 12/02/2024 - 03:44

Great improvement. Can you tell us an approximate release date?

leandromallía public View leandromallía's profile
Tue, 11/26/2024 - 06:38

Hola Oscar, quiero empezar con algo sencillo, una pantalla para visualizar datos de una tabla, una aplicación CRUD,
También necesito información sobre la versión comunitaria para desarrollar y desplegar aplicaciones.
Si es necesario bajar una un software para empezar a desarrollar.
Lo que necesito es un tutorial en español
Muchas Gracias!

drimsetagency public View drimsetagency's profile
Mon, 11/25/2024 - 21:50

Sanjiv Anand, thank you for your excellent contribution

Simon Lewis public View simon-lewis's profile
Mon, 11/25/2024 - 20:20

In reply to by simon-lewis

Doh ! I can see now when viewing Joseph's awesome tutorial how simple this is. No need to download a template as I can build it quickly by following along .... Yay !

Simon Lewis public View simon-lewis's profile
Mon, 11/25/2024 - 20:06

Hi Joseph and team,

Great starting point. Unlike other templates, I only seem to be able to run the preview. Is it possible to obtain the template within my own Appsmith dev environment ?

Thanks

Simon

pchambless1 public View pchambless1's profile
Fri, 10/25/2024 - 10:20

Cool stuff, Joseph.  That was very 'followable' !!

Oscar Santana Verified userVerified user author Open to work View ofsantana's profile
Thu, 10/24/2024 - 00:07

@Ron, just a comment, there is a small bug in the Query "addMessage", the history of the chat is referenced as: {{chat.chatHistory}}, but is has to be {{chat.history}}.

Besides this, the template is perfect!

 

Oscar Santana Verified userVerified user author Open to work View ofsantana's profile
Thu, 10/24/2024 - 00:02

Thanks for this!

Ron Northcutt Verified userVerified user staff View ron's profile
Tue, 10/22/2024 - 19:44

Is it meta or just lazy when using AI to generate an image for an AI tutorial?

Asking for a friend...