Elixir Plug API .cursorrules prompt file
About .cursorrules prompt file
What you can build
Phoenix LiveView Real-Time Chat Application: Create a real-time chat application using Phoenix LiveView that showcases seamless live updates without requiring page reloads. It can be backbone for collaborative platforms or customer support chat interfaces.
Dockerized Elixir Development Environment: Build a fully Dockerized Elixir development environment template. This provides developers with a ready-to-use setup for rapid prototyping and consistent deployment workflows.
Elixir-Phoenix Blog Platform: Develop a blogging platform using Phoenix and Tailwind CSS where users can create, edit, and publish blog posts. Use Ecto for database interactions and Swoosh for email notifications for subscribers.
Collaborative Document Editor: Implement a web-based collaborative document editor leveraging Phoenix LiveView for real-time text editing capabilities that allow multiple users to interact with a single document simultaneously.
Automated Code Review Tool using Credo: Build an automated code review tool that integrates with GitHub or GitLab, performing checks with Credo and providing insights and suggestions on pull requests on code quality and security issues.
Phoenix LiveDashboard Monitoring Service: Develop a web application monitoring tool utilizing Phoenix LiveDashboard that allows developers to monitor performance metrics such as request counts, memory usage, and live system stats in real time.
Multi-Language Support App with Gettext: Create a web application that emphasizes utilizing Gettext for internationalization, demonstrating how developers can implement and manage translations for global audiences.
E-commerce Platform with Phoenix and PostgreSQL: Build an e-commerce site with user registration, product listings, and order management. Use Phoenix for the backend, PostgreSQL for the database, and Tailwind CSS for the frontend UI.
ExUnit-Based Testing Framework: Offer a package that extends ExUnit with advanced testing functionalities like data-driven tests or enhanced reporting, aimed at improving the development of robust test suites for Elixir applications.
DevOps Solution with DNS Cluster: Develop a DNS Cluster solution as part of a DevOps toolkit for managing domain names and DNS records, making it easier for system administrators and developers to deploy web apps across multiple host servers.
Q1: How can we leverage Phoenix LiveView for reducing frontend development complexity in real-time applications?
Q2: What are the key advantages of using Docker for deploying Elixir applications, specifically in multi-environment setups?
Q3: In what ways can we enhance code collaboration and quality assurance using automated tools like Credo?
Benefits
- Thoughtful code design, ensuring comprehensive consideration of requirements before implementation, prioritizing clarity and maintainability.
- Follow-up questions enhance depth of understanding, encouraging deep exploration and critical analysis of development topics.
- Clear conventional commit guidelines, promoting standardized, informative, and structured commit messages for consistent documentation.
Synopsis
This prompt would benefit an Elixir developer by providing them with comprehensive guidelines for crafting precise and effective commit messages, ensuring clear communication and project organization.
Overview of .cursorrules prompt
The .cursorrules file is designed to guide an Elixir engineer in their work environment, providing them with specific instructions for code writing and committing practices within a sophisticated tech stack. The file emphasizes a methodical approach to coding, ensuring that all considerations are addressed before code is written. It also outlines the requirements for generating commit messages, adhering to a specific conventional format to maintain consistency and clarity in version control. This format includes guidelines on structuring the commit messages with a focus on types, optional scopes, descriptions, bodies, and footers to ensure precise communication of code changes.