# Checkpoints Source: https://easycode.mintlify.app/best-practices/checkpoints Best practices for using checkpoints in your workflow. ## Checkpoints *Best practices for using checkpoints.* # Context Management Source: https://easycode.mintlify.app/best-practices/context-management Best practices for managing context in your project. ## Context Management *Best practices for managing context.* # Security Source: https://easycode.mintlify.app/best-practices/security Best practices for keeping your project secure. ## Security *Best practices for security.* # Task Breakdown Source: https://easycode.mintlify.app/best-practices/task-breakdown How to break down tasks for better productivity. ## Task Breakdown *Best practices for breaking down tasks.* # Installation Source: https://easycode.mintlify.app/get-started/installation Set up EasyCode Flow. EasyCode Flow is an **IDE for vibe coders**. Unlike web based app builders, EasyCode Flow needs to be installed on your operating system. This provides many benefits: * you have full control of the development environment * you have full ownership of the codebase * you have full access to IDE features ## Download This is a beta release. Please report any issues you encounter to help us improve the software. M Series Macs Not supported right now 1. Download the correct installer from above. 2. Open the installer, move EasyCode to the Applications folder. 3. Open EasyCode. MacOS Installation GIF ## Initial Set Up EasyCode requires **NodeJS** and **Git** to function properly. Initial Setup Screenshot If they are not installed, EasyCode will guide you through the installation. During Git installation, you will asked to include `xcode-select`, make sure to **Accept**. This step will take 5-10 minutes but is the only official to install **Git**. Xcode Select Prompt Most Win 10/11 devices Not supported right now 1. Download the correct Windows installer from above. You may need to bypass Browser security to download the file. 2. Bypass Windows Security if necessary. 3. Open the installer and follow the instructions. ## Initial Set Up EasyCode requires **NodeJS** and **Git** to function properly. Initial Setup Screenshot If they are not installed, EasyCode will guide you through the installation. You will be prompted to give `Electron` and `NodeJS` network access during installation, make sure to **Accept**. Electron Network Access Prompt Linux is currently not supported. ## Common Installation Problems **Step 1: Check for browser notifications** Some browsers can silently block large files or ask for download permission. Check for any browser notifications. Keep Download **Step 2: Try a different browser** Some users who use Brave or Arc have reported issues with downloading the installer. Try using Chrome or Safari. **Step 3: Try direct download** If you continue to experience issues, you can try downloading directly from these links: * [Windows x64 Installer (Direct Download)](https://update.easycode.ai/download/stable/b1f034d572336bd0f1c855c997973d52230612d4/EasyCode-Installer.exe) * [Mac Silicon Installer (Direct Download)](https://update.easycode.ai/download/stable/b1f034d572336bd0f1c855c997973d52230612d4/EasyCode-Installer.dmg) This is likely caused by NodeJS or Git not being installed correctly. If installation fails after multiple attempls, please try installing NodeJS and Git manually. You can find the official NodeJS and Git installation instructions below: * [NodeJS Official Download](https://nodejs.org/en/download) * [Git Official Download](https://git-scm.com/downloads) # Quick Start Source: https://easycode.mintlify.app/get-started/quick-start Get started with EasyCode Flow in 5 minutes This quickstart guide will walk you through building a full stack app using EasyCode Flow's core features. By the end, you will be familiar with the end to end process from planning to deployment. **Prerequisites**: If you haven't installed and set up the IDE, please follow the [Installation Guide](./installation.mdx) As an example, we will use the following app idea: > ``` > Build a notes app with user authentication > ``` ## 1. Plan your app * Enter app idea * Give app name * Review the plan * **Accept**, **Reject**, or **Chat** to modify the plan If you alraedy have a detailed PRD, you can copy and paste the PRD into the initial prompt and EasyCode will break it down to logical steps. ## 2. Build the first screen * Approve agent's context selection * Wait for code changes to finish * Click **Open App** to inspect the app inside EasyCode Browser * **Chat** to make adjustment or **Start Next Step** The app is still a mock up at this stage, core functionalities are likely not implemented yet and will be added during later steps. ## 3. Connect Supabase * Connect to your Supabase * Approve access to organization * Return to EasyCode Flow and **create a new project**. * Approve Supabase changes Currently we only integrate with new Supabase projects. If you'd like to use your existing Supabase project, let us know here and you will be the first to know when it becomes available. ## 4. Deploy your app * Click **Deploy** -> **Deploy App** in the EasyCode Flow menu bar * Wait for deployment to complete * Inspect the deployed URL Support for custom domain is coming soon. ## Next Steps Fix errors the right way. Integrate with 3rd party APIs such as OpenAI, Stripe (coming soon), etc. ## Common Problems * Make sure you still have available project slots in your Supabase organization. If you are on a free Supabase plan, you will have 2 project slots. * If you already have 2 or more projects, you can pause one of the projects to make room for new projects. If all fails, try creating a New Organization in Supabase on a free tier, and click "Connect to Supabase" again from within EasyCode to initiate the access authorization. Make sure all linter errors and runtime errors are fixed before trying to deploy. After fixing any remaining errors, initiate deployment again. Use EasyCode Flow's debugging tools: * For compile/lint errors: Use the automatic quick fix prompts * For runtime errors: Click "Fix Error" in the Flow Diagram * For UI issues: Use Built-in Screenshot, Attach Image, or Element Selector * For unexpected behaviors: Use the Interactive Debugger when prompted Check the [Debugging Guide](../guides/debugging) for detailed instructions. # Build the Front End Source: https://easycode.mintlify.app/guides/build-the-front-end Learn how to build the front end of your application. * Approve agent's context selection * Wait for code changes to finish * Click **Open App** to inspect the app inside EasyCode Browser * **Chat** to make adjustment or **Start Next Step** # Connect APIs Source: https://easycode.mintlify.app/guides/connect-APIs Make your app work with 3rd party APIs. 3rd party APIs gives your app the additional capablities, for example you may want to: * connect OpenAI API to build a chatbot. * connect with Weather API to build a weather app. * connect with Stripe to process payment. EasyCode Flow has **native integration** with many 3rd party APIs, this means that: ✅ easy to integrate - simply add the API keys ✅ already has access to the correct documentation \[images/guides/connect-api.gif] All API keys are stored locally and not shared with anyone elese. EasyCode Agent will always store them server side so they are not exposed to the public. ## Native Integrations Authentication, Database, realtime, etc. Everything payment related - coming soon! ## Popular Integrations ## Other Integrations # Connect Supabase Source: https://easycode.mintlify.app/guides/connect-supabase How to connect your project to Supabase. * Connect to your Supabase * Approve access to organization * Return to EasyCode Flow and **create a new project**. * Approve Supabase changes Currently we only integrate with new Supabase projects. If you'd like to use your existing Supabase project, let us know here and you will be the first to know when it becomes available. # Debugging Source: https://easycode.mintlify.app/guides/debugging Techniques and tools for debugging your application. The key to AI debugging is: * knowing which type of error you have * choosing the right tool/technique to fix it * using AI debugging best practices ## General Best Practices * use advanced models for bug fixing * be specific when prompting the AI (use images, what's working, what's not working, etc) * use checkpoints to create "backups" of your codebase * if you notice the AI is getting stuck, revert to a previous checkpoint and try different approach For more on debugging workflow, check out our comprehensive debugging flow chart. ## Fix Lint/Compile Errors Lint/compile errors happen before the execution of your app. It can be a failed type check, a formatting issue, an unused import, etc. You can easily spot lint/compile errors because EasyCode Flow runs lint and build checks after each edit, catch errors, and display them either in the **Chat Panel** or in the **App Preview**. Compile Error Screenshot You will be prompted with a **automatic quick fix**. You can either Accept or Reject. Some lint errors do not break your app's functionality. However, we recommend you try to fix them as they come up to prevent accumulation of errors. ## Fix Runtime Errors Runtime errors happens during the execution of your app. It can be an unhandled exception, a failed network request, etc. You can find them inside server side or client side console logs. To make things easier, EasyCode constantly checks for runtime errors in your logs and display them in the **Flow Diagram**.