Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

xGov-196 - TealCraft: Remix like IDE for TealScript #196

Merged
merged 8 commits into from May 8, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
109 changes: 109 additions & 0 deletions Proposals/xgov-196.md
@@ -0,0 +1,109 @@
---
id: 196
period: 4
title: TealCraft - Remix-like IDE for TealScript
author: Shivaprasad Manupadi (@shivamanupadi)
email: shivaprasadmanupadi@gmail.com
discussions-to: https://forum.algorand.org/t/xgov-196-tealcraft-remix-like-ide-for-tealscript/11845
company_name: TealCraft
category: Tools
focus_area: IDE
open_source: Yes
funding_type: Retroactive
amount_requested: 195000
delivery_date: 2024-04-20
status: Final
---

## Abstract
Remix-like web IDE to write, compile, test deploy, and invoke smart contract calls on Algorand using TealScript.

## Team
Shivaprasad - Developer
- 10 years of experience in building web applications.
- Core expertise in TypeScript.

## Experience with Algorand

Developer of AlgoDesk, DappFlow, and PixelNode, contributing to the Algorand ecosystem over the past 2 years.

## Present Proposal

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please add the subpart with relevant information about the deliverable here.

Suggested change
### Deliverable
Proposals must include clear, non-technical descriptions of deliverables.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please add the subpart with relevant information about the deliverable here.

Done

TealCraft IDE is a pioneering web-based development environment tailored for TealScript on the Algorand blockchain, akin to Remix for Solidity.
With a focus on accessibility, efficiency, and collaboration, TealCraft IDE eliminates the need for extensive setup, requiring only a web browser such as Chrome.

Why TealCraft IDE?

**Zero Setup, Seamless Workflow:**
No installations, no complications. TealCraft IDE ensures a hassle-free experience - just open Chrome, and you're ready to write, compile, deploy, and test your TealScript contracts.

**Intuitive and Collaborative Development:**
TealCraft IDE boasts a user-friendly interface supporting complete TealScript IntelliSense. The streamlined workflow enables developers to effortlessly create, manage, and share workspaces with a single click.

**Instant Sharing:**
Share your TealScript contracts effortlessly. TealCraft IDE simplifies collaboration by allowing developers to share contracts and workspaces through straightforward URL sharing.

**Playground:**
Not just compiling, you can deploy & interact with your smart contract by invoking its methods. Playground provides an intuitive and easy-to-use user interface to invoke the methods of your contract.

**Onboarding Simplicity:**
Facilitate the onboarding process for new developers with an easy-to-use interface. TealCraft IDE aims to make the Algorand ecosystem accessible to developers of all skill levels.

**Key Features:**

**Workspace Management:**

Create, delete, and switch between workspaces effortlessly.

**TealScript Contracts:**

Create, import, delete, and rename TealScript contracts with ease.

**IntelliSense Support:**

TealScript Typings support for IntelliSense, enhancing code completions and suggestions.

**Demo Workspace:**

A pre-configured workspace for developers to import and kick-start their journey.

**Compilation and Error Handling:**

Compile TealScript contracts and provide clear error messages on compilation failure.

**Output Console:**

1. ABI - Display ABI with easy-to-understand UI. List of methods, expand each method, and view the details.
2. App spec- View & download the App spec
3. Programs - View & download approval, clear programs.
4. Schema - View Global & state schema
5. TSClient - Generate TS client and download.
6. Download the source map file

**Playground:**
Once the contract is compiled, You can deploy and interact with your contracts. Local temporary accounts are created and you can instantly dispense Algos to those accounts if your connected network is local-net. Select the method, account, and invoke the contract call with a button click. Boxes and foreign arguments are auto-populated using simulate call without any user inputs. This makes the method invocation flawless and quick.

**Shareable URLs:**

Generate shareable URLs for easy contract and workspace sharing.

**Browser Storage:**

The initial version stores workspaces and contracts in the browser itself, providing flexibility for developers.

**Export and Import:**

Effortlessly export and import workspaces/contracts between browsers.

### Deliverable
Web-based TealScript IDE to Write & Compile TealScript contracts without any setup. You can also invoke the smart contract methods using playground.


## Benefits for the community

1. Onboarding new developers is as simple as just sharing a simple workspace URL containing the contract. instead of asking them to set up everything.
2. The ability to share contracts and workspaces with a simple URL makes it easy to collaborate.
3. Are you trying to invoke someone else's contract? TealCraft makes it easy to understand the application structure like methods(), states etc...

## Additional information
<a href="https://tealcraft.org" target="_blank" >TealCraft</a>